如何实现磁盘配额
目标:对用户
zhao
在
/home
目录上实现
soft limit
为
5k,hard limit
为
10k
的磁盘配额
实现步骤:
1
、
#vi /etc/fstab
,修改包含
/home
的行,将第四列改为:
defaults,usrquota
。也就是增加
usrquota
项。然后保存退出。
2
、
#umount /home
卸载
/home
目录
#mount /home
挂接
/home
目录
3
、
#useradd zhao
增加用户
zhao
4
、
#passwd zhao
修改密码
5
、
#quotacheck -vu /home
生成关于
/home
目录的
quota
信息
6
、
#repquota -au
查看所有用户的信息
7
、
#edquota -u zhao
将
soft
和
hard
分别改为
5
和
10
8
、
#wq!
保存并退出
9
、
#edquota -t
修改时间
10
、
#wq!
11
、
#quotaon /home
开启
/home
上的磁盘配额功能
为用户或用户组设置磁盘配额限制。假设在你的系统上有一名为
bob
的用户,现在想给他
10MB
的硬盘配额限制,他所拥有的最大文件数不得超过
100
个。执行
edQuota
-
u dquo
,系统将进入编辑环境(具体编辑环境视
editor
变量设置而定),将如下
3
行
Quotas for user bob:
/dev/hda2: blocks in use: 14, limits (soft=0, hard=0)
inodes in use: 12, limits (soft=0, hard=0)
改为
Quotas for user bob:
/dev/hda2: blocks in use: 14, limits (soft=0, hard=10240)
inodes in use: 12, limits (soft=0, hard=100)
其中,
blocks in use
:用户已使用块的大小,单位是
KB
。
inodes in use
:用户现有文件的大小。
这两项都是系统自动给出的,不必改动。
软限制(
soft limits
)
通常设置软限制为一个接近硬限制的值,超越此限制时,系统将警告用户将到达最大磁盘配额限制。软限制为
0
时没有软限制。结合宽限期使用时,只要用户超越了软限制,一过宽限期,任何对磁盘空间的额外需求将被立即拒绝。
硬限制(
hard limits
)
硬限制磁盘配额的绝对限制,设置了
Quota
的用户不能超越此限制。
宽限期(
Grace Period
)
宽限期是用户超越了软限制而没有到达硬限制时的一段放宽期,在这段时间内,用户可以在硬限制范围内自由地使用磁盘空间,超过这段时间,所有对磁盘空间的额外需求将被拒绝,即使用户还在硬限制之内。宽限期的单位可以是秒、分、时、天。执行
edQuota
-
t
命令可设置宽限期。执行该命令后,将系统提示中的两个
0 days
改成你认为合适的值即可。
有时想给一批用户加上同样的限制,比如,给系统上所有
100
个用户加上与
bob
同样的限制,可手工先给
bob
加上限制,然后执行下面命令:
edquota -p bob ′awk -F: ′$3 499 {print $1}′/etc/passwd′
给用户组设置磁盘配额限制与普通用户类似,假设有一用户组
game
,执行
edquota -g game
即可。