Linux磁盘配额quota
使用Quota能对某一分区下指定用户或用户组进行磁盘限额,Quota通过限制用户的blocks或者inodes起到限额的作用。
系统环境:Ubuntu 12.04 Server
1、安装磁盘配额工具quota
Java代码
apt-get install quota
2、修改文件 /etc/fstab ,使得文件系统支持 quota :
Java代码
vi /etc/fstab(添加usrquota,grpquota参数)
# / was on /dev/sda1 during installation
UUID=2deaaf71-4d69-4d12-832f-ff52780df42f / ext4 errors=remount-ro,usrquota,grpquota 0 1
3、重新挂载 / ,使修改生效:
Java代码
mount -o remount /
4.、扫描文件系统并建立quota的配额文件:
Java代码
quotacheck -avug
5、开启quota功能:
Java代码
quotaon -auvg
6、查看使用情况统计
Java代码
repquota -augvs
7、编辑账号/群组的限值
Java代码
[root@www ~]# edquota -u user1
Disk quotas for user user1 (uid 710):
Filesystem blocks soft hard inodes soft hard
/ 80 10000 10000 100 0 0
7个字段含义:
1. 文件系统 (filesystem):说明该限制值是针对哪个文件系统 (或partition);
2. 磁盘容量 (blocks):这个数值是 quota 自己算出来的,单位为 Kbytes,不要手动更改;
3. soft:磁盘容量 (block) 的 soft 限制值,单位亦为 KB
4. hard:block 的 hard 限制值,单位 KB;
5. 档案数量 (inodes):这是 quota 自己算出来的,单位为个数,不要手动更改;
6. soft:inode 的 soft 限制值;
7. hard:inode 的 hard 限制值;
其中soft和hard的含义是指:
hard:表示使用者的用量绝对不会超过这个限制值,若超过这个值则系统会锁住该用户的磁盘使用权;
soft:表示使用者在低于 soft 限值时,可以正常使用磁盘,但若超过 soft 且低于 hard 的限值时,每次用户登入系统时,
系统会主动发出磁盘即将爆满的警告讯息, 并会给予一个宽限时间 (默认7天)。如果7天内仍不将磁盘量降低到soft以下,那么七天后磁盘限量将变成 soft 的限制值,磁盘使用权就会被锁住而无法新增档案了。
当 soft/hard 为 0 时,表示没有限制,宽限时长通过edquota -t进行修改。
8、测试
Java代码
dd if=/dev/zero of=test20M bs=1M count=20
当创建的文件超过硬限制的时候,文件会继续创建,但是创建的文件会被创建到限制的要求大小。