Sys*_*oet 2 xfs disk-space-utilization
我们需要为所有用户设置默认配额。从我所看到的man 8 xfs_quota
,您只能为单个用户设置配额。我需要设置一个适用于所有人的配额,而不必枚举每个用户。
如果您确实阅读了手册页,则不确定您是如何错过这一点的。
limit [ -gpu ] bsoft=N | bhard=N | isoft=N | ihard=N | rtbsoft=N | rtb?
hard=N -d | id | name
Set quota block limits (bhard/bsoft), inode count limits
(ihard/isoft) and/or realtime block limits (rtbhard/rtbsoft).
The -d option (defaults) can be used to set the default value
that will be used, otherwise a specific user/group/project name
or numeric identifier must be specified.
Run Code Online (Sandbox Code Playgroud)
因此,您将设置一个默认配额,例如:
# xfs_quota -x -c 'limit bsoft=1g bhard=1g -d' /home
Run Code Online (Sandbox Code Playgroud)
我有一些东西要在这里补充,我希望能帮助其他有同样问题的人。
我有一个安装了 uquota 的 XFS 文件系统。我有多个用户使用我想要限制的文件系统,还有一个我不想限制的超级用户(我们称她为“lisa”)。我这里也有一个 postgres 数据库(归用户“postgres”所有),我不想限制它。
我发现 xfs_quota 手册页在其对默认限制实际工作方式的描述中有些缺乏,并且在其他任何地方都找不到任何资源,所以这就是我所发现的。
设置默认限制...
xfs_quota -x -c 'limits bsoft=45G bhard=50g -d' /myxfs
Run Code Online (Sandbox Code Playgroud)
了不起。所有配额都已设置,任何登录的新用户都将自动收到默认限制。现在,我将通过将超级用户和 postgres 的限制显式设置为 0 来从默认值中排除它们。
xfs_quota -x -c 'limits bsoft=0 bhard=0 lisa' /myxfs
xfs_quota -x -c 'limits bsoft=0 bhard=0 postgres' /myxfs
Run Code Online (Sandbox Code Playgroud)
现在我会得到一份报告......
xfs_quota -x -c 'report -h' /myxfs
User quota on /myxfs (/dev/sdc1)
Blocks
User ID Used Soft Hard Warn/Grace
---------- ---------------------------------
root 22.3G 45G 50G 00 [------]
postgres 59.1G 0 0 00 [------]
lisa 13.4T 0 0 00 [------]
Run Code Online (Sandbox Code Playgroud)
看起来很棒!对?错误的!尽管有这个报告,但 postgres 和 lisa 仍然受到限制,并且仍在使用默认限制。一旦我尝试以任一用户身份编写任何内容并再次运行报告...
Blocks
User ID Used Soft Hard Warn/Grace
---------- ---------------------------------
root 22.3G 45G 50G 00 [------]
postgres 59.1G 45G 50G 00 [------]
lisa 13.4T 45G 50G 00 [------]
Run Code Online (Sandbox Code Playgroud)
设置已恢复!
为了解决这个问题,您必须将您不希望限制为非零值的用户限制设置为非零值。所以把它设置得非常高。我将我的设置为PB。
Blocks
User ID Used Soft Hard Warn/Grace
---------- ---------------------------------
root 22.3G 45G 50G 00 [------]
postgres 59.1G 1000T 1000T 00 [------]
lisa 13.4T 1000T 1000T 00 [------]
Run Code Online (Sandbox Code Playgroud)
这可以防止我的超级用户和 postgres 数据库受到限制,同时保持所有其他用户的“默认”50G 限制。
有几点需要注意:
希望这可以帮助某人。
编辑:您可以通过指定上限来显示更多 UID。例如
xfs_quota -x -c 'report -U 50000 -h' /storage/1
User quota on /myxfs (/dev/sdc1)
Blocks
User ID Used Soft Hard Warn/Grace
---------- ---------------------------------
#0 22.3G 50G 75G 00 [------]
#26 59.1G 1000T 1000T 00 [------]
#1000 13.4T 1000T 1000T 00 [------]
#2615 55.9G 0 0 00 [------]
#2705 207.4M 0 0 00 [------]
#2707 168.1G 50G 75G 00 [-none-]
#2718 178.5M 50G 75G 00 [------]
#16661 245.9M 0 0 00 [------]
#18806 0 50G 75G 00 [------]
#24403 2.5M 0 0 00 [------]
#24583 100K 50G 75G 00 [------]
#26153 4.1G 50G 75G 00 [------]
#26618 40K 0 0 00 [------]
#26765 320K 50G 75G 00 [------]
#27175 15.1G 50G 75G 00 [------]
#27189 2.5M 50G 75G 00 [------]
Run Code Online (Sandbox Code Playgroud)
惊人的!
归档时间: |
|
查看次数: |
4797 次 |
最近记录: |