quota

发表于:2007-07-04来源:作者:点击数: 标签:
注意:aquota.group aquota.user 这两个文件 如果通过quotacheck 不创建 ,可以手动建立。 看某个用户当前的配额,可以用quota 用户名 对quota开始理解的一个误区: 认为对用户的限制目录是对主目录来的,其实对限制的目标 是用户 只要这个用户或者组创建的

注意: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.


原文转自:http://www.ltesting.net