quota主要用于Linux系统的磁盘限额,可以做到针对单个用户、用户组进行磁盘使用量的限制,以下主要进行quota的配置及使用详解。
环境介绍:
Distributor ID: Ubuntu
Description: Ubuntu 18.04.5 LTS
Release: 18.04
Codename: bionic
一、安装
apt-get install quota quotatool
二、磁盘挂载配置
主要是在文件/etc/fstab中磁盘挂载参数中添加usrquota和grpquota参数:

配置修改完毕之后,建议重启设备。
三、quota文件生成
重新连入设备,执行如下命令在上述挂载的磁盘的顶级路径下生成aquota.user和aquota.group文件:
quotacheck -cugm /
quotacheck用法:

- c:创建新的quota文件;
- u:检查用户文件aquota.user;
- g:检查组文件aquota.group;
- m:不重复挂载文件系统;
- 因为示例是直接使用的根路径挂载的磁盘,所以上述路径使用的是根路径;
可以看到在/路径下生成的两个文件:

四、给用户配额

-
文件系统(filesystem):说明该限制值是针对哪个文件系统(或partition);
-
磁盘容量(blocks):这个数值是quota自己算出来的,单位为KB;
-
soft:磁盘容量block的soft限制值,单位为KB;
-
hard:block的hard限制值,单位KB;
-
文件数量inodes:这是quota自己算出来的,单位为个数;
-
soft:inode的soft限制值;当值为0时,表示没有soft限制;
-
hard:inode的hard限制值。当值为0时,表示没有hard限制;
1、配额
edauota -u testuser
上图中testuser用户配额:
- 软限制:10M
- 硬限制:15M
2、宽限期
edauota -t

宽限期默认是7天,将block和inode宽限期修改为12天。
3、查看限额情况
quota -u testuser

可以看到,用户初始目录中:
- 占用block:32
- 占用inode:6
4、测试
- 放入5M文件再查看限额情况
dd if=/dev/zero of=test_01 bs=1M count=5

可以看到block占用数此时为:5152,inode占用数为7。
- 再次放入第二个文件test_02,20M,再查看配额情况:
dd if=/dev/zero of=test_01 bs=1M count=20

可以看到block占用数此时为:15000,inode占用数为8。查看test_02文件大小并没有20M,这就是由于已经达到testuser用户的使用上限,其余部分被限制。同时可以发现触发了宽限期;
- 由于我们并没有对inode进行限制,此时仍然可以创建空文件:

- 我们删除刚才创建的test_02发现宽限期又恢复正常。

如果需要对文件数进行限制可在edquota中对inode项进行配置。
五、quota常用命令
1、命令行配置
语法:setquota user blocks限制 inode限制 文件系统
示例:将testuser限制为:
- block软限制:15000
- block硬限制:20000
- inode软限制:15
- inode硬限制:20
setquota testuser 15000 20000 15 20 /dev/nvme0n1p1

2、复制磁盘配额给其他用户
- 检查用户testuser01配额情况:

- 复制testuser配额给testuser01:
edquota -p testuser -u testuser01

3. 对比testuser和testuser01两个用户配额情况:
repquota -a

3、关掉磁盘配额
quotaoff -a
本文详细介绍了如何在Ubuntu 18.04系统中配置和使用quota进行磁盘限额管理,包括安装quota工具、修改挂载配置、生成quota文件、设置用户配额、宽限期设定以及查看和调整配额。通过示例展示了quota在限制用户磁盘使用量和文件数量方面的应用,帮助系统管理员有效控制资源分配。
971

被折叠的 条评论
为什么被折叠?



