一、LVM概述
Logical Volume Manager,逻辑卷管理
能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性
/boot分区用于存放引导文件,不能基于LVM创建
- LVM机制的基本概念
PV(物理卷):基于硬盘或分区设备创建而来,生成N多个PE,PE默认大小4M
物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录 LVM 的属性,并把存储空间分割成默认大小为 4MB 的基本单元(PE),从而构成物理卷
VG(卷组):由多个物理卷组成的资源池
由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷
LV(逻辑卷):从卷组中划分出指定容量大小的存储卷
从卷组中分割出的一块空间,形成逻辑卷。使用 mkfs 等工具可在逻辑卷上创建文件系统
二、LVM管理命令
主要命令
功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
scan扫描 | pvscan | vgscan | lvscan |
create建立 | pvcreate | vgcreate | lvcreate |
display显示 | pvdisplay | vgdisplay | lvdisplay |
remove删除 | pvremove | vgremove | lvremove |
extend扩展 | —— | vgextend | lvextend |
reduce减少 | —— | vgreduce | lvreduce |
pvcreate | 设备名1 设备名2 | ||||
vgcreate | 卷组名 | 物理卷名1 物理卷名2 | |||
lvcreate | -L | 容量大小 | -n | 逻辑卷名 | 卷名 |
lvextend | -L | +大小 | /dev/卷组名/逻辑卷名 |
三、创建并使用LVM
- 添加硬盘
fdisk分区,分区类型ID设置为8e - 创建物理卷
pvcreate 硬盘/分区设备文件
- 创建卷组
vgcreate 卷组名 物理卷
- 创建逻辑卷
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
- 格式化
mkfs -t xfs/ext4 /dev/卷组名/逻辑卷名
- 挂载使用
mount 设备名 挂载点 vim /etc/fstab
- 扩容:
扩容卷组
vgextend 卷组名 物理卷
扩容逻辑卷
lvextend -L +容量大小 -r /dev/卷组名/逻辑卷名
(-r选项可实现自动刷新逻辑卷文件系统容量大小)
手动刷新
xfs_growfs(针对xfs)
resize2fs(针对ext3/4)
四、磁盘配额
-
实现磁盘配额的条件
需要Linux内核支持
安装xfsprogs与quota软件包
-
Linux磁盘限额的特点
作用范围:针对指定的文件系统(分区)
限制对象:用户账号、组账号
限制类型:磁盘容量、文件数量
限制方法:软限制、硬限制
- 以支持配额功能的方式挂载文件系统
- 编辑用户和组账号的配额设置
- 验证磁盘配额功能
- 查看磁盘配额使用情况
五、磁盘限额
当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障
为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性
在 CentOS 系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS 文件系统通过 xfs_quota 工具进行管理; EXT3/4 文件系统通过 quota 工具进行管理
- 安装软件
xfsprogs
- 以支持磁盘限额的方式挂载文件系统
mount -o usrquota,grpquota ....
永久挂载
- 配置磁盘限额
xfs_quota -x -c 'limit -u/-g bsoft=XX bhard=XX isoft=XX ihard=XX 用户名/组名' 挂载点目录
-x | 表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用 |
-c | 表示直接调用管理命令 |
-u | 指定用户账号对象 |
-g | 指定组账号对象 |
bsoft | 设置磁盘容量的软限制数值(默认单位为 KB) |
bhard | 设置磁盘容量的硬限制数值(默认单位为 KB) |
isoft | 设置磁盘文件数的软限制数值 |
ihard | 设置磁盘文件数的硬限制数值 |
仅限制磁盘容量
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zhangsan' /opt/
仅限制文件数
xfs_quota -x -c 'limit -u isoft=4 ihard=5 zhangsan' /opt/
查看 zhangsan 磁盘容量限制
xfs_quota -c 'quota -uv zhangsan' /opt/
查看 zhangsan 文件数限制
xfs_quota -c 'quota -i -uv zhangsan' /opt/
- 验证磁盘限额
容量验证
dd if=/dev/zero of=挂载点目录/XX文件 bs=每次复制的数据大小 count=复制次数
数量验证
touch mkdir
- 查看磁盘限额使用情况
xfs_quota -x -c 'report -abih'