红联Linux门户
Linux帮助

Linux进行磁盘配额quota的设置

发布时间:2007-01-28 00:53:50来源:红联作者:Kesirst
通过quota进行磁盘配额,可以控制使用者对磁盘空间和文件的控制,我们以一个实例作为说明,对2个使用者user01、user02分别进行磁盘使用空间和创建文件的限制。
首先,创建一个新的分区,将/tmp挂载在新的分区。
#fdisk /dev/hda

创建后执行:

#partprobe

重新写分区表

#mkfs -t ext3 /dev/hda7 格式化分区
#mount /dev/hda7 /tmp 将/tmp挂载到hda7分区

修改分区表

#vi /etc/fstab增加usrquota,grpquota
/dev/hda7 /tmp ext3 defaults, usrquota,grpquota 0 0

创建使用者

#useradd user01
#useradd user02
#cd /tmp
#mount -o remount /tmp
#quotacheck -cvug /tmp
#quotaon -vug /tmp 开启quota
Quota会在/tmp目录下自动创建quota.user quota.group

对使用者user01进行磁盘空间使用限制

#edquota -u user01 修改quota配置文件
Block limits File limits
User used soft hard timeleft used soft hard timeleft
userq -- 0 5000 8000 0 0 0

Block limits是对磁盘空间使用的限制,以字节为单位,soft是指软限制,hard是指硬限制,如例,soft限制为5MB,hard限制为8MB,当使用者user01使用空间超过5MB时,系统会进行提示,但可以继续使用空间,而当使用者user01使用空间达到8MB时,就会限制使用者user01继续使用/tmp空间
我们可以进行一下测试,手动创建相对大的文件:

#dd if/dev/zero of=user01file bs=1M count=4 将创建成功
#dd if/dev/zero of=user01file bs=1M count=6 将创建成功,但会有提示
#dd if/dev/zero of=user01file bs=1M count=9 将创建失败,超出hard限制

对使用者user02进行创建文件使用限制

#edquota -u user02 修改quota配置文件
Block limits File limits
User used soft hard timeleft used soft hard timeleft
userq -- 0 0 0 0 50 80

File limits是对使用者创建文件的限制,soft和hard同上是软限制和硬限制,分别是50、80,当使用者user02创建文件超过50个时,系统会进行提示,但仍可以继续创建文件,而当使用者user02创建文件超过80个文件时,就会限制使用者user02继续创建文件,但要注意,因为使用者user02是在/tmp目录下进行了磁盘配额限制,所以/tmp目录会算做一个文件,所以user02最多只能创建79个文件。

我们可以进行一下测试,手动创建文件:
#for i in $(seq 1 60);do echo 「user02file$i」;touch user02file$i;done

创建60个文件,此时quota会进行提示,而当超过80个文件的时候,quota就会限制使用者user02继续创建文件

#edquota -t

可以设置timeleft的值,在这里我们都设定为2分钟,重复上面的例子,使用者user02创建60个文件,此时会出现quota的提示,但仍可以创建文件,但当我们等待2分钟后,你会发现,user02已经不能再进行创建文件了,这里就是timeleft的作用,就是当你超过soft限制时,设定有效的时间。
其它相关命令

#repquota 重载quota设置
#quota -v 察看quota设置
#quota on/off quota开启/关闭

这样我们就可以对使用者进行相应的限制了。
文章评论

共有 3 条评论

  1. gostop 于 2009-09-08 20:49:57发表:

    没有试过

  2. yukina 于 2009-09-08 16:00:06发表:

    不错,但是有个问题,我做了限额后,发现10K以下的文件在限额已经满了后仍能上传,但传上后文件就变成0字节了,不懂是什么原因。

  3. jieyujun3 于 2008-10-15 09:04:36发表:

    比较详细,给你顶了