目录
2.1 主引导记录(MBR:Master Boot Record)
一、磁盘基础
1.1 磁盘结构
1.1.1 硬盘的物理结构
- 盘片:硬盘有多个盘片,每盘片2面
- 磁头:每面一个磁头
1.1.2 硬盘的数据结构
- 扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位
- 磁道:同一盘片不同半径的同心圆
- 柱面:不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成
1.1.3 硬盘存储容量
- 硬盘存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数(512字节)
- 可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
- 磁盘接口类型:IDE、SATA、SCSI、SAS、光纤通道
二、MBR与磁盘分区表示
2.1 主引导记录(MBR:Master Boot Record)
-
MBR位于硬盘第一个物理扇区处
-
MBR中包含硬盘的主引导程序和硬盘分区表
-
分区表有4个分区记录区,每个分区记录区占16个字节
2.2 Linux中将硬盘、分区等设备均表示为文件
/dev/ sdb5
- sd表示SCSI设备
- hd表示IDE设备
- 硬盘的顺序号,以字母a、b、....表示
- 分区的顺序号,以数字1、2、...表示
2.3 磁盘分区结构
- 硬盘中的主分区数目只有4个
- 主分区和扩展分区的序号限制在1~4
- 扩展分区再分为逻辑分区
- 逻辑分区的序号将始终从5开始
2.4 主启动记录(MBR) 磁盘分区、
MBR是主引导记录,位于硬盘第- -个物理扇区处,MBR中包含硬盘的主引导程序和硬盘分区表
MBR总共512字节, 前446字节是主引导记录,分区表保存在MBR扇区中的第447-510字节中。分区表有4个分区记录区,每个分区记录区占16字节
主启动记录(MBR)磁盘分区支持最大卷为2.2TB,每个磁盘最多有4个主分区,或3个主分区、1个扩展分区和在扩展分区里面分多个逻辑分区)
2.5 两种分区方式区别(MBR,GPT)
-
MBR 只能对2t以下的盘进行分区
-
GPT 可以对2t以上的盘进行分区
三、创建文件系统
3.1 XFS文件系统
- 存放文件和目录数据的分区
- 高性能的日志型文件系统
- CentOS 7系统中默认使用的文件系统
3.2 SWAP,交换文件系统
- 为 Linux 系统建立交换分区
3.3 Linux支持的其它文件系统类型
- FAT16、FAT32、NTFS
- EXT4、JFS……
3.4 检测并确认新硬盘(以下全是重点)
3.4.1 fdisk命令:fdisk -l
fdisk -l:查看硬盘的整体情况和分区情况
- Device:分区的设备文件名称。
- Boot:是否是引导分区。若是,则有“*”标识。
- Start:该分区在硬盘中的起始位置(柱面数)。
- End:该分区在硬盘中的结束位置(柱面数)。
- Blocks:分区的大小,以 Blocks(块)为单位,默认的块大小为 1024 字节。
- Id:分区对应的系统 ID 号。83 表示 Linux 中的 XFS 分区或 EXT4 分区、8e 表示 LVM 逻辑卷。LVM 是 Linux 操作系统中对磁盘分区进行管理的一种逻辑机制,与之相关的知识将在后面的章节介绍
- System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在 Linux 操作系统中,分区和格式化的过程是相对独立的,关于格式化分区的操作将在后续内容中讲解
3.4.2 fdisk命令:交互模式中的常用指令
fdisk指令说明
Command (m for help): m #输入m指令
a toggle a bootable flag #设置可引导标记
b edit bsd disklabel #修改bsd的磁盘标签
c toggle the dos compatibility flag #设置DOS操作系统兼容标记
d delete a partition #删除一个分区
l list known partition types #显示已知的分区类型,其中82为 Linux swap分区,83为Linux分区
m print this menu #显示帮助菜单
n add a new partition #增加一个新的分区
o create a new empty DOS partition table #创建一个新的空白的DOS分区表
p print the partition table #显示磁盘当前的分区表
q quit without saving changes #退出fdisk程序,不保存任何修改
s create a new empty Sun disklabel #创建一个新的空白的Sun磁盘标签
t change a partition's system id #改变一个分区的系统号码
u change display/entry units #改变显示记录单位
v verify the partition table #对磁盘分区表进行验证
w write table to disk and exit #保存修改结果并退出fdisk程序
x extra functionality (experts only) #特殊功能,不建议初学者使用
3.4.3 例题
建立第一个主分区(/dev/sdb1),容量指定为 20GB,具体操作如下
一、分区
创建3个
二、格式化
mkfs -t xfs(文件类型)/dev/sdb1
或
mkfs.xfs /dev/sdb1
对swap进行格式化
mkswap /dev/sdb3
3.4.4 相关分区命令
- lsblk:以树形查看磁盘分区
- blkid /dev/sdb1:查看磁盘分区的UUID
- gdisk命令交互模式中的指令(扩充)
b | 将GPT数据备份到一个文件 |
c | 更改分区名称 |
d | 删除一个分区 |
i | 显示分区详细信息 |
l | 列出已知分区类型 此处8200是Linux swap 8300是Linux filesystem(对应fdisk的82和83) 8e00是Linux LVM |
n | 增加一个新的分区 |
o | 创建一个新的空白的GPT分区表 |
p | 显示当前磁盘的分区表 |
q | 退出gdisk程序,不保存任何修改 |
r | 恢复和转换选项(仅限专家) |
s | 排序分区 |
t | 改变分区的类型 |
v | 验证磁盘分区表 |
w | 将分区表写入裁判并退出(保存并退出) |
x | 额外功能(仅限专家) |
? | 显示帮助信息 |
四、挂载、卸载文件系统
4.1 mount命令
挂载文件系统、ISO镜像到指定文件夹
mount [ -t 类型 ] 存储设备 挂载点目录 #用于指定文件系统类型,通常可以省略,由系统自动识别
mount -o loop ISO镜像文件 挂载点目录
-o options 主要用来描述设备或档案的挂接方式 #挂载参数列表,以英文逗号分隔:如用来描述特殊设备,用loop指定
loop:用来把一个文件当成硬盘分区挂接上系统
4.2 umount命令
卸载已挂载的文件系统
umount 存储设备位置
umount 挂载点目录
4.3 永久挂载
在/etc/fstab 文件中,每一行记录对应一个分区或设备的挂载配置信息,这些信息从左到右包括六个字段(使用空格或制表符分隔),各部分的含义如下所述。
/dev/sdb1 / xfs defaults 0 0
第 1 字段:设备名或设备卷标名。
第 2 字段:文件系统的挂载点目录的位置。
第 3 字段:文件系统类型,如 XFS、Swap 等。
第 4 字段:挂载参数,即mount 命令“-o”选项后可使用的参数。例如,defaults、rw、ro、
noexec 分别表示默认参数、可写、只读、禁用执行程序。
第 5 字段:表示文件系统是否需要 dump 备份(dump 是一个备份工具)。一般设为 1
时表示需要,设为 0 时将被 dump 忽略。
第 6 字段:该数字决定在系统启动时进行磁盘检查的顺序。0 表示不进行检查,1 表示优先检查,2 表示其次检查。根分区应设为 1,其他分区设为 2。
通过在/etc/fstab 文件中添加相应的挂载配置,可以实现开机后自动挂载指定的分区。例如,执行以下操作将添加自动挂载分区/dev/sdb1 的配置记录
1、先查看blkid /dev/sdb1
2、将id号输入 vi /etc/fstab 中
例