磁盘和文件管理
磁盘结构
磁盘的结构分为磁盘的物理结构和磁盘的数据结构
磁盘的物理结构
由盘片和磁头组成
盘片:硬盘有多个盘片,每盘片2面
磁头:每面一个磁头
磁盘的数据结构
由扇区、磁道和柱面组成
扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位
磁道:同一盘片不同半径的同心圆,是由磁头在盘片表面磁道划出的圆形轨迹
柱面:不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成
硬盘存储容量=磁头数x磁道(柱面) 数x每道扇区数x每扇区字节数(512字节)
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
磁盘接口类型
有IDE、 SATA、 SCSI、 SAS、光纤通道这几种
接口类型 | 说明 |
---|---|
IDE | 并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被SATA所取代。 |
SATA | 抗干扰性强,支持热插拔等功能,速度快,纠错能力强。 |
SCSI | 小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时CPU占用率较低,转速快,支持热插拔等 |
SAS | 是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到6Gb/s。 |
MBR与磁盘分区表示
MBR:( 主引导记录 Master Boot Record)
MBR位于硬盘第一个物理扇区处,用于引导分区
MBR中包含硬盘的主引导程序和硬盘分区表
分区表有4个分区记录区,每个分区记录区占16个字节
Linux中将硬盘、分区等设备均表示为文件
磁盘分区结构
在硬盘当中,主分区数目只有4个,且主分区和扩展分区的序号限制在1 ~4,是恒定不变的。
扩展分区可以再次划分逻辑分区,且逻辑分区的序号将始终从5开始。
磁盘分区表示
因Linux中将硬盘、分区等设备均表示为文件
如:/dev/ sd(hd)b5
sd表示的就是SCSI设备,而hd表示的是IDE设备
硬盘的顺序号,将会以字母a、b、…表示。
而分区的顺序号,会以数字1、2、…表示。主分区从1-4,第一个逻辑分区始终从5开始。
主启动记录(MBR) 磁盘分区
MBR是主引导记录,位于硬盘第一个物理扇区处,且MBR中包含硬盘的主引导程序和硬盘分区表。MBR总共有512字节,其中前446字节是主引导记录,分区表保存在MBR扇区中的第447-510字节中。分区表一共有4个分区记录区,每个分区记录区只占有16字节。
主启动记录(MBR) 磁盘分区支持最大卷为2.2TB,每个磁盘最多拥有4个主分区,或3个主分区、1个扩展分区和在扩展分区里面分多个逻辑分区。
文件系统类型
XFS文件系统
CentOS 7系统中默认使用XFS文件系统
存放文件和目录数据的分区
高性能的日志型文件系统,特别擅长于处理大文件,可支持上百万TB的存储空间。
SWAP (交换文件系统)
为Linux系统建立交换分区,一般能够设置为物理内存的1.5~2倍
Linux支持的其它文件系统类型
EXT4、FAT32、 NTFS、 LVM
fdisk命令
用于检测并确认新硬盘或查看或管理磁盘分区
fdisk -| [磁盘设备]-查看磁盘分区
名称 | 说明 |
---|---|
evice (设备) | 分区的设备文件名称 |
boot | 是否是引导分区。若是,则有“*"标识。 |
tart | 该分区在硬盘中的起始位置(柱面数)。 |
nd | 该分区在硬盘中的结束位置(柱面数)。 |
locks | 分区的大小,以Blocks (块)为单位,默认的块大小为1024 字节。 |
d | 分区对应的系统ID号。例如,83表示Linux中的XFS分区或EXT4分区、8e表示LVM逻辑卷。 |
ystem |
分区类型。
fdisk [磁盘设备]-管理磁盘分区
交互模式中的常用指令: | 说明 |
---|---|
m | 获取帮助菜单 |
n | 新建分区 |
P | 查看分区情况 |
d | 删除分区 |
t | 变更分区的类型. |
w | 保存分区操作并退出 |
q | 不保存分区操作并退出 |
创建分区步骤
n
–> p主分区、e扩展分区、1逻辑分区
–>设置分区: 1 (范围1-4,如按Enter键接受默认值)
–> 设置柱面序列:直接按Enter 键接受默认值
–>设置分区大小: +20G(指定大小为20GB,如按Enter键接受默认值表示所有空间)
–w
变更硬盘(特别是正在使用的硬盘)的分区设置以后,建议最好将系统重启一次,或者执行"partprobe"命令使操作系统检测新的分区表情况。以防格式化分区时损坏硬盘中已有的数据。
mkfs命令-创建文件系统
Make Filesystem,创建文件系统(格式化)
mkfs -t 文件系统类型分区设备
创建文件系统的过程即格式化分区的过程
mkfs -t xfs /dev/ sdb1
lmkfs.xfs /dev/ sdb1
mkswap命令-创建交换分区
mkswap 分区设备
创建交换文件系统
创建swap之前,目标分区应先通过fdisk工具将分区类型ID号设为82fdisk /dev/ sdb
–>t
–>3
–>82
mkswap /dev/ sdb3
swapon /dev/sdb3 #启用新增加的交换分区
swapoff /dev/ sdb3 #停用指定的交换分区
swapon -S #查看每个分区的swap状态信息
free -m #查看总的swap状态信息
mount命令-挂载文件系统
挂载文件系统、ISO镜像到指定文件夹
mount [ -t类型]存储设备挂载点目录
mount -o loop ISO镜像文件挂载点且录
命令 | 说明 |
---|---|
-t | 用于指定文件系统类型,通常可以省略,由系统自动识别 |
-o: | 挂载参数列表,以英文逗号分隔;或用来描述特殊设备,用1oop指定 |
示例
mount /dev/ cdrom /mnt
mount /dev/ sdb1 /opt
#挂载已下载到系统中的镜像文件
mount -o loop Cent0S-7-x86 64-DVD-1708.iso /media
umount命令-卸载文件系统
卸载已挂载的文件系统
卸载前提:挂载的设备或者目录没有被在使用中,要先退出挂载目录
umount存储设备位置
umount挂载点且录
umount [-lf] 存储设备目录或者挂载点目录
命令 | 说明 |
---|---|
-l | 表示解除正在繁忙的文件系统 |
-f | 表示强制 |
查看磁盘使用情况
1.直接mount命令
2.df [选项]
命令 | 说明 |
---|---|
-h | 显示分区的容量单位 |
-T | 显示文件系统的类型 |
-i | 显示分区的inode号码数量 |
设置文件系统的自动挂载
Linux操作系统在每次开机时,会自动读取/etc/fstab文件的内容,自动挂载所指定的文件系统。
/etc/fstab配置文件
[root@localhost ~]# vim /etc/ fstab
/dev/ sdbl /opt xfs defaults 0 0
/dev/sr0 /mnt iso9660 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。 |