首先启用文件系统配额支持,编辑/etc/fstab添加usrquota和grpquota选项,并重新挂载分区;接着运行quotacheck -cum /home生成aquota.user和aquota.group配额文件,然后执行quotaon /home启动配额服务;使用edquota username设置用户磁盘限制,修改block的soft和hard值(单位KB),例如设为90000和100000表示100MB硬限制;通过edquota -t设置宽限期,如Block grace period为7days;最后用quota username查看单个用户配额使用情况,repquota /home查看所有用户配额报告,确保策略生效。
在linux中设置磁盘配额可以有效防止某个用户或组占用过多磁盘空间,保障系统资源合理分配。通过
edquota
命令,管理员可以方便地为用户或组设置空间限制。以下是完整操作流程。
启用文件系统配额支持
磁盘配额依赖于文件系统级别的支持,通常ext4、xfs等主流文件系统都支持配额功能。需在挂载时启用配额选项。
编辑
/etc/fstab
文件,为需要启用配额的分区添加挂载选项:
- 对于用户配额:
usrquota
- 对于组配额:
grpquota
例如:
/dev/sda1 /home ext4 defaults,usrquota,grpquota 0 2
修改后重新挂载分区:
mount -o remount /home
创建配额数据库文件
系统使用
aquota.user
和
aquota.group
作为配额数据库。需使用
quotacheck
命令初始化:
quotacheck -cum /home
-
-c
:创建数据库
-
-u
:检查用户配额
-
-m
:不挂载时也检查
执行后会在
/home
目录生成
aquota.user
文件。启动配额服务:
quotaon /home
使用edquota设置用户空间限制
edquota
命令用于编辑用户或组的配额限制。
编辑某个用户的配额:
edquota username
会打开默认编辑器,显示如下内容:
Inode Block soft hard soft hard 0 0 0 0
修改
blocks
对应的
soft
和
hard
值(单位为KB):
- soft:软限制,用户可短暂超过,但有宽限期
- hard:硬限制,绝对不可超过
例如设置用户最多使用100MB空间:
soft hard 90000 100000
设置宽限期(grace period)
当用户超过软限制时,可设置宽限期(如7天),超期后必须清理文件。
运行:
edquota -t
设置
Block grace period
为7天:
Block grace period: 7days
查看和验证配额
查看某用户当前使用情况:
quota username
查看所有用户配额报告:
repquota /home
可确认各用户使用量、限制及是否超限。
基本上就这些。只要文件系统支持并正确启用配额,用
edquota
设置限制并不复杂,但容易忽略
quotacheck
和
quotaon
步骤。建议定期检查配额状态,确保策略生效。