磁盘配额的步骤:
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
OK,完成了。
PS:最近发的两个文章都超出了8W字符,,汗。。
本文出自 “ky.blog” 博客,请务必保留此出处http://kyhack.blog.51cto.com/490370/185582