本章给大家介绍基于LVM逻辑卷的磁盘配额
磁盘配额概述
1、需要磁盘限额的条件
(1)、需要Linux内核支持
(2)、安装xfsprogs与quota软件包
·
Linux磁盘配额的特点
作为范围:针对指定的文件系统
限制对象:用户账号、组账号
限制类型:磁盘容量、文件数量
限制方法:软限制、硬限制
·
磁盘配额的过程
以支持配额功能的方式挂载文件系统——>编辑用户和组账号的配额设置
——>验证磁盘配额功能——>查看磁盘配额使用情况
·
启用磁盘配额支持
1.启用文件系统的配额支持:
添加usrquota、grpquota挂载参数
·
磁盘配额管理
编辑用户和组账号的配额设置
1、使用xfs_quota命令编辑配额设置
常用选项
-u:用户
-g:组
-x:使用专家模式
-c:使用命令执行
限制字段
- bsoft:软限制((≤硬限制,b表示块,可以超出最长时间为7天))
- bhard:硬限制((不可超出))
- isoft:软限制((i为节点))
- -ishard:硬限制
磁盘配额验证功能
1、切换到设置配额的分区
2、创建指定数量的文件(使用touch命令或者cp命令)
3、创建指定容量的文件(使用dd命令或者co命令)
查看配额的使用情况
xfs_quoota -x -c ‘report选项’ 挂载点
report常用选项
a:查看所有
b:输出报告
i:查看节点信息
u:用户
g:组
·
那么下面就开始进行磁盘配额的实际操作
磁盘配额是针对容量和节点进行限制
进行磁盘配额之前要看你内核是否支持功能,相关的软件包是否安装:
输入rpm -qa | grpe xfsprogs过滤查看是否以安装改软件包
rpm -qa | grep xfsprogs
输入rpm -ql xfsprogs | grep quota过滤查看是否有该组件
rpm -ql xfsprogs | grep quota
如果没有的话我们就需要用yum仓库安装。
·
在做磁盘配额之前不管虚拟机里安装的是6.0版本还是7.0版本的都需要先把增强型安全功能关闭,输入setenforce 0关闭增强型安全功能,如果不关闭的话就会出现磁盘配额的配置文件是无法写入的。
进行永久性的挂载
输入vim /etc/fstab,敲击回车,举例用我们mbox02进行永久性挂载
光标移动到mbox02的defaults处按a在光标所在的后部输入:usrquota,grpquota,输入wq保存并退出
但是此时还是没有生效,输入mount查看
接下来要重新挂载让其生效:
输入umount /opt/mbox2,进行重新挂载
输入mount -a进行挂载
输入mount查看挂载情况
接下来要设置磁盘配额
输入
xfs _quota -x -c 'limit -u bsoft=50M bhard=80M isoft=4 ihard=6 zhangsan' /opt/mbox2
其中:
xfs_quota:软件包
-x:专家模式
-c:命令
limit:上限限制
bsoft=50M bhard=80M:容量大小限制
isoft=4 ihard=6:节点设置
zhangsan:用户
接下来进行验证
这是可以看到我们当前用户是管理员身份,但是我们限制的用户是zhangsan,这时候就需要切换用户,输入su zhangsan
这时候输入ls -l /opt/查看zhangsan是否有读写权限
我们可以退回到管理员身份。
输入chown 777 /opt/mabox2/ 修改权限
chown 777 /opt/mabox2/
输入ls -l /opt/查看权限是否修改成功
接下来切换到zhangsan用户进行操作
输入:su zhangsan
输入:cd /opt/mbox2/
输入ls 查看目录,此时目录是空的
输入touch test{1..4}.txt
输入ls查看到目录下有4个文件
输入touch test5.txt
输入touch tset6.txt,这时候如果再输入touch test7.txt的肯定是会超出磁盘限额
因为我们设置的磁盘节点是6,在创建第7个文件时肯定会超出限额,这时候就说明节点设置成功
这是节点超出限额了,但是容量没有超出限额,但是我们也不可以往里面的文件写内容
输入rm -rf 删除刚才的文件
接下来进行容量的验证
输入
dd if=/dev/zero of=/opt/mbox2/test01.txt bs=1M count=50
其中
dd:验型形复制
if:从文件中拿去内容
zero:用来做实验的文件
of:输出
bs:单次获取内容的大小
conut:获取次数
再输入ls -lh查看当前文件容量
这时候已经有50M了,我们再获取50M,方法一样,看看可不可以完全获取成功,这时候可以看到至读取了30M内容。
但是这个时候节点上限是6,再创建一个文件看看还能不能创建成功,输入touch test03.txt。
由此实验可以得出容量和节点两者如果有一个超出限额,另外一项就无法写入。
来源:https://blog.51cto.com/14307755/2431821