在 Linux 上设置用户和组磁盘配额的 5 个步骤
【摘要】 在 Linux 上,您可以使用以下方法之一设置磁盘配额:
文件系统基本磁盘配额分配
基于用户或组的磁盘配额分配
在 Linux 上,您可以使用以下方法之一设置磁盘配额:
- 文件系统基本磁盘配额分配
- 基于用户或组的磁盘配额分配
在基于用户或组的配额上,需要考虑以下三个重要因素:
- Hard limit - 例如,如果您指定 2GB 作为硬限制,用户将无法在 2GB 之后创建新文件
- Soft limit - 例如,如果您指定 1GB 作为软限制,一旦达到 1GB 限制,用户将收到“磁盘配额超出”警告消息。但是,他们仍然可以创建新文件,直到达到硬限制
- Grace Period – 例如,如果您指定 10 天作为宽限期,则在用户达到硬限制后,他们将被允许额外 10 天来创建新文件。在那个时间段内,他们应该尝试回到配额限制。
1.在文件系统上启用配额检查
首先,您应该指定允许哪些文件系统进行配额检查。
修改 /etc/fstab,并将关键字 usrquota 和 grpquota 添加到您要监视的相应文件系统中。
以下示例表明在 /home 文件系统上启用了用户和组配额检查
# cat /etc/fstab
LABEL=/home /home ext2 defaults,usrquota,grpquota 1 2
完成上述更改后重新启动服务器。
2. 使用 quotacheck 对 Linux 文件系统进行初始配额检查
在文件系统上启用磁盘配额检查后,首先收集所有配额信息,如下所示。
# quotacheck -avug
quotacheck: Scanning /dev/sda3 [/home] done
quotacheck: Checked 5182 directories and 31566 files
quotacheck: Old file not found.
quotacheck: Old file not found.
在上面的命令中:
- a: 检查所有启用配额的文件系统
- v:详细模式
- u:检查用户磁盘配额
- g:检查组磁盘配额
上述命令将在文件系统目录下为用户和组创建一个配额文件,如下所示。
# ls -l /home/
-rw------- 1 root root 11264 Jun 21 14:49 aquota.user
-rw------- 1 root root 11264 Jun 21 14:49 aquota.group
3. 使用 edquota 命令为用户分配磁盘配额
使用如下所示的 edquota 命令来编辑特定用户的配额信息。
例如,要更改用户“ramesh”的磁盘配额,请使用 edquota 命令,该命令将在编辑器中打开软硬限制值,如下所示。
# edquota ramesh
Disk quotas for user ramesh (uid 500):
Filesystem blocks soft hard inodes soft hard
/dev/sda3 1419352 0 0 1686 0 0
一旦 edquota 命令在编辑器中打开特定用户的配额设置,您可以设置以下限制:
- 特定用户的磁盘配额大小的软硬限制。
- 特定用户允许的 inode 总数的软硬限制。
4. 使用 repquota 报告用户和组的磁盘配额使用情况
使用如下所示的 repquota 命令报告用户和组的磁盘配额使用情况。
# repquota /home
*** Report for user quotas on device /dev/sda3
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 566488 0 0 5401 0 0
nobody -- 1448 0 0 30 0 0
ramesh -- 1419352 0 0 1686 0 0
john -- 26604 0 0 172 0 0
5. 将quotacheck添加到每日cron作业
将 quotacheck 添加到每日 cron 作业中。在 /etc/cron.daily 目录下创建一个如下所示的 quotacheck 文件,它将每天运行 quotacheck 命令。这会将 quotacheck 命令的输出发送到根电子邮件地址。
# cat /etc/cron.daily/quotacheck
quotacheck -avug
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)