由于忙了几天,今天忙里面偷闲一下搞了一下quota,现在记下来给大家参考下,或许大家有那么一天用得上:),以下测试在RH LINUX8.0成功。 H0O,P0
由于忙了几天,今天忙里面偷闲一下搞了一下quota,现在记下来给大家参考下,或许大家有那么一天用得上:),以下测试在RH LINUX8.0成功。 H0O,P0
1.先修改 /etc/fstab 文件.在文件系统相应的 mount 命令行中加入限额选项,如下(我是以home目录、landy用户进行测试的): g;{5Hp~.k
LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2 y1Fqv!Y6
wgmkV]h
2. 重新装载 Linux 分区: M:iW`/Z@y
[root@landy root]# mount -o remount /home (IG|)h @
Pws
3. 在欲加磁盘限额的文件系统的安装目录建立 aquota.user文件,最好加多一个aquota.group 文件(作为组用,但我这里只是测试用户,组的一样) 7/*5_y
[root@landy root]# cd /home U-peEld2~
[root@landy home]# touch aquota.user //设置用户磁盘限额文件 /! Ne
[root@landy home]# touch aquota.group //设置组的磁盘限额文件(但我没测试它,只是顺便添加上去,但我会连组一起说明) !m<6M[xz#X
这时就生成aquota.user 和aquota.group文件,但它是空的,不符合系统的要求。 p]Adv<xf
EAL9~ ^
4. 生成符合系统要求的 aquota.user 和 aquota.group ^4OF& R}
[root@landy home]# quotacheck /home `UfQ
[root@landy home]# quotacheck -g /home mZu X =}5
生成时,如果有错误提示,不要理它,没关系的。因为我们先前用touch 生成的是一个空文件,所以格式不对。 WBAOT_#
这样正确的aquota.user 和aquota.group 就生成了。 Q0 'j5;>
7",i_}k
5. 为用户设置磁盘空间限额: |G{[u-
[root@landy home]# edquota -u landy Gx<a\[P
[root@landy home]# edquota -g groupname (对于用户组来说) S{H#n*4,r
如果使用上面任一命令就会开启一个vi 窗口,为用户设置磁盘空间限额,其中 soft 设置用户最多可以用多大的磁盘空间;hard 设置强制用户最多使用多少磁盘空间(注:只有在设置了“grace period”参数之后“hard =”设置的值才有效;还有就是里面的数据是以K为单位的,要注意了,我开始吃了亏)。编辑方法与 vi 完全相同,以:wq 命令退出。多用户或组则是这样: k7* fo4IQ
[root@landy home]# edquota -u -p protuser user1 user2 user3 |K/iuP
[root@landy home]# edquota -g -p protgroup group1 group2 group3 ym0zb8R.
%0#"*
设定soft quota和hard quota之间的时间: $X$_Q`
[root@landy home]# edquota -t r"cSM|U>
出现: " :*^(
Grace period before enforcing soft limits for users: C5:Jb(L0D
Time units may be: days, hours, minutes, or seconds gKUSq]KCy
Filesystem Block grace period Inode grace period 7UN--/QeW
/dev/hda3 7days 7days <khbg8F
修改成自己所需要的,保存退出。 {EJWMI;z?
最后,需要重新启动一下,以使磁盘限额生效。(在启动时提示找不到quota什么的文件,不用管它) =>oi}t3
测试: }:<Fg"z$
以FTP进行上传数据(我设的是soft=100M hard=90M),只要上传的东西超过88M就不能再上传了,可惜没提示相关的信息,我找篇了也没找到(包括系统和FTP日志 ) puW(=k
9,<r u[E
另:你可以使用quota -username和quotastats来查看下当前状态。