Chinaunix首页 | 论坛 | 博客
  • 博客访问: 823757
  • 博文数量: 247
  • 博客积分: 166
  • 博客等级: 入伍新兵
  • 技术积分: 2199
  • 用 户 组: 普通用户
  • 注册时间: 2012-11-15 16:10
文章分类

全部博文(247)

文章存档

2017年(1)

2015年(63)

2014年(80)

2013年(94)

2012年(9)

分类: LINUX

2013-02-28 20:40:43

quota

1.作用
quota命令用来显示磁盘使用情况和限制情况,使用权限超级用户。

2.格式
quota [-g][-u][-v][-p] 用户名 组名

3.参数
-g:显示用户所在组的磁盘使用限制。
-u:显示用户的磁盘使用限制。
-v:显示没有分配空间的文件系统的分配情况。
-p:显示简化信息。

4.应用实例
在企业应用中磁盘配额非常重要,普通用户要学会看懂自己的磁盘使用情况。要查询自己的磁盘配额可以使用下面命令(下例中用户账号是caojh):

#quota caojh
Disk quotas for user caojh(uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda3 58 200000 400000 41 500 1000

Quota介绍

这篇文章将介绍Linux的一个重要工具-Quota,使用Quota能对某一分区下指定用户或用户组进行磁盘限额。这里要说明的是,限额不是针对用户主目录,而是针对这个分区下的用户或用户组。Quota通过限制用户的blocks或者inodes起到限额的作用。

Quota配置

1、首先我们需要设置分区的Quota档案格式,只要在 /etc/fstab 里头增加了 usrquota, grpquota  就可以。如下,对分区/和/home启用quota磁盘格式。

/dev/VolGroup00/LogVol04 /
ext3 defaults,usrquota,grpquota 1 1
LABEL=/boot /boot ext3 defaults 1 2
devpts /dev/pts devpts gid=5,mode=620 0 0
tmpfs /dev/shm tmpfs defaults 0 0
/dev/VolGroup00/LogVol00 /home
ext3 defaults,usrquota,grpquota 1 2
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
/dev/VolGroup00/LogVol02 /tmp ext3 defaults 1 2
/dev/VolGroup00/LogVol03 /var ext3 defaults 1 2

/dev/VolGroup00/LogVol01 swap swap defaults 0 0

2、重新挂载/和/home文件系统激活quota。

mount -o remount /

mount -o remount /home

3、初始化quota数据库,运行quotacheck -cug 命令之后,在每个挂载分区根目录下你会发现生成了aquota.user  aquota.group两个文件,这两个文件记录了对分区限额的信息。

初始化quota数据库:

quotacheck -cug /

quotacheck -cug /home/

检测是否已经生成:

ls -al /aquota*
-rw------- 1 root root 6144 May 26 17:15 /aquota.group
-rw------- 1 root root 6144 May 26 17:15 /aquota.user
ls -al /home/aquota*
-rw------- 1 root root 7168 May 26 17:16 /home/aquota.group

-rw------- 1 root root 7168 May 26 17:16 /home/aquota.user

4、开启一个定时任务,用来定时扫描quota空间。最好设置在深夜执行,如下:

#MIN(0-59) HOUR (0-23)
DoM (1-31) MONTH (1-12) DoW (0-7) CMD
0 1 * * 0 quotacheck -vug /

20 1 * * * quotacheck -vug /home

5、启用文件系统的quota支持。最简单的方法是重启计算机,你也可以使用quotaon命令而不需要重启计算机。

使用quotaon激活:

quotaon /home

quotaon /

检查是否激活成功:

quotaon -p /home
group quota on /home (/dev/mapper/VolGroup00-LogVol00) is on
user quota on /home (/dev/mapper/VolGroup00-LogVol00) is on
quotaon -p /
group quota on / (/dev/mapper/VolGroup00-LogVol04) is on
user quota on / (/dev/mapper/VolGroup00-LogVol04) is on
设定用户或用户组磁盘限额
在为用户设置限额时,需要知道几个术语:
soft :这是最低限制容量的意思,使用者在宽限期间之内,他的容量可以超过 soft  ,但必需要宽限时间之内将磁盘容量降低到 soft 的容量限制之下!
hard :这是『绝对不能超过』的容量!跟 soft 相比的意思为何呢?通常 hard limit 会比 soft  limit 为高,例如网络磁盘空间为 30 MB ,那么 hard limit 就设定为 30MB ,但是为了让使用者有一定的警戒心,所以当使用空间超过 25  MB 时,例如使用者使用了 27 MB 的空间时,那么系统就会警告使用者,让使用者可以在『宽限时间内』将他的档案量降低至 25 MB ( 亦即是 soft  limit )之内!也就是说, soft 到 hard 之间的容量其实就是宽限的容量啦!可以达到针对使用者的『警示』作用!
宽限时间:那么宽限时间就可以很清楚的知道含意是什么了!也就是当您的使用者使用的空间超过了 soft limit  ,却还没有到达 hard limit 时,那么在这个『宽限时间』之内,就必需要请使用者将使用的磁盘容量降低到 soft limit  之下!而当使用者将磁盘容量使用情况超过 soft limit 时,『宽限时间』就会自动被启动,而在使用者将容量降低到 soft limit  之下,那么宽限时间就会自动的取消啰!
1、使用edquota编辑用户限额

edquota thirt

2、设置如下:
Disk quotas for user thirt (uid 500):
Filesystem blocks soft hard inodes soft hard
/dev/mapper/VolGroup00-LogVol04 0 0 0 0 0 0

/dev/mapper/VolGroup00-LogVol00 88 92160 102400 13 0 0

解释:
filesystem:这个是那个 partition 的意思!
blocks:这个是目前使用者 thirt ( uid 500 )在  /dev/mapper/VolGroup00-LogVol00 这个 filesystem  (参考上面一个信息),所耗掉的磁盘容量,也就是目前的使用掉的空间啦!单位是 Kbytes 喔!这个信息是 quota  程序自己计算出来的,所以请不要修改他!
soft 与 hard :这个是目前的 test 在这个 filesystem 之内的 quota 限制值!至于  soft 与 hard 的意思就如同上面提的那个意思!当 soft 与 hard 数值为 0 的时候,表示『没有限制』的意思!而数值的单位仍是 Kbytes  喔!
inodes :是目前使用掉 inode 的状态,也是 quota 自己计算出来而得到的,所以不要去变更他。一般而言,  inode 不容易控制,所以您可以不必去限制 inode 呢!
3、设置过期时间
设置/ 文件系统的默认过期时间:
edquota -f / -t
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period

/dev/mapper/VolGroup00-LogVol04 7days 7days

设置/home文件系统过期时间:
edquota -f /home -t
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period

/dev/mapper/VolGroup00-LogVol00 7days 7days

4、验证设置
打印所有限额信息

repquota -a

打印单个用户限额信息

quota thirt


阅读(1746) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~