下一页 上一页 目录

4. 配额设置:工具

此操作通过 edquota 命令执行(详情请参考 `man edquota`)。

4.1 为特定用户分配配额

这里有一个例子。我的系统上有一个登录 ID 为 bob 的用户。命令 “edquota -u bob” 会将我带入 vi 编辑器(或 $EDITOR 环境变量中指定的编辑器),以编辑已启用配额的每个分区上用户 bob 的配额。


Quotas for user bob: 
/dev/hda3: blocks in use: 2594, limits (soft = 5000, hard = 6500) 
         inodes in use: 356, limits (soft = 1000, hard = 1500)

“已用块” 是用户在分区上已消耗的块总数(以千字节为单位)。

“已用 inode” 是用户在分区上已消耗的 inode 总数。

4.2 为特定组分配配额

现在我的系统上有一个名为 games 的组。“edquota -g games” 再次将我带入 vi 编辑器,以编辑组 games 的配额。


        Quotas for group games: 
        /dev/hda4: blocks in use: 5799, limits (soft = 8000, hard = 10000) 
                inodes in use: 1454, limits (soft = 3000, hard = 4000)

4.3 为多个具有相同值的用户分配配额

要快速为我系统上的 100 个用户设置与用户 bob 相同值的配额,我首先需要手动编辑 bob 的配额信息,然后执行


edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd`

假设您正在使用 csh,并且您的用户 UID 从 500 开始分配。

除了 edquota 之外,还有 3 个您应该熟悉的术语:软限制、硬限制和宽限期。

4.4 软限制

“_软限制_” 指示配额用户在分区上可以使用的最大磁盘空间量。当与宽限期结合使用时,它充当警戒线,当配额用户超过此线时,系统会发出警告,提示其即将违反配额。

4.5 硬限制

硬限制仅在设置宽限期时才起作用。它指定磁盘使用的绝对限制,配额用户不能超过其硬限制。

4.6 宽限期

宽限期通过 “edquota -t” 命令执行,是在启用配额的文件系统上强制执行软限制之前的时间限制。可以使用的时间单位包括 sec(秒)、min(分钟)、hour(小时)、day(天)、week(周)和 month(月)。以下是您使用 “edquota -t” 命令时将看到的:


Time units may be: days, hours, minutes, or seconds 
Grace period before enforcing soft limits for users: 
/dev/hda2: block grace period: 0 days, file grace period: 0 days 

将 0 days 部分更改为您认为合理的任何时间长度。我个人会选择 7 天(或 1 周)。


下一页 上一页 目录