I have two tasks and I want to run them in different directory and limit the directory's size. I use xfs's project quota to achieve this.
I follow the steps from here:https://solidlinux.wordpress.com/2012/12/09/xfs-quota-managament/
here is detail of my two config files
/etc/projects:
11:/home/xiameng.xm/xfs_dir/task1
12:/home/xiameng.xm/xfs_dir/task2
/etc/projid:
task1:11
task2:12
and here is my step:
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
here is the output of 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 [--------]
the question is no mater how large I create a file in ./xfs_dir/task1 or ./xfs_dir/task2, it succeeds!
The quota limit doesn't work!