AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 625049
Accepted
Systemspoet
Systemspoet
Asked: 2014-08-30 10:44:13 +0800 CST2014-08-30 10:44:13 +0800 CST 2014-08-30 10:44:13 +0800 CST

XFS 是否支持默认配额?

  • 772

我们需要为所有用户设置一个默认配额。从我可以看到man 8 xfs_quota,您只能为单个用户设置配额。我需要设置一个适用于每个人的配额,而不必枚举每个用户。

xfs
  • 2 2 个回答
  • 5293 Views

2 个回答

  • Voted
  1. Andy Foster
    2016-06-10T04:13:07+08:002016-06-10T04:13:07+08:00

    我有一些东西要在这里补充,我希望能帮助其他有同样问题的人。

    我有一个安装了 uquota 的 XFS 文件系统。我有多个用户使用我想要限制的文件系统,还有一个我不想限制的超级用户(我们称她为“lisa”)。我在这里也有一个 postgres 数据库(由用户“postgres”拥有),我不想受到限制。

    我发现 xfs_quota 手册页对默认限制如何实际工作的描述有些缺乏,并且在其他任何地方都找不到任何资源,所以这就是我发现的。

    设置默认限制...

    xfs_quota -x -c 'limits bsoft=45G bhard=50g -d' /myxfs
    

    了不起。所有配额均已设置,任何登录的新用户都将自动收到默认限制。现在,我将通过将它们的限制明确设置为 0,将我的超级用户和 postgres 从默认值中排除。

    xfs_quota -x -c 'limits bsoft=0 bhard=0 lisa' /myxfs
    xfs_quota -x -c 'limits bsoft=0 bhard=0 postgres' /myxfs
    

    现在我会得到一个报告...

    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 [------]
    

    看起来很棒!正确的?错误的!尽管有这份报告,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 [------]
    

    设置已恢复!

    为了解决这个问题,您必须将您不希望限制为非零值的用户的限制设置为。因此,将其设置为非常高的值。我将我的设置为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 [------]
    

    这可以防止我的超级用户和 postgres 数据库受到限制,同时为所有其他用户保持“默认”50G 限制。

    有几点需要注意:

    • root 用户(或 UID 0)永远不受 xfs_quota 限制(根据手册页)
    • 如果您想知道为什么我的报告中没有显示其他用户,那是因为我通过 NFS 导出它们并且虽然限制有效并且我可以在客户端上看到它们,但默认情况下不会在服务器上报告

    希望这可以帮助某人。

    编辑:您可以通过指定上限来显示更多 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 [------]
    

    惊人的!

    • 7
  2. Best Answer
    Michael Hampton
    2014-08-30T12:59:31+08:002014-08-30T12:59:31+08:00

    如果您确实阅读了手册页,则不确定您是如何错过的。

    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.
    

    因此,您将设置一个默认配额,例如:

    # xfs_quota -x -c 'limit bsoft=1g bhard=1g -d' /home
    
    • 6

相关问题

  • Ubuntu 9.10 cron 脚本“ec2-consistent-snapshot”无法执行和访问文件

  • 向 SLES 10 服务器添加 60TB 存储

  • 仅连接到 Linux 的外部驱动器的文件系统

  • ZFS 与 XFS

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve