Linux下实现磁盘配额功能
顾名思义: 磁盘配额就是限定用户对磁盘的使用
一般只能基于文件系统做磁盘配额 不能对某个目录做 ,即只能对某个分区做
通常的应用是对home目录做,用户的家目录需要对其他用户限制是很正常的, 但home目录必须是独立分区。另外配额对非root用户生效,一般要用户对此分区有写权限,否则配额无效。
这里我们主要讲解使用quota的磁盘配额。
磁盘配额的分类:
限制blocks数 即用户可创建的文件总大小 (一般 1blocks 相当1k大小)
限制inode数 即用户可创建的总文件个数
软限制 10MB 当10m时警告用户超出 但还可以继续使用到15MB 超出部分默认可以使用7天
硬限制 15MB 当15M时禁止用户创建
这里我们就以对/home分区进行磁盘配额解析。
步骤:
1 在/etc/fstab里面挂载的home分区defaults后面加上,usrquota,grpquota选项 以开启quota支持 ----------这样可以永久生效
然后重新挂载
mount -o remount /home/
2 创建配额所需的数据库文件
#quotacheck -cug /home
-m:不以只读方式挂载
-u 创建用户相关的配置文件
-g 创建组相关的配置文件
-c create
3 创建 aquota.group aquota.user 两个文件
#quotacheck -cug /home/
4 #quotaon /home ---------启用配额功能
为redhat用户建立配额:分别为软限制10M,硬限制15M,文件数目软限制30个,硬限制35
#setquota redhat 10240 15000 30 35
所有设置已经完成咯,接下来就可以去验证咯,比如在对应分区手动建立文件,目录等。
下面是一些quota的相关命令:
#edquota -p redhat juliet 把redhat的配置复制给juliet
#quota可以查看quota信息
#dd if=/dev/zero of=./quota.test bs=1024k count=10 创建 10MB的 文件
#repquota /home/ 查看此文件系统中所有用户的磁盘配额限制
#warnquota 发送警告信息
#repquota -a 查看所有
#edquota -t 设置宽限期 即修改grace字段
转载于:https://blog.51cto.com/lyc0812/565146