玄子Share-磁盘管理与文件系统
磁盘介绍
磁盘又称为硬盘,是计算机中的外部存储设备,负责存储计算机数据,并且断电后保持数据不丢失
文件系统分类
基于Windows操作系统
- NTFS Windows server 2003/2008/2022/2016服务器默认的文件系统
- FAT16 U盘默认的文件系统类型
- FAT32 U盘默认的文件系统类型
基于Linux操作系统
- EXT2 CentOS/RHEL及之前版本
- EXT3 CentOS/RHEL5
- EXT4 CentOS/RHEL6
- XFS CentOS/RHEL7/8
磁盘的分类
机械硬盘
- 性能参数
- 容量:512G、1T、2T、4T
- 转速:7200/Min(蓝盘)、10K/min、15k/min(服务器)
- 速率:50M/Second
- 接口类型:IDE、SATA、SCSI、SAS
- 品牌:三星、西部数据、Dell
- 应用场景:服务器、日志数据存储、备份数据存储(静态数据)
固态硬盘
- 品牌:三星、西部数据、Dell
- 接口类型:IDE、SATA、SCSI、SAS
- 容量:512G、1T、2T、4T
- 速率:150M~200M/Second 300~350M/Second
- 应用场景:服务器业务数据存储、关系型数据库(MySQL、SQL Server、Oracle、PostgreSQL)数据存储(动态数据、高热数据)
硬盘的物理结构
- 盘片:硬盘有多个盘片,每盘片2面
- 磁头:每面一个磁头
硬盘的数据结构扇区
- 盘片被分为多个扇形区域,每个扇区存放512字节的数据
- 磁道:同一盘片不同半径的同心圆
- 柱面:不同盘片相同半径构成的圆柱面
磁盘结构
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
硬盘存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数
Linux磁盘分区
Linux 系统中所有的硬件设备都是通过文件的方式来使用的,我们将这些文件称为设备文件,硬盘对应的设备文件一般被称为块设备文件
- /dev/sda
- /dev/sdb
Linux 系统支持的磁盘分区格式
- MBR
- GPT
磁盘分区的好处
- 可以确保数据安全
- 可以提高数据的读取速度
硬盘的分区类型
-
MBR 磁盘分区
-
主分区:一块硬盘最多创建 4 个主分区,主分区和扩展分区的序号限制在 1~4
-
扩展分区:扩展分区不能直接存储数据、必须基于扩展分区创建逻辑分区,基于逻辑分区存储数据,创建扩展分区必须要占用一个主分区
-
逻辑分区:由于业务需求,需要创建多余四个的分区,同时可以存储数据。逻辑分区创建的个数取决于扩展分区的总大小和每个要创建的逻辑分区的大小
-
-
扩展分区再分为多个逻辑分区,但最多只能有一个扩展分区
-
逻辑分区的序号将始终从 5 开始
磁盘的分区方案
磁盘容量 800 G,每个主分区 100 G,每个逻辑分区 100 G
方案 | 主分区 | 扩展分区 | 逻辑分区 |
---|---|---|---|
方案一 | 1(100G) | 1(700G) | 7 |
方案二 | 2(200G) | 1(600G) | 6 |
方案三 | 3(300G) | 1(500G) | 5 |
方案四 | 4(800G) | 0 | 0 |
硬盘分区的表示方法
/dev/sdb8
/dev
:存储Linux系统中所有硬件设备文件使用的目录sd
:表示SCSI接口类型的硬盘b
:表示第二块硬盘8
:表示第四个逻辑分区
MBR 与磁盘分区表示
主引导记录分区(MBR:Master Boot Record)
- MBR 位于硬盘第一个物理扇区处
- MBR 中包含硬盘的主引导程序和硬盘分区表
- MBR 支持4个主分区表,一个主分区表占 64 字节
Linux 中将硬盘、分区等设备均表示为块设备文件
操作文件系统
文件系统类型
- XFS 文件系统
- 存放文件和目录数据的分区
- CentOS 7系统中默认使用的文件系统
- SWAP,交换文件系统
- SWAP交换文件系统,也成为”交换分区“,充当临时内存进行使用,该分区将数据存储到硬盘上
- 从此来临时缓解物理内存的不足,确保Linux系统稳定运行
- 创建交换分区的规则:一般是物理内存1.5 ~ 2倍,生成服务器一般不超过16 ~ 32G
- Linux支持的其它文件系统类型
- FAT16、FAT32、NTFS,EXT4、JFS
检测并确认新硬盘
fdisk / lsblk命令
fdisk -l [磁盘设备]
fdisk [磁盘设备]
[root@xuanzi ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x00f5c2a5 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-167772159,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-167772159,默认为 167772159):+20G
分区 1 已设置为 Linux 类型,大小设为 20 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:85.9 GB, 85899345920 字节,167772160 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x00f5c2a5
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 41945087 20971520 83 Linux
选项 | 功能 |
---|---|
n | 新建分区 p(主分区)、e(扩展分区)、l(逻辑分区) |
d | 删除分区 |
p | 查看磁盘分区情况 |
l | 列出分区类型 |
t | 变更分区类型 |
w | 保存分区并退出 |
q | 不保存分区并退出 |
探测硬盘分区
Partx 命令用于告诉 Linux 内核新的磁盘分区情况,让内核重读分区表
partx [选项] 参数
- -a:添加磁盘分区表(对内核操作)
- -d:删除旧的磁盘分区表(对内核操作)
创建文件系统
mkfs 命令:Make Filesystem,创建文件系统(格式化)
mkfs -t 文件系统类型 分区设备
[root@localhost ~]# ls /sbin/mkfs*
/sbin/mkfs /sbin/mkfs.cramfs /sbin/mkfs.ext3 /sbin/mkfs.minix
/sbin/mkfs.btrfs /sbin/mkfs.ext2 /sbin/mkfs.ext4 /sbin/mkfs.xfs
[root@localhost ~]# mkfs -t xfs /dev/sdb1
[root@localhost ~]# mkfs.xfs /dev/sdb1
mkswap 命令:make swap,创建交换文件系统
mkswap 分区设备
[root@localhost ~]# mkswap /dev/sdb5
[root@localhost ~]# cat /proc/meminfo | grep SwapTotal
SwapTotal: 8257532 kB
[root@localhost ~]# swapon /dev/sdb5 启用交换分区
[root@localhost ~]# cat /proc/meminfo | grep SwapTotal
SwapTotal: 10354680 kB
[root@localhost ~]# swapoff /dev/sdb5 关闭交换分区
挂载文件系统
挂载:将一个设备(存储设备)挂载到一个已经存在的目录上,用户访问存储设备中的文件、目录等数据,是通过访问这个目录来实现的
mount 命令:挂载文件系统、ISO镜像到指定文件夹
mount [ -t 类型 ] 存储设备 挂载点目录
mount -o loop ISO镜像文件 挂载点目录
[root@xuanzi ~]# mount -t xfs /dev/sdb1 /kgc1/
卸载文件系统
umount 命令:卸载已挂载的文件系统
umount 存储设备
umount 挂载点目录
umount /dev/sdb1
umount /kgc1
自动挂载文件系统
/etc/fstab 配置文件:包含需要开机后自动挂载的文件系统记录
[root@localhost ~]# vi /etc/fstab
…… //省略部分内容
/dev/sdb1 /mailbox xfs defaults 0 0
- /dev/sdb1:分区名称
- /mailbox:挂载点
- xfs:文件系统类型
- defaults:挂载参数
- 0:文件系统是否备份
- 0:系统启动是否检查磁盘
- mount -a:挂载/etc/fstab文件中所有文件系统
查看磁盘使用情况
df 命令
df [选项] [文件]
[root@xuanzi ~]# df -hT /kgc*
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sdb1 xfs 20G 33M 20G 1% /kgc1
/dev/sdb2 xfs 20G 33M 20G 1% /kgc2
选项 | 功能 |
---|---|
-h | 以人性化的格式显示大小(如1K、 234M、 2G) |
-T | 显示文件系统类型 |
玄子Share-磁盘管理与文件系统 2024-03-18