一、磁盘基础
(一)、磁盘结构
1、硬盘的物理结构
1、盘片:硬盘有多个盘片,每个盘片2面
2、磁头:没面一个磁头
2、磁盘的数据结构
1、扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位磁道。
2、磁道:同一盘片不同半径的同心圆,是由磁头在盘片表面划出的圆形轨迹。
3、柱面:不同盘片相同半径构成的圆柱面,由同一半径预圆的多个磁道组成。
硬盘存储容量=磁头数×磁道(柱面)数×每个扇区数×没扇区字节数(512字节)
可以用柱面/磁头/扇区来唯一定位磁盘上每个区域
磁盘接口类型
IDE 、 SATA、 SCSI 、 SAS 、 光纤通道
二、MBR与磁盘分区表示
(一)、MBR
1、主引导记录(MBR:Master Boot Record)
①MBR位于硬盘的第一个物理扇区处
②MBR中包含硬盘的主引导程序和硬盘分区表
③分区表中有4个分区记录区,每个分区记录区占16字节
④Linux中将硬盘、分区等设备表示为文件
例如:/dev/sda1
d:硬件设备所在的目录
hd:表示IDE设备; sd:表示SCSI设备
a:硬盘的顺序号,以字母a,b,c…表示
1:分区的顺序号,以数字1,2,3,…表示 第一个分区
2、磁盘分区结构
硬盘中的主分区数目只有4个
主分区和扩展分区的序号限制在1~4
扩展分区再分为逻辑分区
逻辑分区的序号将始终从5开始
三、文件系统类型
(一)、XFS文件系统
1、存放文件和目录数据的分区
2、高性能的日志型文件类型,特别擅长于处理大文件,可支持上百万TB的存储空间
3、CenOS 7系统中默认使用的文件系统
(二)、SWAP,交换文件系统
1、为Linux系统建立交换分区
2、一般设置为物理内存的1.5~2倍
(三)、Linux支持的其他文件系统类型
1、EXT4
2、FAT32
3、NTFS
4、LVM
四、管理磁盘及分区
(一)、检测并确认新硬盘
1、fdisk命令-查看或管理磁盘分区
格式: fdisk -l [磁盘设备]
Device (设备) :分区的设备文件名称。
Boot:是否是引导分区。若是,则有"*"标识。
Start:该分区在硬盘中的起始位置(柱面数)
End:该分区在硬盘中的结束位置(柱面数)
Blocks:分区的大小,以Blocks (块)为单位,默认的块大小为1024字节。
Id:分区对应的系统 ID 号。例如,83表示Linux中的XFS分区或EXT4分区、82代表交换文件系统、8e表示LVM逻辑卷。
![](https://i-blog.csdnimg.cn/blog_migrate/c0446e2638c85f9c231139577d124d1c.png)
fdisk [磁盘设备]
2、fdisk - [磁盘设备]
划分硬盘分区的指令
指令 作用
m :获取帮助菜单
p :查看分区情况
n :新建分区
d :删除分区
t :变更分区类型
w :保存分区操作并退出
q :不保存分区操作直接退出
l :展示所有分区类型 (83普通类型 82swap 8eLVM fdraid磁盘整列 )
3、分区步骤
1 先按n
2 分区类型然后 p(主分区) e(扩展分区) l(逻辑分区)
3 然后选择分区号
4 扇区
5 分大小
![](https://i-blog.csdnimg.cn/blog_migrate/2692b293397afa85b171638739ebb7ee.png)
(二)、创建文件系统
1、mkfs命令-创建文件系统(格式化)
mkfs -t 文件系统类型 分区设备
mkfs -t xfs /dev/sdb1 和mkfs.xfs /dev/sdb1
![](https://i-blog.csdnimg.cn/blog_migrate/73ecd93954c4d1e1e87cc0b58f964103.png)
swap命令-创建系统文件
创建swap之前,目标分区应先通过fdisk 工具将分区类型ID 号设为 82
mkswap /dev/sdb5 格式化swap分区
swapon 是开启swap 注:/dev/sdb2(swap分区)
swapoff -a (表示所有)是关闭swap 注:/dev/sdb2(swap分区)
swapon -s 查看每一个分区的swap状态信息
![](https://i-blog.csdnimg.cn/blog_migrate/20f82707bdc45a9fce9f17acf85f9af6.png)
3、blk block(块设备)
查看UUID(blkid /dev/sda1)
![](https://i-blog.csdnimg.cn/blog_migrate/105435e26511dad8865305e685522b8e.png)
(三)、挂载,卸载文件系统
在Linux 系统中,对各种存储设各中的资源访问(如读取、保存文件等)都是通过目录结构进行的,虽然系统核心能够通过 “设备文件”的方式操纵各种设备,但是对于用户来说,还需要增加一个“挂载”的过程,才能像正常访问目录一样访问存储设备中的资源。
当然,在安装 Linux 操作系统的过程中,自动建立或识别的分区通常会由系统自动完成挂载,如“”分区、“boot” 分区等。然而对于后来新增加的硬盘分区、光盘等设备,有时候还需要管理员手动进行挂载,实际上用户访问的是经过格式化后建立的文件系统。挂载一个分区时,必须为其指定一个目录作为挂靠点(或称为挂载点),用户通过这个目录访问设备中的文件、目录数据。
1、mount命令-挂载文件系统
mount [-t 文件系统类型] 存储设备挂载点
将光盘挂载到/opt/data目录
mount /dev/sdb1 /opt/data
![](https://i-blog.csdnimg.cn/blog_migrate/e36e8dd1553745e058553f3d827877da.png)
2、 umount命令-卸载文件系统
umount /data通过挂载点目录卸载对应的分区
umount /dev/sdb1 通过设备文件卸载光盘
![](https://i-blog.csdnimg.cn/blog_migrate/49b5972583cdf4b3c0c04174b4716321.png)
3、设置文件系统的自动挂载
第1字段:设备名或设备卷标名
第2字段:文件系统的挂载点目录的位置
第3字段:文件系统类型,如xfs、swap等
第4字段:挂载参数,即mount命令"-o"选项后可使用的参数。例如,defaults、rw、ro、noexec分别表示默认参数、可写、只读、禁用执行程序
第5字段:表示文件系统是否需要dump备份(dump是一个备份工具)。一般设为1时表示需要,设为o时将被dump忽略
第6字段:该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为1,其他分区设为2
mount -a 即时生效
![](https://i-blog.csdnimg.cn/blog_migrate/1d936a5fd02f8ed5c8fe804da65df39c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0375778c62087f63d917361638f38b9f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2d63ce3748bc2129ca87bd13ca4d62af.png)
4、查看磁盘使用情况
df命令
用来检查文件系统的磁盘空间占用情况,使用权限是所有用户
-T :显示文件系统类型
-h :以容易理解的格式印出文件系统大小,例如133kb 2mb 21G
-k :以1024字节为单位列出磁盘空间使用情况
![](https://i-blog.csdnimg.cn/blog_migrate/8a218a90071772be916dbca11f36fb3c.png)
5、lsblk命令-列出所有可用块设备的信息
lsblk命令的英文是“list block”,即用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息。块设备有硬盘,闪存盘,CD-ROM等等。
-a 显示所有设备
-b 以bytes方式显示设备大小
-d 不显示slaves或holders
-D print discard capabilities
-e 排除设备
-f 显示文件系统信息
-h 显示帮助信息
-i use ascii characters only
-m 显示权限信息
-l 使用列表格式显示
-n 不显示标题
-o 输出列
-p 使用key="value"格式显示
-r 使用原始格式显示
-t 显示拓扑结构信息
![](https://i-blog.csdnimg.cn/blog_migrate/abe7cf36e51a590e44175e710f5c390c.png)
6、free -m 查看内存、swap分区信息
Mem:内存
Swap:交换分区
total:总大小,总量
used:已使用
free:空闲