磁盘管理与文件系统
目录
一.磁盘基础
1. 1 磁盘结构
物理结构:盘片、磁头
数据结构:扇区(512字节)、磁道、柱面
存储容量计算:磁头数(8个2进制)×磁道(柱面)数×每道扇区数(6个二进制)×每扇区字节数
1.2 磁盘接口类型
IDE、SATA、SCSI、SAS、光纤通道
1.3 MBR与磁盘分区表示
MBR位于硬盘第一个物理扇区,包含主引导程序和分区表
分区表有4个记录区(最多4个主分区或3主分区+1扩展分区)
Linux设备表示:/dev/hda5
hd: IDE设备;sd: SCSI设备
主分区1-4,逻辑分区从5开始
二.文件系统类型
2.1 常见类型
XFS:高性能日志文件系统(CentOS 7默认)
SWAP:交换分区(虚拟内存)
EXT4:第4代扩展文件系统
其他:FAT16/32、NTFS、JFS等
2.2 特点
XFS擅长处理大文件,支持快速恢复
SWAP建议大小为物理内存1.5-2倍
EXT4是典型日志型文件系统
三.磁盘管理命令
3.1分区管理
3.1.1 fdisk
查看硬盘的整体情况和分区情况
fdisk -l [磁盘设备]
Device:分区的设备文件名称。
Boot:是否是引导分区。若是,则有“*”标识。
Start:该分区在硬盘中的起始位置(柱面数)。
End:该分区在硬盘中的结束位置(柱面数)。
Blocks:分区的大小,以 Blocks(块)为单位,默认的块大小为 1024 字节。
Id:分区对应的系统 ID 号。83 表示 Linux 中的 XFS 分区或 EXT4 分区、8e 表示 LVM 逻辑卷。LVM 是 Linux 操作系统中对磁盘分区进行管理的一种逻辑机制,与之相关的知识将在后面的章节介绍。
System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在 Linux 操作系统中,分区和格式化的过程是相对独立的,关于格式化分区的操作将在后续内容中讲解。性能的日志文件系统,特别擅长于处理大文件,可支持上百万 T 字节的存储空间。由于 XFS 文件系统开启日志功能,所以即便发生宕机也
交互式分区管理
fdisk [设备]
- 常用指令:
d delete a partition #删除一个分区
l list known partition types #显示已知的分区类型,其中82为 Linux swap分区,83为Linux分区
n add a new partition #增加一个新的分区
v verify the partition table #对磁盘分区表进行验证
p print the partition table #显示磁盘当前的分区表
w write table to disk and exit #保存修改结果并退出fdisk程序
q quit without saving changes #退出fdisk程序,不保存任何修改
t change a partition's system id #改变一个分区的系统号码

3.2 GPT分区
使用gdisk命令管理,支持超过2TB磁盘,最多128个分区,存储支持更大,可靠性更高,适合大容量硬盘和型新系统。
3.2.1 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 额外功能(仅限专家)
? 显示帮助信息
3.3.文件系统创建
3.3.1 mkfs 创建文件系统
创建文件系统
mkfs -t [文件系统类型] [分区设备]
创建系统文件(格式化)
mkfs -t xfs /dev/sdb1 和 mkfs.xfs /dev/sdb1
其他格式化方式
mkfs -t vfat -F 32 /dev/sdb6 和 mkfs.vfat -F 32 /dev/sdb6
mkswap /dev/sdb5

3.3.2 mkswap 创建交换分区
可以将一个分区或文件格式化为交换区,供系统用作虚拟内存扩展
创建交换分区
mkswap [分区设备] / mkswap /dev/sdXN
3.3.3 swapon/swapoff 启用/禁用交换分区
swapon/swapoff [分区设备]
swapon -s 检测
3.4.mount 挂载管理
3.4.1 挂载
mount [-t 类型] 存储设备 挂载点目录
mount -o loop ISO镜像文件 挂载点目录
![]()
卸载
umount 存储设备位置
umount 挂载点目录
设置文件系统的自动挂载
vim /etc/fstab
<设备/UUID/Label> <挂载点> <文件系统类型> <挂载选项> <dump备份> <fsck检查顺序>
UUID=1234-5678 /mnt/data ext4 defaults 0 2
mount -a
mount 设备 挂载目录
3.5.查看命令
3.5.1 df 查看磁盘使用情况
df [选项] [文件]
df格式 [options]
主要参数
-s:对每个Names参数只给出占用的数据块总数。
-a:递归地显示指定目录中各文件及子目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数。
-k:以1024字节为单位列出磁盘空间使用情况。
-x:跳过在不同文件系统上的目录不予统计。
-l:计算所有的文件大小,对硬链接文件则计算多次。
-i:显示inode信息而非块使用量。
-h:以容易理解的格式印出文件系统大小,例如136KB、24MB、21GB。
-P:使用POSIX输出格式。
-T:显示文件系统类型。

