一、磁盘配额(Quota)概述
下面展示一些 内联代码片
。
在 Linux 系统中,由于是多人多任务环境,所以会有很多人共同使用一个硬盘空间的情 况发生,
如果其中少数几个使用者大量的占用硬盘空间的话,那势必会压缩其他用户的使用 权力,
因此,管理员应该适当的限制硬盘的容量给用户,以妥善分配系统资源。
需要安装quota软件包
二、开始配额
1.xfsprogs quota安装
rpm -q xfsprogs quota #查询是否有quota这个程序
yum install -y xfsprogs quota #安装quota
这就是存在
2.以支持磁盘配额的方式挂载(//如果之前挂载了,需要先解挂载,如果没有挂载需要先挂载)
https://blog.csdn.net/qq_65813835/article/details/140952468?spm=1001.2014.3001.5502
这是分区挂载教程,可以完成这个再来配额!
2.1、解除
umount /mnt/挂载目录
umount /mnt/sdb1
2.2、以支持磁盘配额的方式挂载
mount -o usrquota,grpquota /dev/磁盘 /mnt/挂载目录
2.3、加入自动挂载信息(!!!修改后需要重启!!!)
vim /etc/fstab
/dev/sdb1 /mnt/sdb1 xfs defaults,usrquota,grpquota 0 0
2.3.1、修改后需要重启
reboot
如果在挂载硬盘后,出现无法开机显示以下内容时,不必担心,遇到这种报错,一般是/etc/fstab里面的参数错误导致的,可以先检查一下文件系统,然后再检查挂载点等信息
通过硬盘名称挂载解决方法:
①首先我们输入服务器密码登录
②检查我们刚刚加入的挂载信息,先查询硬盘的名称,命令: lsblk,然后再查询/etc/fstab的配置信息,命令: cat /etc/fstab,如两边信息有不一致的地方,修改保存即可解决该问题
2.4、测试配额需要的用户
useradd 用户名
passwd zhangsan
2.5.磁盘配额
基本 最大 /挂载目录
2.5.1、xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zhangsan' /mnt/sdb1 (限制磁盘空间)
2.5.2、xfs_quota -x -c 'limit -u isoft=4 ihard=6 zhangsan' /mnt/sdb1 (限制文件数量)
-x:表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用
-c:表示直接调用管理命令
-u:指定用户账号对象
测试:!!!!!
2.5.1、给/sdb1赋权(否则切换用户测试的时候没有权限),后切换用户
chmod 777 /mnt/sdb1
su - zhangsan
使用dd超出限制大小(验证限制磁盘空间) 一次为10M 为12次(10M*12=120M!验证时候应当比配额的空间大)
dd if=/dev/zero of=/mnt/sdb1/文件 bs=10M count=12
dd:是一个设备转换和连续复制命令
“if=” 指定输入设备(或文件)
"of="指定输出设备(或文件)
"bs=" 指定读取数据块的大小
"count=”指定读取数据块的数量
/dev/zero “零"设备文件,可以无限的提供空字符。常用来生成-一个特定大小的文件
!!验证说明:如果验证超过配额大小并且报 '超出磁盘限额' ,则是验证成功!!
这里测试需要一个文件,没有可以创建一个
这里超出的原因是我设置的是最大100M,而此时是bs*count=120M,超出配额,测试成功
2.5.2、使用dd超出限制大小(验证限制文件数量)创建10个文件(10个文件>设置的6个!验证时候应当比配额的空间大)
touch {1..10}.txt
!!!验证说明:touch: 无法创建"7.txt": 超出磁盘限额
touch: 无法创建"7.txt": 超出磁盘限额
touch: 无法创建"8.txt": 超出磁盘限额
touch: 无法创建"9.txt": 超出磁盘限额
touch: 无法创建"10.txt": 超出磁盘限额,则是验证成功!!!
成功
3.7.取消磁盘限额(需要root执行命令)
xfs_quota -x -c 'disable -up' /mnt/sdb1
!若要再次设置磁盘配额,需要重新以支持磁盘配额的方式挂载!
生活不易,zzp卖艺,点个赞吧