首先启用文件系统配额支持,编辑/etc/fstab添加usrquota,grpquota选项,重新挂载后用quotacheck创建配额文件;接着使用edquota设置用户或组的软硬限制;然后通过quotaon启用配额;最后用repquota /home -h生成易读的配额使用报告,并可结合cron定期执行生成日志。

在 Linux 系统中,磁盘配额(Disk Quota)用于限制用户或用户组对磁盘空间的使用。启用配额后,可以使用 repquota 命令生成配额报告,查看当前用户和组的使用情况。下面介绍如何配置磁盘配额并生成 repquota 报告。
启用文件系统配额支持
要使用配额功能,首先要确保文件系统支持配额,并在挂载时启用相关选项。
1. 编辑 /etc/fstab 文件,为需要启用配额的分区添加配额选项:例如,对 /home 分区启用用户和组配额:
/dev/sda3 /home ext4 defaults,usrquota,grpquota 0 22. 重新挂载文件系统以应用更改:
mount -o remount /home3. 创建配额数据库文件(通常在挂载点根目录下):
quotacheck -cum /home
参数说明:
- -c:创建新的配额文件
- -u:检查用户配额
- -m:跳过挂载检查
设置用户和组配额限制
使用 edquota 命令设置用户或组的软限制和硬限制。
1. 为用户设置配额:edquota -u username2. 为组设置配额:
edquota -g groupname
在编辑器中设置块限制(block quota)和 inode 限制(inode quota):
- soft:软限制(超过后可在宽限期内调整)
- hard:硬限制(绝对上限)
- grace:宽限期(默认 7 天)
启动配额检查
配置完成后,启用配额:
quotaon /home
确认配额已启用:
quotaon -p /home
使用 repquota 生成报告
repquota 命令用于生成配额使用情况报告。
1. 查看所有启用配额的文件系统:repquota -a2. 查看特定文件系统(如 /home)的报告:
repquota /home3. 显示更易读的格式(带单位):
repquota -h /home
输出示例说明:
- blocks:当前使用的块数(KB)
- soft/hard:软/硬块限制
- inodes:已用 inode 数
- grace:宽限期(如已超限)
如果用户尚未产生文件,可能不会出现在报告中。可让其创建测试文件后再次检查。
自动化报告生成
可将 repquota 命令加入脚本,定期生成配额报告。
#!/bin/bash repquota -h /home > /var/log/quota_report.txt echo "配额报告已生成: $(date)" >> /var/log/quota_report.txt
结合 cron 定期执行:
0 2 * * * /root/scripts/generate_quota_report.sh
基本上就这些。配额配置完成后,repquota 是查看使用情况最直接的方式。确保配额服务持续开启(可加入开机启动),并定期检查报告,及时发现异常占用。










