在linux系统中,使用xfs文件系统的xfs_quota工具可以限制用户或组的磁盘使用空间。1. 确认挂载选项已启用uquota或gquota,并通过remount或重启生效;2. 使用xfs_quota初始化配额数据库文件.aquota.user;3. 通过limit命令设置用户block和inode的软限与硬限;4. 查看配额报告并设置宽限期;5. 验证配额是否生效。整个过程需依次执行并确保每步成功。

Linux系统中,如果你希望限制某个用户或组的磁盘使用空间,可以使用XFS文件系统的xfs_quota工具。这个工具功能强大、配置灵活,适合在服务器环境中进行磁盘配额管理。

XFS只在挂载时支持配额功能,因此第一步要确认你的挂载点是否已经启用了user或group级别的配额。
/etc/fstab 文件,在对应挂载项的选项里加上 uquota(用户)或 gquota(组),例如:UUID=xxx /home xfs defaults,uquota 0 0
mount -o remount /home
小技巧:可以用 mount | grep home 来查看当前挂载参数是否包含 quota 相关内容。
虽然XFS不像ext系列文件系统那样依赖外部的aquota.user文件,但有些操作仍然需要它存在。
xfs_quota 初始化用户配额信息:xfs_quota -x -c 'initialize' /home
这会在指定挂载点下生成必要的配额数据库文件,比如 .aquota.user。

使用 xfs_quota 命令来设置用户的磁盘空间限制。主要用到 -x(专家模式)和 -c(执行命令)两个参数。
比如,想给用户 testuser 设置硬限制为 5GB,软限制为 4GB:
xfs_quota -x -c 'limit bsoft=4g bhard=5g testuser' /home
这里:
bsoft 是软限制,超过后会进入宽限期;bhard 是硬限制,绝对不能突破;/home 是挂载点,根据实际情况修改。注意:除了空间限制(block),你还可以限制 inode 数量(files):
xfs_quota -x -c 'limit isoft=1000 ihard=1200 testuser' /home登录后复制
你可以随时查看当前用户的配额情况:
xfs_quota -c 'report' /home
默认报告包括 block 和 inode 的使用情况。
如果设置了软限制,还需要设置宽限期(grace time),否则用户一旦超过软限就无法写入了。
设置宽限期的方法如下:
xfs_quota -x -c 'timer -b 7d' /home
这条命令表示,允许用户在超过软限后有 7天时间 恢复到软限以下。也可以对 inode 设置类似时间。
你可以切换到目标用户账户,尝试复制大文件进去,看看是否真的被限制了。
例如:
su - testuser dd if=/dev/zero of=testfile bs=1M count=6000
如果设置的是5G硬限制,那么复制到接近5G的时候就会提示“Disk quota exceeded”。
基本上就这些。配置起来不复杂,但稍有步骤,注意检查每一步是否成功执行即可。
以上就是如何设置Linux磁盘配额 xfs_quota限制用户空间的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号