LVM概述
◾ Logical Volume Manager,逻辑卷管理
- 动态调整磁盘容量,从而提高磁盘管理的灵活性
- /boot分区用于存放引导文件,不能基于LVM创建
- 图形界面管理工具
*system-config-lvm
◾ LVM 机制的基本概念
- PV:物理卷是LVM机制的基本存储设备通常对应为一a个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(PE),从而构成物理卷。
- VG:卷组由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷。
- LV:逻辑卷从卷组中分割出的一块空间,形成逻辑卷。使用mkfs等工具可在逻辑卷.上创建文件系统。
- PE:lvm最小存储单元(默认4M)
LVM的管理命令
◾ 主要命令
◾ 格式
pvcreate 设备名1 [设备名2 .......]
vgcreate 卷组名 物理卷名1 物理卷名2
Ivcreate -L 容量大小-n 逻辑卷名 卷组名
Ivextend -L +大小/dev/卷组名/逻辑卷名
◾ 示例:
1.物理卷操作
pvcreate 设备名1 [设备名2 …]
创建物理卷,可以同时创建多个物理卷
pvscan 查询物理卷是否创建成功
pvdisplay:显示更详细的信息
pvremove:同时删除多个分区
2.卷组操作
vgcreate 卷组名 物理卷名1 物理卷名2
查看是否加入卷组
vgscan
vgs
vgremove:移除分区
3.逻辑卷组操作
Ivcreate -L 容量大小-n 逻辑卷名 卷组名
lvscan:查询是否创建逻辑卷
自己映射到硬盘设备
4.格式化、创建挂载点、挂载
格式化:mkfs.xfs /dev/vg01/lv01
创建目录:mkdir zz
挂载到zz目录下:mount /dev/vg01/lv01 /zhu
5.逻辑卷扩展
有+号
lvextend -L +大小 /dev/卷组名/逻辑卷名:逻辑卷扩展增加多少G
增加后要刷新:
xfs_growfs + 名称路径 (对谁调整) 激活、刷新、调整大小
没有+号
lvextend -L 大小 /dev/卷组名/逻辑卷名:逻辑卷变成多少G;大小不带+就是变成大小,而不是增加
lvextend -l pe数量(4M的倍数)/dev/vg01/lv01:pe的空间变成多少G
30*102/4=7680 30G
lvextend -l 7680 /dev/vg01/lv02
注意点:①逻辑卷指定增加空间时,不足最小单位系统直接满足,②删除LV要先卸载挂载点
磁盘配额概述
◾ 实现磁盘限额的条件
- 需要Linux内核支持
- 安装xfsprogs与quota软件包
◾ Linux磁盘限额的特点
-
作用范围:针对指定的文件系统(分区)
-
限制对象:用户帐号、组帐号
-
限制类型:磁盘容量、文件数量
- 软限制:指定一个软性的配额数值(如 480MB 磁盘空间、180 个文件),在固定 的宽限期(默认为七天)内允许暂时超过这个限制,但系统会给出警告信息
- 硬限制:指定一个硬性的配额数值(如 500MB 磁盘空间、200 个文件),是绝对 禁止用户超过的限制值,当达到硬限制值时,系统也会给出警告并禁止继续写入数据。硬限制的配额值应大于相应的软限制值,否则软限制将失效
-
限制方法:软限制、硬限制
- 软限制:当达到软限制时会提示用户,但允许用户在规定期限内继续使用
- 硬限制:当达到硬限制是会提示用户,且强制终止用户的操作
◾ 磁盘配额的作用范围
- xfs_quota 设置的磁盘配额功能,只在指定的文件系统(分区)内有效,用户使用其他 未设置配额的文件系统时,将不会受到限制
◾ 磁盘配额的限制对象
- xfs_quota 主要针对系统中指定的用户账号、组账号进行限制,没有被设置限额的用户或组将不受影响。
- 对组账号设置配额后,组内所有用户使用的磁盘容量、文件数量的总和不能超过限制。
◾ 磁盘配额的限制类型
- 磁盘容量:限制用户能够使用的磁盘数据块(Block)大小,也就是限制磁盘空间大小,默认单位为 KB。
- 文件数量:限制用户能够拥有的文件个数。在 Linux 操作系统中,每一个文件都有一个对应的数字标记,称为 i 结点(Inode)编号,这个编号在同一个文件系统内是唯一的,因此 xfs_quota 通过限制 i 结点的数量来实现对文件数量的限制。
◾ EXT4和XFS的区别
◾ 磁盘配额的步骤
当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。
为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性。
在CentOS系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS文件系统通过xfs_quota工具进行管理; EXT3/4文件系统通过quota工具进行管理。
◾ 常用选项
选项 | 说明 |
---|---|
-x | 表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用 |
-c | 表示直接调用管理命令 |
-u | 指定用户账号对象 |
-g | 指定组账号对象 |
bsoft | 设置磁盘容量的软限制 默认单位为KB |
bhard | 设置磁盘容量的硬限制 默认单位为KB |
isoft | 设置磁盘文件数的软限制数值 |
ihard | 设置磁盘文件数的硬限制数值 |
◾ CentOS7中设置磁盘配额步骤
①检查是否已安装xfsprogs和xfs_quota软件包
rpm -q xfsprogs quota
[如果查不到可以配合管道工具]
yum install -y xfsprogs quota
②以支持配额功能的方式挂载文件系统
umount /dev/cat/cathome
mount -o defaults,usrquota,grpquota /dev/cat/cathome /data
# mount -o可以指定你的挂载参数
或者
vim /etc/fstab
/dev/cat/cathome /data xfs defaults,usrquota,grpquota 0 0
umount /dev/cat/cathome
mount -a
#-a将/etc/fstab的所有内容重新加载
③编辑用户和组账号的配额设置
useradd sans
passwd sans
xfs_quota -x -c 'limit -u bosoft=80M bhard=100M isoft=40 ihard=50 sans' /data/
④验证磁盘配额功能
chmod 777 /data
su sans
cd /data
#验证磁盘容量超限
dd if=/dev/zero of=/data/badtime bs=10M count=20
#从一个文件当中取数据到目标目录当中
#取10M的文件取12次,存到ddtest.txt,在opt里生成,大小为200M
#验证磁盘文件数超限
touch {aa,bb,cc,dd,ee,ff}.txt
⑤查看配额使用情况
查看所有可用分区的磁盘容量配额使用情况
xfs_quota -x -c 'report -a'
查看磁盘容量和文件数的报告
xfs_quota -x -c 'report -abih'