磁盘配额(Quota)是Linux系统中限制用户或组使用磁盘空间的重要功能。以下是详细的设置步骤:
grep CONFIG_QUOTA /boot/config-$(uname -r)
确保输出显示CONFIG_QUOTA=y
# 对于Debian/Ubuntu
sudo apt-get install quota
# 对于RHEL/CentOS
sudo yum install quota
df -hT
找到需要启用配额的分区,在options字段添加usrquota,grpquota
(用户和组配额):
/dev/sda1 /home ext4 defaults,usrquota,grpquota 0 2
mount -o remount /home
mount | grep home
# 应看到usrquota,grpquota选项
quotacheck -cugm /home
-c
创建配额文件-u
用户配额-g
组配额-m
强制在已挂载文件系统上运行quotaon -v /home
edquota -u username
将打开类似如下的编辑器:
Disk quotas for user username (uid 1001):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 24 10000 15000 4 0 0
blocks
: 已使用的1K块数soft
: 软限制(警告阈值)hard
: 硬限制(绝对最大值)inodes
: 文件数量限制(可选)edquota -p prototype_user user1 user2 user3
edquota -g groupname
quota -u username
quota -g groupname
repquota -a
在/etc/cron.daily/或/etc/cron.weekly/中创建脚本:
#!/bin/sh
quotacheck -avug
edquota -t
设置软限制超过后的宽限期(默认7天)
xfs_quota
命令而非标准配额工具通过以上步骤,您可以有效地管理系统中的磁盘空间使用,防止单个用户或组占用过多存储资源。