我有两个任务,我想在不同的目录中运行它们并限制目录的大小。我使用xfs的项目配额来实现这一点。
我按照这里的步骤操作:https://solidlinux.wordpress.com/2012/12/09/xfs-quota-managament/
这是我的两个配置文件的详细信息
/etc/项目:
11:/home/xiameng.xm/xfs_dir/task1
12:/home/xiameng.xm/xfs_dir/task2
/etc/projid:
task1:11
task2:12
这是我的步骤:
touch test_xfs
dd if=/dev/zero of=test_xfs bs=100M count=1
mkfs.xfs test_xfs
mkdir xfs_dir
mount test_xfs ./xfs_dir -o pquota,loop
xfs_quota -xc 'project –s task1' /home/xiameng.xm/xfs_dir
xfs_quota -xc 'project –s task2' /home/xiameng.xm/xfs_dir
xfs_quota -x -c 'limit -p bhard=2m task1' /home/xiameng.xm/xfs_dir
xfs_quota -x -c 'limit -p bhard=10m task2' /home/xiameng.xm/xfs_dir
这是输出xfs_quota -x -c 'report /home/xiameng.xm/xfs_dir'
Project quota on /home/xiameng.xm/xfs_dir (/dev/loop1)
Blocks
Project ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
task1 0 0 2048 00 [--------]
task2 0 0 10240 00 [--------]
问题是无论我在./xfs_dir/task1
or创建文件有多大./xfs_dir/task2
,它都会成功!
配额限制不起作用!
答案1
我们遇到了同样的问题。问题是我们无法使用以下命令初始化项目的挂载点:
xfs_quota -x -c 'project -s yourProjectName' yourMountPoint
我们执行此操作后,xfs_quota 报告成功报告了项目路径下的已用空间。