中标麒麟系统启用磁盘配额前须确认文件系统支持并挂载时启用usrquota/grpquota选项,修改/etc/fstab后remount,再运行quotacheck -cugm /生成配额数据库,最后启动quotaon服务并验证。

中标麒麟系统启用磁盘配额前的必要准备
在中标麒麟Linux中为用户或组设置磁盘使用上限,必须先确认文件系统支持配额且已挂载时启用对应选项,否则后续所有配置均无效。
执行 mount | grep " / " 查看根分区挂载参数,确认输出中包含 usrquota 和/或 grpquota;若无,则需修改 /etc/fstab 并重新挂载。
编辑 /etc/fstab,在目标分区(如 /dev/sda3)的挂载选项字段末尾添加 ,usrquota,grpquota,注意用英文逗号分隔,【不可遗漏已有选项如 defaults 或 rw】。
保存后执行 mount -o remount / 使新选项生效。此步失败常见于文件系统正被占用或 fstab 格式错误,可先用 mount -n -o remount,usrquota,grpquota /dev/sda3 / 绕过检查临时验证。
生成并激活配额数据库文件
配额功能依赖两个二进制数据库文件:aquota.user 和 aquota.group,它们必须位于文件系统根目录下,且不能手动创建。
切换到目标文件系统根目录,例如:cd /。
运行 quotacheck -cugm /:其中 -c 创建新数据库、-u 启用用户配额、-g 启用组配额、-m 即使文件系统未标记 quota 也强制扫描(仅用于首次初始化)。
该命令会扫描所有已存在文件并统计当前用量,生成 /aquota.user 和 /aquota.group;若提示 “No such process”,说明内核未加载 quota 模块,需先执行 modprobe quota_v2。
为指定用户设置硬限制与软限制
方法一:使用 setquota 命令一次性设定
setquota -u username 1048576 2097152 0 0 / 表示为用户 username 设置:软限制 1GB、硬限制 2GB 的磁盘空间,0 个文件数限制;单位为 KB,不可用 M/G 缩写。
方法二:使用 edquota 交互式编辑
执行 edquota -u username,会打开 vi 编辑器显示当前配额表;修改 blocks 行的 soft 和 hard 列数值(单位 KB),保存退出即生效;【修改后无需重启服务,但需确保 quota 服务已启用】。
方法三:批量设置多个用户
先用 edquota -p template_user user1 user2 user3 复制模板用户的配额规则,避免逐个输入;该操作不校验目标用户是否存在,错误用户名将被静默跳过。
启动配额服务并验证运行状态
中标麒麟 V7 及以上版本使用 systemd 管理 quota 服务,执行 systemctl start quotaon 启动即时配额检查。
设为开机自启:systemctl enable quotaon。
运行 quotaon -v / 查看各分区配额是否已激活,正常输出应含 “user quota on /dev/sda3 [/] on” 字样;若显示 “not mounted with quotas enabled”,说明 fstab 中未正确添加 usrquota/grpquota 选项。
对用户 testuser 执行 quota testuser,可立即看到其当前用量与限制值;若返回 “no quota” 则表示该用户尚未被分配任何配额规则。
强制检查并更新配额统计
第一步:执行 quotacheck -avug 强制全系统扫描并更新所有已启用配额的分区数据库。
第二步:确认扫描完成无报错后,运行 quotaoff / && quotaon / 重新加载配额数据,确保新统计值生效。
第三步:用 repquota -a 查看所有用户配额汇总,重点关注 “-” 标记的超限用户;该命令输出中 block 列的 third 字段为硬限制,second 为软限制,first 为当前已用值。











