linux磁盘管理简概

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux磁盘管理简概相关的知识,希望对你有一定的参考价值。

磁盘管理简概
目录
(1) 磁盘结构(HDD)
(2) 分区类型及工具
?

(1) 磁盘结构(HDD)
设备类型:
块设备:block ,存取单位“块”,磁盘
字符设备:char ,存取单位“字符”,键盘
机械硬盘(HDD):
Hard Disk Drive,即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存 等几个部分组成。机械硬盘中所有的盘片都装在一个旋转轴上,每张盘片之间是平行的,在每个盘片的存储面上有一个磁头,磁头与盘片之间的距离比头发丝的直径还小,所有的磁头联在一个磁头控制器上,由磁头控制 器负责各个磁头的运动。磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。数据通过磁头由电磁流来改变极性方式被电磁流写到磁盘上,也可以通过相反方式读取。硬盘为精密设备,进入硬盘的空气必须过滤
技术分享图片
硬盘存储术语:
head :磁头
track :磁道
cylinder: 柱面
secotr: 扇区,512bytes(最小单位)
技术分享图片
设备文件命名方式:
磁盘设备的设备文件命名:/dev/DEV_FILE
不同磁盘标识:a-z,aa,ab…
/dev/sda, /dev/sdb, ... /dev/sdaa,/dev/sdab...
同一设备上的不同分区:1,2, ...
/dev/sda1, /dev/sda5
HDD磁盘结构计算方式:
512bytes 64 sector数/track 1024 track数/盘面*256 head磁头数(盘面数) 8G
扇区 扇区数/磁道 磁道/盘面

( 512bytes 64 sector数/track 256 )一个柱面的大小:8M * 1024磁道 =8G
单位:B KB MB GB TB PB EB ZB YB BB NB DB

?
(2) 分区类型及管理
为什么分区:
优化I/O 性能
实现磁盘空间配额限制
提高修复速度
隔离系统和程序
安装多个OS
采用不同文件系统
两种分区方式:MBR,GPT
MBR:
Master Boot Record ,使用32位表示扇区数 , 分区不超过2T
如何分区:按柱面
0 磁道0 扇区:扇区大小,512bytes,存储MBR,分为三部分
446bytes: 存储boot loader,引导加载器
64bytes :存储分区表,有多少个分区,每个分区从哪里开始到哪里结束,每16bytes标识一个分区,因此,一块硬盘最多只能有4个主分区
2bytes: 55AA,结束标志,前面信息的有效性标识,用4个16进制数表示55AA,表示前面510bytes是有效的。
4个主分区;3主分区+1扩展(N 个逻辑分区)
MBR分区结构
硬盘主引导记录MBR由4个部分组成
主引导程序(偏移地址0000H--0088H):它负责从活动分区中装载,并运行系统引导程序。
出错信息数据区:偏移地址0089H--00E1H为出错信息, 00E2H--01BDH全为0字节。
分区表(DPT,Disk Partition Table):含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为 分区项1、分区项2、分区项3、分区项4 ?
结束标志字:偏移地址01FE--01FF的2个字节值为结束标志 55AA
MBR硬盘分区结构图
技术分享图片
MBR结构
技术分享图片
MBR中DRT(分区表结构)
技术分享图片
GPT分区
GPT:GUID(Globals Unique Identifiers)partition table 支持128个分区,使用64位,支持8Z( 512Byte/block )64Z ( 4096Byte/block)应用于分区超过2T ?
使用128位UUID(Universally Unique Identifier) 表示磁盘 和分区 GPT分区表自动备份在头和尾两份,并有CRC校验位 ?
UEFI (统一扩展固件接口)硬件支持GPT,使操作系统启动
EFI部分又可以分为4个区域:EFI信息区(GPT头)、分区表、GPT分区、备份区域
技术分享图片
分区工具
列出块设备
lsblk
fdisk -l /dev/sda
cat /proc/partitions
创建分区使用工具
fdisk, gdisk,parted
fdisk:fdisk创建MBR分区,是一个交互式界面
fdisk -l /dev/sdX ——查看硬盘分区信息
fdisk /dev/sdX ——进行分区(交互式),建立分区时 
m 帮助
n 建立分区(建立分区时先选择 p主分区primary partition 或e 选择扩展分区extended,建议前3个建立逻辑分区,最后把所有空间给4扩展分区,有扩展分区可以创建多个逻辑分区。)
d 删除分区
p 显示分区信息
t 转换分区类型
a 将指定分区设置/取消 活动分区 第一位为80活动
L 查看分区类型
o 重建分区表
v 验证分区表,显示剩余没有被分区划分的扇区数量
g 创建GPT格式的分区(centos7)不推荐使用,最好用gdisk
q 退出不保存
w 退出并保存,不保存,所有的修改都不生效
gdisk创建GPT分区(用法和fdisk类似)
n创建分区时,直接从2-128进行分区,不分主分区,扩展分区
parted:高级分区操作(创建、复制、调整大小等等)实时性,小心使用,不用再w已经保存,可以直接非交互式创建分区,aix, amiga, bsd, dvh, gpt, mac, msdos, pc98, sun, loop 都能创建。(不常用)
parted选项
-h:显示帮助信息;
-i:交互式模式;
-s:脚本模式,不提示用户;
-v:显示版本号。
parted参数
设备:指定要分区的硬盘所对应的设备文件
命令:要执行的parted命令
同步分区表
查看内核是否已经识别新的分区: cat /proc/partations
centos6通知内核重新读取硬盘分区表
新增分区用 partx -a /dev/DEVICE kpartx -a /dev/DEVICE -f: force
删除分区用 partx -d --nr M-N /dev/DEVICE
CentOS 5,7: 使用partprobe partprobe [/dev/DEVICE]

以上是关于linux磁盘管理简概的主要内容,如果未能解决你的问题,请参考以下文章

Linux磁盘管理系列 — 磁盘配额管理

【Linux命令】磁盘管理(逻辑卷与物理卷)

Linux 下磁盘管理--逻辑卷--LV

20磁盘管理—linux磁盘管理详解(分区)

Linux下文件系统及LVM简概

Linux 磁盘管理