磁盤配額的步驟:
1) 修改 /etc/fstab 文件
2) 重新掛載文件系統
3) 創建配額文件
4) 設置配額限制
5) 開啓配額限制
6) 設置開機啓用quota 配額
1) 修改 /etc/fstab 文件,讓分區支持quota,本文針對/home做配額,在第4個字段後面加上
“ ,usrquota,grpquota ” ,其中usrquota是針對用戶進行限額,grpquota是針對組進行限額。
[root@linux ~]# vi /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2
LABEL=/var /var ext3 defaults 1 2
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-hda5 swap swap defaults 0 0
注意:defaults,usrquota,grpquota 三個選項之間都是沒有空格的。
2)重新加載文件系統
有兩種方法:一就是重新開機(reboot),建議使用;二就是重新掛載文件系統;我這裏採用第二種;
[root@rhel5 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda2 10154020 2089060 7540840 22% /
/dev/hda6 50179284 184380 47404828 1% /home
/dev/hda3 101572572 227760 96102000 1% /var
/dev/hda1 101086 11006 84861 12% /boot
tmpfs 127812 0 127812 0% /dev/shm
[root@rhel5 ~]# umount /dev/hda6
[root@rhel5 ~]# mount -a
[root@rhel5 ~]# cat /etc/mtab
/dev/hda2 / ext3 rw 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
/dev/hda3 /var ext3 rw 0 0
/dev/hda1 /boot ext3 rw 0 0
tmpfs /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
/dev/hda6 /home ext3 rw,usrquota,grpquota 0 0
呵呵。。。已經成功的將 filesystem 的 quota 功能加入了
3) 創建配額文件
[root@rhel5 ~]# ls /home
kunyuan ky kyhack lost+found user1 user2
[root@rhel5 ~]# quotacheck -cumg /home
[root@rhel5 ~]# ls /home
aquota.group aquota.user kunyuan ky kyhack lost+found user1 user2
已經產生了aquota.group和aquota.user這兩個文件了。
4)設置配額限制
就是對用戶或組進行配額的設置了
[root@rhel5 ~]# edquota -u user1 //對user1用戶進行配額限制設置
Disk quotas for user user1 (uid 502):
Filesystem blocks soft hard inodes soft hard
/dev/hda6 32 25000 30000 4 0 0
// 注意一下,/dev/hda6是那一個分區;blocks是這一個分區用了多少空間;soft就是前面說的軟限制,再強調一下這個值一定要比hard值要小;這裏的單位是 Kbytes,別搞錯了。
(inodes soft hard )這後面的這一部分是針對文件數量來做限制的,由於不好控制,一般都是限制空間大小。
[root@rhel5 ~]# edquota -p user1 -u user2 //裝user1的配額設置複製給user2
[root@rhel5 ~]# edquota -g qgroup
Disk quotas for group qgroup (gid 502):
Filesystem blocks soft hard inodes soft hard
/dev/hda6 64 55000 60000 8 0 0
[root@rhel5 ~]# edquota –t //設置超出軟限制後的寬限時間,這裏給改成3天;
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/hda6 3days 7days
[root@rhel5 ~]# quota -vg qgroup //查詢一下組配額設置有沒有設置進去
Disk quotas for group qgroup (gid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda6 64 550000 600000 8 0 0
[root@rhel5 ~]# quota -vu user1 user2 //查詢一下用戶配額設置有沒有設置進去
Disk quotas for user user1 (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda6 32 25000 30000 4 0 0
Disk quotas for user user2 (uid 503):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda6 32 25000 30000 4 0 0
5)啓用quota 的限額
[root@rhel5 ~]# quotaon -avug
/dev/hda6 [/home]: group quotas turned on
/dev/hda6 [/home]: user quotas turned on
//看到上面有個 turned on 的出現,就是成功的意思啦!
6) 設置開機啓用quota 配額
[root@rhel5 ~]# vi /etc/rc.d/rc.local
/sbin/quotaon –avug //在後面加上這一句
顯示更完整的 quota 結果報告:
[root@rhel5 ~]# repquota -aug
*** Report for user quotas on device /dev/hda6
Block grace time: 3days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 184292 0 0 6 0 0
ky -- 40 0 0 5 0 0
kunyuan -- 32 0 0 4 0 0
user1 -- 32 25000 30000 4 0 0
user2 -- 32 25000 30000 4 0 0
*** Report for group quotas on device /dev/hda6
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
Group used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 184292 0 0 6 0 0
ky -- 40 0 0 5 0 0
kunyuan -- 32 0 0 4 0 0
qgroup -- 64 550000 600000 8 0 0