一 linux设备类型:
字符设备(char):字符特殊文件或字符设备提供无缓冲,直接访问硬件设备,存取单位为字符。例如键盘
块设备(block):块特殊文件或块设备提供对硬件设备的缓冲存取,并提供一些抽象的细节,存取单位为块。例如磁盘
二 设备文件:关联至一个设备驱动程序,进而能够跟与之对应的硬件设备进行通信,通过设备号码标识。
设备号码:
1 主设备号(major number),标识设备类型
2 次设备号(minor number),标识同一类型下的不同设备
拿磁盘设备文件/dev/sda, /dev/sdb来说,主设备号为sd,此设备号为a-z
另外,同一磁盘的不同分区用数字标识,例如/dev/sda1 /dev/sda2
三 机械式硬盘:
track:磁道,数据存放的位置
cylinder:柱面,设备的分区按柱面划分
sector:扇区,每个扇区存储一定大小的数据,一般为512bytes,也有4Kbytes
硬盘的0磁道0扇区512bytes为MBR(Master Boot Record),主引导记录,分为3部分:
part1:前446bytes,boot loader引导程序
part2:向后64bytes,分区表,每16bytes标识一个分区
part3:再向后2bytes,MBR的有效性标识(55AA表示前510bytes有效)
基于MBR管理的硬盘通常最多分为4个主分区:3个主分区+1个扩展分区(N个逻辑分区)
四 linux分区管理工具:fdisk, parted, sfdisk
1 fdisk:对于一块硬盘来讲,fdisk最多只能管理15个分区
fdisk -l <device,...> 列出磁盘分区信息,其中有*标识的分区包含了可引导设备
fdisk <device> 管理设备分区
子命令:# p 显示分区信息,print
# n 创建一个分区,new
# d 删除,delete
# w 将分区信息写入磁盘并退出,write
# q 放弃更新退出,quit
# m 获取帮助信息
# l 显示支持的分区格式及对应的id,如82为linux swap,83为linux,8e为linux LVM。
2 查看内核已经识别的分区信息:cat /proc/partitions
3 通知内核重新读取硬盘分区表:partx、kpart
1)partx -a <device>
或partx -a -n N:M <device> 指定添加N到M号分区的分区映射
2)kpartx -a <device>
-f: force