3.5.2 lsblk 树形查看分区
lsblk [参数]
常用参数
-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 显示拓扑结构信息
3.5.3 blkid 查看设备UUID
blkid /dev/sdb1 //查看磁盘分区的UUID![]()
四. LVM概述
Logical Volume Manager, ,逻辑卷管理
能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性
/boot分区用于存放导文件,不能基于lvm创建
4.1 LVM机制的基本概念
PV (物理卷)
物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(Physical Extent,PE),从而构成物理卷
VG (卷组)
由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷
LV (逻辑卷)
逻辑卷建立在卷组之上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中“切出”一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。使用mkfs等工具在逻辑卷上创建文件系统
4.2 LVM的管理命令
| 功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
| scan扫描 | pvscan | gscan | vscan |
| create建立 | pvcreate | vgcreate | lvcreate |
| display显示 | pvdisplay | vgdisplay | lvdisplay |
| remove删除 | pvremove | vgremove | lvremove |
| extend扩展 | vgextend | vextend |
|
| reduce减少 | vgreduce |
lvreduce |
主要命令
pvcreate 设备名1 [设备名2 ... ...]
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 容量大小 -n逻 辑卷名卷 组名
lvextend -L +大小 /dev/卷组名/逻辑卷名
4.3 LVM操作主要命令步骤
1.关闭主机,添加两块新硬盘,重启主机
或echo "- - - " > /sys/class/scsi_host/host0/scan 扫描
2.先使用fdisk工具讲磁盘设备/dev/sdb、/dev/sdc划分主分区sdb1、sdc1,并且把分区类型的ID标记号改为“8e”
fdisk /dev/sdb
fdisk /dev/sdc
3.创建物理卷
pvcreate /dev/sdb1 /dev/sdc1
4.创建卷组,卷组名为vgname1
vgcreate vgname1 /dev/sdb1 /dev/sdc1
5.创建逻辑卷,逻辑卷名为lvname1,容量为20GB,生产的文件路劲为/dev/vgname1/lvname1
lvcreate -L 20G -n lvname1 vgname1
6.对逻辑卷进行格式化,创建XFS文件系统,并且挂载到/opt目录下
mkfs -t xfs /dev/vgname1/lvname1
mount /dev/vgname1/lvname1 /opt目录下
df -Th
- 再扩容
vgextend vgname1 /dev/sdc2
lvextend -L +10G /dev/vgname1/lvname1
xfs_growfs /dev/vgname1/lvname1 //刷新xfs文件系统容量
resize2fs /dev/vgname1/lvname1 //刷新ext4类型文件系统容量
4.4 创建与删除LVM的流程
创建 LVM 流程:
pvcreate 创建 pv -> vgcreate 创建卷组 -> lvcreate 创建逻辑卷 -> mkfs.xfs lv 格式化-> mount 挂载
删除 LVM 流程:
umount 卸载 -> lvremove lv 移出卷组中所有逻辑卷-> vgremove vg 移出卷组-> pvremove 移出 pv
五. RAID磁盘阵列介绍
是Redundant Array of Independent Disks的缩写,中文简称为独立冗余磁盘阵列
把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术
组成磁盘阵列的不同方式称为RAID级别(RAID Levels)
5.1常用的RAID级别
RAID0,RAID1,RAID5,RAID6,RAID1+0等
| RAID级别 | 硬盘数量 | 磁盘利用率 | 是否有校验 | 保护能力 | 写性能 |
| RAID0 | N | N | 无 | 无 | 单个硬盘的N倍 |
| RAID1 | N(偶数) | N/2 | 无 | 允许一-个设备故障 | 需写两对存储设备,互为主备 |
| RAID5 | N>=3 | (N-1) /N | 有 | 允许一个设备故障 | 需写计算校验 |
| RAID6 | N>=4 | (N-2) /N | 有 | 允许两个设备故障 | 需双重写计算校验 |
| RAID10 | N>=4(偶数) | N/2 | 无 | 允许两个基组中各坏一个 | N/2块盘同时写入 |
5.2 RAID 0
连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余
RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将响到所有数据
RAID 0不能应用于数据安全性要求高的场合
n块硬盘并行组合成一个新的逻辑盘
5.3 RAID 1
通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据
当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能
RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一块硬盘组合
一个磁盘失效时,系统可以自动切换到镜 像磁盘上读写,而不需要重组失效的数据
5.4 RAID 5
N(N>3) 块盘组成阵列,一份数据产生n-1个条带,同时还有1份校验数据,共n份数据在n块盘上循环均衡存储
N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高
(N-1)/N磁盘利用率
可靠性高,允许坏1块盘,不影响所有数据
5.5 RAID 1+0磁盘阵列介绍
N(偶数,n>=4)块盘两两镜像后,再组合成一个RAID 0
a1 a1 a2 a2
N/2磁盘利用率
N/2块盘同时写入,N块盘同时读取
性能高,可靠性高
5.6阵列卡介绍
阵列卡是用来实现RAID功能的板卡
通常是由o处理器,硬盘控制器,硬盘连接器和缓存等一系列组件构成的
不同的RAID卡支持的RAID功能不同
例如支持RAID 0,RAID 1,RAID 5,RAID 10等
RAID卡的接口类型
ide接口,scsi接口,sata接口和sas接口
六. 实验
附加 不重启加载新硬盘
echo "- - -" > /sys/class/scsi_host/host0/scan
1.建立多个主分区(/dev/sdb1)和,容量指定为 20GB


2.GPT格式 建立分区,容量指定为 40GB 

3.用LVM创建两个15G物理卷 并且设置逻辑卷20G挂载到 gz3



![]()



4 怎么用sdd20G给LVM bc1 扩大到50G



七. 总结
管理磁盘和分区(fdisk,gdisk)
创建文件系统(mkfs,mkswap,swapon,swapoff)
挂载、卸载文件系统(mount ,umount)
查看命令(df,lsblk,blkid)
LVM概念与基本操作
RAID磁盘基本了解(RAID0,RAID1,RAID5,RAID6,RAID1+0)
更多推荐



所有评论(0)