磁盘配额(Quota

厌伴老儒烹瓠叶,强随举子踏槐花。这篇文章主要讲述磁盘配额(Quota相关的知识,希望能为你提供帮助。
磁盘配额(Quota)的用途限制用户对磁盘空间的使用量,避免因某些用户过度占用硬盘空间而造成其他用户无法使用硬盘。
1、Quota的使用限制
(1)Quota的使用是针对文件系统(经格式化的分区);
(2)Linux内核必须支持quota;
(3)Quota只能限制一般用户和组(不能限制root用户);
2、Quota的规范设置选项
(1)可进行容量限制(最常用),也可以进行文件数量限制。(block或inode);
(2)Quota的限制值:soft和hard,soft为最低限制(软限制),超过这个值,系统会报警,甚至最终锁定用户的写入操作,hard为最高限制(硬限制),其值是绝对不能超过的。
(3)宽限时间(grace time),当用户的磁盘用量超过soft,但尚未达到hard值时,系统会报警,并给出一个宽限时间(一般7天),当超过了宽限时间,并且用户的磁盘用量没有降到soft之下时,soft值会即可替代hard值,用户将不能再向磁盘写入数据。
3、Quota使用步骤
通过一个具体案例说明Quota使用步骤。此案例是针对分区sd2设置Quota,该分区挂载于/home目录上。
df -m |grep sda2/dev/sda220166718474% /home
(1)安装quota软件包quota-3.17-20.el6.i686.rpm
yum –y install quota
(2)修改/etc/fstab文件,对分区sda2设置Quota,增加黑体部分内容
UUID=a80…/homeext4defaults,usrquota,grpquota1 2

umount /homemount -amount |grep sda2/dev/sda2 on /home type ext4 (rw,usrquota,grpquota)
(3)扫描文件系统,并建立Quota配置文件
#Quotacheck –avug
该命令仅需执行一次即可。
检查Quota配置文件是否建立完成
ll -d /home/a*
-rw-------. 1 root root 6144 12月 30 10:14 /home/aquota.group
-rw-------. 1 root root 6144 12月 30 10:14 /home/aquota.user
(4)Quota启动

quotaon –avug该命令只需执行一次即可(5)配置限额
A 配置用户lili的限额

edquota -u lili执行该命令后,会自动建立一个名为lili的限额文件,并用vi打开,此文件初始化状态如下:
Disk quotas for user lili (uid 500):
Filesystemblockssofthardinodessofthard
/dev/sda22000500
该文件共包括7个字段,Filesystem是设置限额的分区,blocks是用户已经使用量,第一个soft是容量软限制,第一个hard是容量硬限制,inodes是用户已经建立文件个数,第二个soft是文件个数软限制,第二个hard是文件个数硬限制。
两个soft、两个hard初始对应值均为0,表示不加限制。如果需要设置,就可以设置对应字段值,容量限制单位为KB。
为了方便测试,为lili限制容量为soft 50KB, hard 70KB。
Filesystemblockssofthardinodessofthard
/dev/sda2205070500
如果要设置其他用户的限额,需要一一设置。但如果限额一样的话,也可以使用复制的方法。例如:# edquota -p lili -u zhangwei
B 配置组caiwubu限额

edquota -g caiwubuC 修改宽限天数
edquota -t【磁盘配额(Quota】(6)查看限额
quota -uvs lili查看用户lili的限额
Disk quotas for user lili (uid 500):
Filesystemblocksquotalimitgracefilesquotalimitgrace
/dev/sda2205070500

quota -gvs caiwubu查看组caiwubu的限额repquota –augs查看所有用户的限额(7)以用户lili登录,进行测试
$ dd if=/dev/zero of=/home/lili/testfile bs=1k count=40
sda2: warning, user block quota exceeded.
记录了40+0 的读入
记录了40+0 的写出
40960字节(41 kB)已复制,0.00194413 秒,21.1 MB/秒
查询配额:$ quota -uvs lili
Disk quotas for user lili (uid 500):
Filesystemblocksquotalimitgracefilesquotalimitgrace
/dev/sda264*50706days700
通过查询可知lili在/dev/sda2上已经使用磁盘64k,超出了soft值,但尚未达到hard值,宽限天数还余6天。
(8)关闭quota

quotaoff -avug/dev/sda2 [/home]: group quotas turned off
/dev/sda2 [/home]: user quotas turned off

    推荐阅读