Linux磁盘管理与文件系统
Linux磁盘管理与文件系统
一、磁盘基础
1、磁盘结构
(1)硬盘的物理结构
①盘片
硬盘有多个盘片,每盘片2面
②磁头
每面一个磁头
2、硬盘的数据结构
(1)扇区
盘片被分为多个扇形区域,每个扇区存在512字节的数据,硬盘的最小存储单位
(2)磁道
同一盘片不同半径的同心圆,是由磁头在盘片表面划出的圆形轨迹
(3)柱面
不同盘片相同半径构成的圆柱面呢,由同一半径圆的多个磁道组成
3、存储容量
硬盘存储容量=磁头数X磁道(柱面)数X每道扇区数X每扇区字节数(512字节)
4、定位方式
可以用柱面/磁头/扇区来唯一定位磁盘上的每一个区域
5、磁盘接口类型
(1)IDE
并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被SATA所取代。
(2)SATA
抗干扰性强,支持热插拔等功能,速度快,纠错能力强。
(3)SCSI
小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器,资料传输时CPU占用率较低,转速快,支持热插拔等。
(4)SAS
是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到6GB/s。
6、MBR与磁盘分区表示
(1)主引导记录(MBR:Master Boot Record)
MBR是主引导记录,位于硬盘第一个物理扇区处,MBR中包含硬盘的主引导程序和硬盘分区表。MBR总共512字节,前446字节是主引导记录,分区表保存在MBR扇区中的第447-510字节中。分区表有4个分区记录区,每个分区记录区占16字节。
(2)磁盘分区表示
Linux中将硬盘、分区等设备均表示为文件
例如:/dev/sdh5
sd表示SCSI设备,hd表示IDE设备
硬盘的顺序号,以字母a、b、c……表示
分区的顺序号,以数字1、2、3……表示,主分区为1-4,第一个逻辑分区始终从5开始。
(3)磁盘分区结构
硬盘中的主分区数目只有4个
主分区和扩展分区的序号限制在1~4
扩展分区再分为逻辑分区
逻辑分区的序号将始终从5开始
7、文件系统类型
(1)XFS文件系统
存放文件和目录数据的分区
高性能的日志型文件系统,特别擅长于处理大文件,可支持上百万TB的存储空间
CentOS 7系统中默认使用的文件系统
(2)SWAP,交换文件系统
为Linux系统建立交换分区
一般设置为物理内存的1.5~2倍
(3)Linux支持的其他文件系统类型
EXT4(CentOS 6默认)、FAT32、NTFS、LVM
二、检测并确认新硬盘
1、查看磁盘分区
fdisk -l [磁盘设备]
或
fdisk [磁盘设备]
Device(设备):分区的设备文件名称。
Boot:是否是引导分区。若是,择由“*”标识。
Start:该分区在硬盘中的起始位置(柱面数)。
End:该分区在硬盘中的结束位置(柱面数)。
Blocks:分区的大小,以Blocks(块)为单位,默认的块大小为1024字节。
Id:分区对应的系统ID号。例如,83标识Liux中的XFS分区或EXT4分区、8e标识LVM逻辑卷等。
System:分区类型。
2、管理磁盘分区
fdisk /dev/sdb
交互模式中的常用指令:
指令 | 说明 |
---|---|
m | 获取帮助菜单 |
n | 新建分区 |
p | 查看分区情况 |
d | 删除分区 |
t | 变更分区的类型 |
w | 保存分区操作并退出 |
q | 不保存分区操作并退出 |
三、规划硬盘中的分区
创建分区步骤
1、fdisk /dev/sdb #进入磁盘管理界面
2、n #新建分区
3、p主分区、e扩展分区、l逻辑分区 #设置分区类型
4、设置分区:1(范围1-4,如按Enter键接收默认值) #设置分区号
5、设置柱面序列:直接按Enter键接收默认值 #设置inode起始值
6、设置分区大小,例如:+20G(指定大小为20G,如按Enter键接收默认值表示所有空间) #设置分区容量
7、w #保存设置并退出
注:变更硬盘(特别是正在使用的硬盘)的分区设置以后,建议最好将系统重启一次,或者执行“partprobe”命令使操作系统检测新的分区表情况,以防格式化分区时损坏硬盘中已有的数据。
四、创建文件系统
创建文件系统的过程即格式化分区的过程
1、mkfs命令
make filesystem,创建文件系统(格式化)
一般格式为:mkfs -t 文件系统类型 分区设备
例如:mkfs -t xfs /dev/sdb1
或mkfs.xfs /dev/sdb1
2、mkswap命令
make swap,创建交换文件系统
一般格式为:mkswap 分区设备
创建交换分区之前,目标分区应先通过 fdisk 工具将分区类型号设置为 82
fdisk /dev/sdb
--->t
--->5(分区号)
--->82(设置类型为swap)
mkswap /dev/sdb5 #格式化
swapon /dev/sdb5 #启用新增加的交换分区
swapoff /dev/sdb5 #停用指定的交换分区
swapon -s #查看每个分区的swap状态
free -m #查看总的swap状态信息
五、挂载、卸载文件系统
1、mount命令
挂载文件系统、ISO镜像到指定文件夹
一般格式为:mount [-t 类型] 存储设备 挂载点目录
mount -o loop ISO镜像文件 挂载点目录
2、umount命令
卸载已挂载的文件系统
卸载前提:挂载的设备或者目录没有被在使用中,要先退出挂载目录
一般格式为:
umount 存储设备位置
umount 挂载点目录
常用选项有:
-l,表示解除正在繁忙的文件系统
-f,表示强制
3、查看磁盘使用情况
方式一:mount
方式二:df [选项] [文件]
-h:显示分区的容量单位
-T:显示文件系统的类型
-i:显示分区的inode号码数量
4、设置文件系统的自动挂载
由于mount命令属于临时挂载,挂载磁盘在设备重启后失效,因此我们可以设定自动挂载,使得Linux操作系统在每次开机时,会自动读取/etc/fastb文件的内容,自动挂载所指定的文件系统,减少手工挂载的麻烦。
/etc/fstab配置文件
该配置文件包含需要开机后自动挂载的文件系统记录
例如:/dev/sdb1 /mailbox xfs defaults 0 0
字段 | 说明 |
---|---|
第一字段 | 设备名或设备卷标名 |
第二字段 | 文件系统的挂载点目录的位置 |
第三字段 | 文件呢系统类型,如xfs、swap等 |
第四字段 | 挂载参数,即mount命令“-o”选项后可使用的参数。例如:defaults(默认参数)、rw(可读写)、ro(只读)、noexec(禁用执行程序)等 |
第五字段 | 表示文件系统是否需要dump备份(dump是一个备份工具)。一般设为1时表示需要,设为0时将被dump忽略 |
第六字段 | 该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区可设为1,其他分区设为2 |