磁盘配额是用来限定用户磁盘的使用量

特性:

只能针对整个文件系统

内核必须支持quota

只能对一般用户生效

产生日志


限制值soft/hard

若超出限制值hard的量,则磁盘将被锁定,除非删除文件来腾出空间

若超出soft值并小于hard值,此时会进入宽限时间(grace time),每次登录时,系统都会警告用户磁盘容量即将到达极限,若超出宽限时间还没有将容量减到soft值以下,则锁定磁盘使用权,除非删除一些文件。


写一个创建用户myquota1,myquota2,myquota3, myquota4, myquota5并加入到组myquotagrp的脚本


运行脚本


挂载

也可以将usrquotagrpquota写入/etc/fstab



开启quota

quotaon [-avug]

-a 根据/etc/mtab内的文件系统设置启动有关的quota,如果不加-a,则使用quotaon [-option] [/mount point]来手动启动

-v 显示启动过程的相关信息

-u 针对用户启动quota(auota.user)

-g 针对用户组启动quota(aquota.group)


关闭quota

quotaoff

用法基本同quotaon一样

quotaoff [-aug]

quotaoff –a 根据/etc/mtab来关闭quota

quotaoff [-ug] [/mount point] –u 关闭指定挂载点的user quota-g 关闭指定挂载点的group quota


编辑quota

edquota [-u username] [-g groupname]

edquota –t

edquota –p 模版账户–u 新帐户


-u 后面接用户名进入编辑界面(vi)设置user的限额

-g 后面接组名,进入编辑界面(vi)设置group的限额

-t 修改宽限时间

-p 是将已经设置好的样本复制一份给新的用户使用


如图,进入编辑界面

第一列(Filesystem)filesystem代表针对哪个文件系统或分区

第二列(blocks)blocks是由quota自行计算出来

第三列(soft)blocksoft限制值,单位为KB

第四列(hard)blockhard限定值,单位为KB

第五列(inodes)inodesquota自行计算所得

第六列(soft)inodesoft限制值

第七列(hard)inodehard限制值


例如,将myquota1用户的soft值设为250MBhard值设为300MB(大概)

其他4个用户同样设置

使用edquota –t将时间改为14


quota用户的报表

quota [-ugvs] [username|groupname]

-u:接用户名 –g:接组名

-v:显示每个用户在文件系统中的quota

-s:使用1024的倍数显示容量


repquota:针对文件系统限额做报表

-a:根据/etc/mtab报告

-v:输出的数据含有文件系统相关的详细信息

-u:显示出用户的quota限值

-g:现实个别用户组的quota限值

-s:M,G为单位显示结果



测试一下

登入myquota1写入一个280MB的文件出现警报

root用户上使用repquota查看发现myquota1进入grace time

写入400MB数据发现无法实现

删掉280MB的文件,再使用repquota发现恢复正常


使用warnquota命令警告超过soft值的用户,给用户和root各发一封mail

/etc/warnquota.conf中可以修改警告信息


还可以使用setquota命令设置限额

setquota [-u|-g] [username|groupname]block(soft) hard(soft) inode(soft) inode(hard) 文件系统


quotacheck

-a 扫描所有在/etc/mtab内含有quota支持的文件系统

-u 针对用户扫描

-g 针对组扫描

-v 显示扫描过程信息

-f 强制扫描,并写入新的quota配置文件

-M 强制以读写方式扫描文件系统