首先准备一个xfs文件系统的 卷 || 分区
可以是逻辑卷 ,也可以是普通卷,等等……但是他们的文件格式都要是xfs格式
我这里选择的是逻辑卷,普通卷也是一样的道理
开始前要有两个软件包需要安装 如果已安装直接看下一步
Linux:rpm查询安装 && yum安装
yum -y install quota
yum -y install xfsprogs
我这里准备了一块逻辑硬盘
先将他格式化成xfs格式的逻辑卷
mkfs -t xfs /dev/aaa/qwe
# mkfs -t 文件格式 卷路径
成功格式化成xfs格式
允许磁盘配额格式挂载
usrquota、grpquota 添加支持用户配额 组配额
使用命令
mount -o usrquota,grpquota /dev/aaa/qwe /tarro/
# mount -o usrquota,grpquota 挂载源 挂载目标点
上图 后边出现 usrquota,grpquota 就是可以进行配额
上图 后面为 : noquota 即是不能配置 你 如果在这样的情况下去配额 就会出现函数错误的提示
这个就是临时配额挂载
——————————————————————
如果想开机自动 也就是 设置永久 挂载同时还开启配额权限就去配置
vi /etc/fstab
这样保存退出后重新 他就会自动挂载这个卷 并且可以对其配额
重启后 会自动挂载 后面可以看到有usrquota 和 grpquota
对用户进行配额
-u、限制用户
-g、限制组
-x、专家模式(非交互模式)
-c 直接调用管理命令‘’部分bsoft、容量软限制
bhard、容量硬限制
isoft、文件数软限制
ihard 文件数硬限制
我们开启之前创建3个用户和1组
创建 test1 test2 test3 三个用户 和 test_23 的组 把test2 和 test3 放进去
groupadd test_23
useradd test1
useradd -g test_23 test2useradd -g test_23 test3
使用
xfs_quota -x -c 'limit -u bsoft=10M bhard=20M isoft=10 ihard=20 test1' /tarro/
#
上面的意思的 在 /tarro这个目录下 test1 用户
容量软限额 10M 容量硬限额为20M
文件数量软限额为10个 硬限额为20个
软限额的意思就是你超过10M 可以继续放但是7天后会删除 但是你再怎么放都不能超过20M如果超过20M 就报错 超过硬限额之后一点都放不进去 文件数量限额也是同理
切换到test1用户下
我们一般使用的root用户 可以看到其他人那个权限没有写入权限 为了方便我们可以直接给他777方便实验
如果你要查看配额设置的话可以使用
xfs_quota -c 'quota -bi -uv test1' /tarro/
# xfs_quota -c 'quota -bi -uv 用户' 目录
我软配额是10 那我们创建一个11M的文件试试
dd if=/dev/zero of=/tarro/text1 bs=1M count=11
现在有11M了 我们再用test1用户放一个10M的文件 这样就有21M 刚好超出硬配额1M
可以见有显示超出1M的配额他也报了错
现在把test1的文件全删掉 然后创建文件个数看另外一个数量配额
刚刚数量配额软配额为10个硬配额是20个所以超出10个还可以继续写入但是数量大于20以后就写不进去了
可以看到写入了11个超出了软配额但是并没有提示什么 还能接着往里写 现在还可以写9个 就到20硬配额了
但是我们再往里创建10个
可以看到刚刚好超出1个也成功的提示了超出1个
组配额
使用
xfs_quota -x -c 'limit -g bsoft=10M bhard=20M isoft=10 ihard=20 test_23' /tarro/
xfs_quota -x -c 'limit -g bsoft=10M bhard=20M isoft=10 ihard=20 用户组' 卷路径
上面的软配额和 硬配额和用户的都是一样的
但是不同的是 组 如果对用户进行配额 他会单独的对用户生效
现在对组设置 他是 对组里全部人生效 现在test_23组里包含了test2 和test3
如果test1 往里放了15M 那 组里的其他人 只能放剩余5M
如果test2 往里放了6个文件 那组里的其他人最多还能放14个文件
他对组配置配额是组用户放里边的 全部加起来的
查看组配额信息
xfs_quota -c 'quota -bi -gv test_23' /tarro/
xfs_quota -c 'quota -bi -gv 组名' /路径容量 软配额 10M 硬配额 20M 数量软配额10个 硬配额20个
现在进入test2 放 11M的文件
现在组内只剩9M的空间 所以同为组内的用户test3只能放9M 但是我么放一下10M的文件
可以看到超出1M 硬配额就提示了
现在全全删除一下 使用 test3 创建 9个文件
现在使用test3 创建了9个 那组内所剩11个
再使用test2床架 12个 会报错 剩余1个写入不进去
剩余11个 写入12个有一个没写进去 配额成功
插看配额信息
使用
查看用户配额
xfs_quota -c 'quota -bi -uv test1' /tarro/
xfs_quota -c 'quota -bi -uv 用户' 路径
查看组配额
xfs_quota -c 'quota -bi -gv test_23' /tarro/
xfs_quota -c 'quota -bi -gv 组名' 路径