LVM与磁盘配额
目录
- LVM概述
- 管理LVM
- LVM应用推荐步骤
- 设置磁盘配额
- CentOS7中设置磁盘配额详细步骤
LVM概述
PV(Physical Volume,物理卷)
物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录 LVM 的属性,并把存储空间分割成默认大小为 4MB 的基本单元 (PE),从而构成物理卷。
VG (Volume Group,卷组)
由一个或多个物理卷组成一个整体,即称为卷组, 在卷组中可以动态地添加或移除物理卷。
LV(Logical Volume,逻辑卷)
从卷组中分割出的一块空间,形成逻辑卷。使用 mkfs 等工具可在逻辑卷上创建文件系统。
管理LVM
常用的LVM管理命令
LVM应用推荐步骤
首先创建相应的磁盘分区,将其ID设置为8e,(8e为Linux LVM),保存退出即可
第一步:将某个磁盘或多个磁盘设置为物理卷
格式:pvcreate 设备名1[设备名2 ..........](可以使用通配符加入多个设备)
可以使用‘pvdisplay’查看一下
例如:pvcreate /dev/sd[bc]1
第二步:创建卷组,将设置的物理卷添加进去
格式:vgcreate 卷组名 物理卷名1 物理卷名2
例如:vgcreate abc /dev/sd[bc]1
配置完之后可以检查一下vgdisplay 卷组名
第三步:从卷组中创建逻辑卷
格式:lvcreate -L 容量大小 -n 逻辑卷名 卷组名
例如: lvcreate -L 20G -n abc001 abc
检查一下是否生效 lvdispkay
*再扩容
格式:lvextend -L +大小 /dev/卷组名/逻辑卷名
例如:lvextend -L +10G /dev/abc/abc001
*如果不加‘+’号就是指定容量大小
选项:-l 指定PE个数
-L 指定容量
如果未生效可以使用刷新命令
命令:xfs_growfs /dev/卷组名/逻辑卷名——刷新xfs文件系统容量
resize2fs /dev/卷组名/逻辑卷名——刷新ext4文件系统容量
*必须全部设置完之后再格式化磁盘,最后按照挂载命令到相应目录进行查看读写执行
设置磁盘配额
当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件, 同时也可能会出现服务程序崩溃、系统无法启动等故障。
为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间文件、数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性。在CentOS系统中,不同的文件系统使用不同磁盘配额配置管理工具。 例如,XFS文件系统通过xfs_quota工具进行管理; EXT3/4 文件系统通过 quota 工具进行管理。
实现磁盘限额的条件
需要Linux内核支持
安装xfsprogs与quota软件包
Linux 磁盘限额的特点
作用范围∶ 针对指定的文件系统(分区)
限制对象∶ 用户帐号、组帐号
限制类型∶ 磁盘容量、文件数量
限制方法∶ 软限制、硬限制(达到软限制系统会发出一定的预警提示,硬限制直接中断执行)
配置思路:
以支持配额功能的方式挂载文件系统
编辑用户和组账号的配额设置
验证磁盘配额功能
查看磁盘配额使用情况
CentOS7中设置磁盘配额详细步骤
1.检查是否已安装xfsprogs和xfs_quota软件包,如果没有可使用一下两者方法安装一下
安装:rpm -q xfsprogs quota
yum install -y xfsprogs quota
2.以支持配额功能的方式挂载文件系统
格式:mount -o usrquota,grpquota 存储设备 挂载点目录
例如: mount -o usrquota,grpquota /dev/mapper/abc-abc001 /opt
添加挂载参数“usrquota, grpquota”用于增加对用户、组配额功能的支持
或者添加到自动挂载
例如:vim /etc/fstab
/dev/mapper/abc-abc001 /opt xfs defaults,usrquota,grpquota 0 0
可以查看 到已经挂载完成
但是我们使用mount 直接查看所有挂载目录的参数,可以虽然挂载了但不支持配额,需要重启一下才能生效
所以这里建议使用自动挂载,因为mount挂载是临时的重启就会失效
查看参数配置生效
3.编辑用户和组账号的配额设置
例如:设置名为EEE的用户
xfs_quota -xc 'limit -u bsoft=80M bhard=100M isoft=8 ihard=10 EEE'/opt/
*/opt为指定磁盘配额的分区
常用选项
-x∶ 表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用
-c∶ 表示直接调用管理命令
-u∶ 指定用户账号对象
-g∶ 指定组账号对象
bsoft∶ 设置磁盘容量的软限制数值(默认单位为 KB)
bhard∶ 设置磁盘容量的硬限制数值 (默认单位为 KB)
isoft∶设置磁盘文件数的软限制数值
ihard∶设置磁盘文件数的硬限制数值
仅限制磁盘容量
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M EEE' /opt/
仅限制文件数
xfs_quota-x -c 'limit -u isoft=4 ihard=5 EEE' /opt/
查看 EEE 磁盘容量限制
xfs_quota -c 'quota -uv EEE' /opt/
查看EEE 文件数限制
xfs_quota -c 'quota -iuv EEE' /opt/
这里将磁盘容量限制和文件数限制都进行了配置,并且可以查看一下是否配置完成
4.验证磁盘配额功能
chmod 777 /opt #要给目录相应普通用户的权限
Su EEE #需要进入EEE限制配额的用户
cd /opt #进入磁盘配额的目录
给予文件相应的权限准备进行测试
验证磁盘容量超限
例如:dd if=/dev/zero of=/opt/ddtest.txt bs=10M count=12
dd 命令是一个设备转换和连续复制命令
"if=" 指定输入设备(或文件)
"of="指定输出设备(或文件)
"bs="指定读取数据块的大小,一次输出多大
"count=" 指定读取数据块的数量,输出多少次
/dev/zero"零"设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件。
可以看出写入120M的字符但是因为超出了限额只写进去了100M其余已经无法写入
验证磁盘文件数超限,要清空之前验证的磁盘容量,不然限制满了无法加载
例如:touch {a..z}.txt
因为限制了文件数量最多为10所以无法再创建第11和12文件
5、查看配额使用情况,在root用户下进行
查看所有可用分区的磁盘容量配额使用情况 xfs_quota -x -c 'report -a'
查看磁盘容量和文件数的报告 xfs_quota -x -c 'report -abih'
磁盘容量限制后查看配额情况
文件数限制后查看配额情况