- 论坛徽章:
- 0
|
1.1 监视文件系统的增长
在AIX 5L系统中,系统管理员需要监视文件系统的增长以避免出现满文件系统。
在AIX下的磁盘限额系统是基于伯克利磁盘限额系统的,它提供了一种有效的方法来对磁盘使用进行控制。限额系统可以针对特定的用户或者组来定义,还可以针对每个日志文件系统提供不同的限额。
基于以下参数建立限制的限额系统可以使用edquota命令来改变:
Ø 用户或者组的软限制
Ø 用户或者组的硬限制
Ø 限额宽延时间
软限额定义了在此限定下用户必须保留的 1 KB 的磁盘块数或文件数。硬限额定义了在已建立的磁盘限额下用户可以累积的最大磁盘块或文件数量。限额宽延时间允许用户在短期内(缺省值是一周)超过软限额。如果在特定的时间内用户不能把使用空间降低到软限额以下,系统会把软限额解释为最大允许的分配,而不再给用户分配更多存储空间。用户可以通过移除足够的文件把使用空间减小到软限额以下以复位此条件。
磁盘限额系统在 quota.user 和 quota.group 文件中跟踪用户和组的限额,这些文件位于已启用限额的文件系统根目录下。这些文件使用 quotacheck 和 edquota 命令创建并可以用限额命令quota读取。
从突破限额中恢复
当你已经超过限额限制时,要减少对文件系统的使用,你可以使用以下方法:
Ø 终止当前引起文件系统达到限额的进程,删除文件使系统降到限额以下,重新尝试失败的程序。
Ø 如果你在使用文本编辑器(像VI),使用shell退出序列命令来检查你的文件系统空间、删除多余的文件然后返回,这样你就可以不丢失你正在编辑的文件。同样,在使用C Shell或者Korn Shell时,你可以使用CTRL+Z组合键来挂起编辑器,执行所需的系统命令后,使用fg(foreground)命令返回编辑器。
Ø 临时将文件写入未突破限额的文件系统,删除多余的文件,然后将文件移动到当前文件系统中。
quotaon 命令启用FileSystem 参数指定的一个或多个文件系统的磁盘限额。指定的文件系统必须在/etc/filesystems文件中定义限额,并且必须装载。quotaon 命令在相关文件系统的根目录中查找默认的限额文件quota.user和quota.group文件(这两个文件名可以在/etc/filesystems文件中改变)。
缺省情况下,同时启用用户和组的限额。-u标志仅启用用户限额;-g标志仅启用组限额。同时指定-g和-u标志等同于缺省值(不指定选项)。-a标志指定启用/etc/filesystems文件中指定的带磁盘限额的所有文件系统的限额。
quotaoff 命令禁用一个或多个文件系统的磁盘限额。缺省情况下,同时禁用用户和组的限额。-a、-g和-u标志就像 quotaon 命令中的一样操作。
这两个命令最常用的标志如下表所示:
标志
描述
-a
启用或禁用所有可读写的和拥有磁盘限额的文件系统,就像/etc/filesystems文件指定的一样。当带-g标志使用时,仅启用或禁用/etc/filesystems文件中的组限额;当带-u标志使用时,仅启用或禁用/etc/filesystems文件中的用户限额。
-g
指定仅启用或禁用组限额。
-u
指定仅启用或禁用用户限额。
-v
为每个开启或关闭了限额的文件系统显示消息。
通常,只有包含用户家目录和文件的文件系统需要设置磁盘限额。在以下情况下考虑实现磁盘限额:
Ø 你的系统磁盘空间有限。
Ø 你需要更多的文件系统安全。
Ø 你的磁盘使用的级别很高,像在拥有很多部门、很多用户的单位。
如果你的环境和上面列出的不符,你就可能不需要实现磁盘限额来建立磁盘使用限制。
磁盘限额系统只能在日志文件系统上使用。
注意:不要在/tmp文件系统上实现磁盘限额。
使用以下过程来设置磁盘限额系统:
1. 使用root权限登录
2. 确定哪一个文件系统需要限额
注意:因为很多编辑器和系统工具会在/tmp文件系统中创建临时文件,因此,/tmp文件系统的限额应该是自由的。
3. 使用带userquota和groupquota配置属性(这两个属性在/etc/filesystems文件中定义)的chfs命令。下面的例子是使用chfs命令使用户限额在/home文件系统上启用:
# chfs -a “quota=userquota” /home
要使用户限额和组限额在/home文件系统上同时启用,输入命令:
# chfs -a “quota=userquota,groupquota” /home
在/etc/filesystems文件中对应的条目如下所示:
/home:
dev = /dev/hd1
vfs = jfs
log = /dev/hd8
mount = true
check = true
quota = userquota,groupquota
options = rw
4. 这一步是可选的。指定改变的磁盘限额文件名称,默认的文件名称是quota.user和quota.group,这两个文件位于启用磁盘限额的文件系统的根目录下。你可以通过修改/etc/filesystems文件中的用户限额和组限额属性来改变这些限额文件和目录的路径。
下面的例子使用chfs命令在/home文件系统上建立用户限额和组限额,限额文件名分别为mtquota.user和myquota.group:
# chfs -a "userquota = /home/myquota.user"
-a "groupquota = /home/myquota.group" /home
在/etc/filesystems文件中相应的条目显示如下:
/home:
dev = /dev/hd1
vfs = jfs
log = /dev/hd8
mount = true
check = true
quota = userquota,groupquota
userquota = /home/myquota.user
groupquota = /home/myquota.group
options = rw
5. 如果该文件系统还没有装载,就装载指定的文件系统
6. 针对每个用户或组设置配额限制。使用edquota命令创建每个用户或者组的软限额和硬限额的允许磁盘空间和最多的文件数目。
下面例子中的条目显示了针对用户gpsilva的配额限制:
Quotas for user gpsilva:
/home: blocks in use: 30, limits (soft = 100, hard = 150)
inodes in use: 73, limits (soft = 200, hard = 250)
这个用户最大可用磁盘空间为100KB,当前已经使用了30KB;最多创建200个文件,他已经创建了73个文件;这个用户还有可以分配的临时存储——50KB的磁盘空间和50个可创建文件。
当为多个用户建立磁盘限额时,使用edquota命令加-p标志来复制一个用户的磁盘限额到其他用户。
要复制gpsilva用户的磁盘限额到tneiva用户,命令如下:
# edquota -p gpsilva tneiva
7. 使用启用磁盘限额系统。quotaon命令可以针对一个指定的文件系统启用限额;当使用-a标志的时候,它还可以这对所有设置限额的(在/etc/filesystems文件中指定的)文件系统启用限额。
8. 使用quotacheck命令来检查限额文件的设置和实际磁盘使用的一致性。
注意:每次重新启动系统后如果要启用限额,我们推荐你做这一步的检查。
如果你想在系统引导时启用这项检查并打开磁盘限额,请在/etc/rc文件的后面添加以下行:
echo " Enabling filesystem quotas "
/usr/sbin/quotacheck -a
/usr/sbin/quotaon -a
edquota命令、quotacheck命令和repquota<SPAN style="FONT-SIZE: 12pt; LINE-HEIGHT:
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/6482/showart_124643.html |
|