注意:aquota.group aquota.user 这两个文件 如果通过quotacheck 不创建 ,可以手动建立。
看某个用户当前的配额,可以用quota 用户名
对quota开始理解的一个误区:
认为对用户的限制目录是对主目录来的,其实对限制的目标 是用户 只要这个用户或者组创建的文件都可以限制,但限制的分区。
步骤:
1。修改fstab使得 需要建立磁盘限额的分区 打开磁盘限额项
如果:
LABEL=/home /home ext3 defaults,usrquota,grpquota 0 0
2.重新挂载该分区
mount -o remount /home
注意:不能用umount 再mount来实现。
3。建立二进制文件
aquota -auvg(命令错误 应该是quotacheck -auvg)
扫描所有分区 (从fstab 中)对含配额的 在该分区下 会建立两个二进制文件(生成配额管理文件)
aquota.group aquota.user
对根目录/ 需要加m参数强制生成。
4。设置配额
edquota 用户名
edquota -g 组名
A:
具体如下:
Disk quotas for user you (uid 503):
Filesystem blocks soft hard inodes soft hard
/dev/hdb4 3948 0 0 28 25 30
本例解释:
其中blocks是 该用户已经占用的block数,soft是软限制,超过后 只警告,但仍然可以继续占用block,hard是硬限制,当超过硬限制,则不分配空间。
同样 inodes 是已经占用的节点 数,软限制 和硬限制含义和上同
默认0表示不限制。
B:对组的限制 是各用户占用空间/节点的累加
C:当软限制超过一定时间后 将转变成硬限制
这个时间的控制 是可以用
edquota -t 来设置的
Filesystem Block grace period Inode grace p
/dev/hda2 7days 7days
/dev/hdb4 7days 1 minutes (测试时如不通过加空格)
5。打开配额限制
quotaon -auvg 所有磁盘
注意:
1。如果要执行quotacheck必须先 关闭quota 用quotaoff -auvg
2。所有-auvg中的参数中 a都表示 所有,如果只想对某一个分区 把a去掉 加上对应想操作的分区名
如:
quotacheck -uvg /home
3。配置设置更新后 直接生效,不需要什么重新启动之类的
4。直接用工具设置也可以
setquota -u 用户名 20 30 40 50 分区
5。复制已经有的配额限制可以用-p参数
edquota quotatestyou -p you
quotatest是要建立的
you是已经有限制的
有时想给一批用户加上同样的限制,比方说,给系统上所有100个用户加上与bob同样的限制,可手工先给bob加上限制,然后执行下面命令:
edquota -p bob ′awk -F: ′$3 > 499 {print $1}′/etc/passwd′
block 软限制系统提示:
dd if=/dev/zero of=/test/you/test
de0(3,68): warning, user block quota exceeded.
block 硬限制系统提示:
0(3,68): warning, user block quota exceeded.
0(3,68): write failed, user block limit reached.
inode系统提示:
ide0(3,68): write failed, user file limit reached.
touch: creating `you112111111': Disk quota exceeded
inode grace time超过了 系统提示:
write failed, user file quota exceeded too long.