首先确保文件系统启用配额支持,在/etc/fstab中添加usrquota或grpquota选项,重新挂载后使用quotacheck生成配额文件,再通过quotaon启用服务;接着用edquota设置用户磁盘配额,修改软硬限制及宽限期,最后通过quota和repquota命令查看配额使用情况,确保限制生效。

在Linux系统中,磁盘配额(Disk Quota)可以用来限制用户或用户组对磁盘空间的使用,防止个别用户占用过多存储资源。通过
edquota命令,管理员可以方便地设置和管理用户磁盘配额。以下是完整操作流程。
启用文件系统配额支持
要使用磁盘配额功能,首先需要确保文件系统已启用配额支持。通常在
/etc/fstab中为分区挂载选项添加
usrquota(用户配额)或
grpquota(组配额)。 示例:
编辑
/etc/fstab,修改根分区或指定分区的挂载选项:
/dev/sda1 / ext4 defaults,usrquota 0 1
保存后重新挂载文件系统:
mount -o remount /
创建配额数据库文件
使用
quotacheck命令生成配额数据库文件(
aquota.user和
aquota.group):
quotacheck -cum /
参数说明:
- -c:创建新的配额文件
- -u:检查用户配额
- -m:不重新挂载文件系统
完成后会在根目录生成
aquota.user文件。
启用配额服务:
quotaon /
使用edquota设置用户配额
使用
edquota命令编辑用户配额。例如为用户
alice设置限制:
edquota alice
系统默认使用vi编辑器打开配额配置,内容类似:
Disk quotas for user alice (uid 1001):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 40000 50000 60000 2000 2500 3000
字段说明:
- blocks:已使用的块数(1 block = 1KB)
- soft:软限制,用户可临时超过,但需在宽限期内恢复
- hard:硬限制,绝对不可超过
- inodes:文件数量限制,防止大量小文件占满inode
修改
soft和
hard值以设置空间限制。例如设置最大磁盘使用为100MB:
将
hard块数设为102400(即100×1024 KB)
设置默认宽限期
用户超过软限制后,系统允许其在宽限期内恢复。使用以下命令设置时间:
edquota -t
可设置块和inode的宽限期,例如7天。
查看和验证配额
查看某用户配额情况:
quota alice
查看所有用户配额使用情况:
repquota /
测试时可让用户创建大文件,观察是否触发配额限制(写入失败或提示磁盘空间不足)。
基本上就这些。只要文件系统支持,配额启用后会自动生效,对用户透明。定期使用
repquota检查使用情况,有助于系统维护。










