设置配额(任务图)
第14 章• 管理配额(任务) 255
任务说明参考
2. 为用户设置配额。使用edquota 命令为单个用户帐
户创建磁盘配额和inode 配额。
第257 页中的“如何为用户设置
配额”
3. (可选)为多个用户设置配
额。
使用edquota 命令将样例配额应
用于其他用户帐户。
第258 页中的“如何为多个用户
设置配额”
4. 检查一致性。使用quotacheck 命令将配额与
当前磁盘使用量进行比较,以确
保一个或多个文件系统中的一致
性。
第258 页中的“如何检查配额一
致性”
5. 启用配额。使用quotaon 命令在一个或多个
文件系统中启动配额。
第259 页中的“如何启用配额”
如何针对配额配置文件系统
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
为将获取配额的每个UFS 文件系统编辑/etc/vfstab 文件,并向mount options 字段中添加
rq。
将目录转到将获取配额的文件系统的根目录。
创建一个名为quotas 的文件。
# touch quotas
更改读取/写入权限,以便仅供超级用户访问。
# chmod 600 quotas
针对配额配置文件系统
以下的/etc/vfstab 示例显示了系统pluto 中的/export/home 目录在本地系统中作为NFS 文
件系统挂载。通过mount options 列下的rq 项可以判断已启用了配额。
# device device mount FS fsck mount mount
# to mount to fsck point type pass at boot options
# pluto:/export/home - /export/home nfs - yes rq
/etc/vfstab 文件中的以下示例行说明本地/work 目录在挂载时已启用配额,mount options
列下的rq 项指明了这一点。
1
2
3
4
5
示例14–1
设置配额(任务图)
256 系统管理指南:高级管理• 2006 年7 月
#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#/dev/dsk/c0t4d0s0 /dev/rdsk/c0t4d0s0 /work ufs 3 yes rq
第257 页中的“如何为用户设置配额”
第258 页中的“如何为多个用户设置配额”
第258 页中的“如何检查配额一致性”
第259 页中的“如何启用配额”
如何为用户设置配额
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
使用配额编辑器创建一个临时文件,对于在文件系统的根目录中包含quotas 文件的每个已
挂载的UFS 文件系统,该临时文件都包含一行配额信息。
# edquota username
其中,username 是要为其设置配额的用户。
将1KB磁盘块的数量(软限制和硬限制)和inode 数量(软限制和硬限制)从缺省值0 更改
为针对每个文件系统指定的配额。
验证用户的配额。
# quota -v username
-v 在存在配额的所有已挂载文件系统中显示用户的配额信息。
username 指定要查看配额限制的用户名。
为用户设置配额
以下示例显示了edquota 在系统中打开的临时文件的内容,其中/files 是根目录中包含
quotas 文件的唯一已挂载文件系统。
fs /files blocks (soft = 0, hard = 0) inodes (soft = 0, hard = 0)
以下示例显示了设置配额后临时文件中的同一行。
fs /files blocks (soft = 50, hard = 60) inodes (soft = 90, hard = 100)
另请参见
1
2
3
4
示例14–2
设置配额(任务图)
第14 章• 管理配额(任务) 257
如何为多个用户设置配额
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
使用配额编辑器将已为样例用户建立的配额应用于指定的其他用户。
# edquota -p prototype-user username ...
prototype-user 已为其设置了配额的帐户的用户名。
username ... 指定其他帐户的一个或多个用户名。通过以空格分隔每个用户名来指定多
个用户名。
为多个用户设置样例配额
以下示例说明如何将为用户bob 建立的配额应用于用户mary 和john。
# edquota -p bob mary john
如何检查配额一致性
重新引导系统时会自动运行quotacheck 命令。通常不需要在具有配额的空文件系统中运行
quotacheck 命令。但是,如果要在包含现有文件的文件系统中设置配额,则需要运行
quotacheck 命令,以使配额数据库与文件系统中已存在的文件或inode 同步。
此外应谨记,在大型文件系统中运行quotacheck 命令会非常耗时。
注– 为确保磁盘数据的准确性,在手动运行quotacheck 命令时,检查的文件系统应处于停顿
状态。
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
对UFS 文件系统运行一致性检查。
# quotacheck [-va] filesystem
-v (可选)确定每个用户在特定文件系统中的磁盘配额。
-a 检查所有文件系统的rq 项,该项包含在/etc/vfstab 文件中。
filesystem 指定要检查的文件系统。
1
2
示例14–3
1
2
设置配额(任务图)
258 系统管理指南:高级管理• 2006 年7 月
有关更多信息,请参见quotacheck(1M) 手册页。
检查配额一致性
以下示例说明如何检查/dev/rdsk/c0t0d0s7 磁盘分片中/export/home 文件系统的配额。
/export/home 文件系统是唯一在/etc/vfstab 文件中包含rq 项的文件系统。
# quotacheck -va
*** Checking quotas for /dev/rdsk/c0t0d0s7 (/export/home)
如何启用配额
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
打开文件系统配额。
# quotaon [-v] -a filesystem ...
-v 启用配额后为每个文件系统显示一条消息。
-a 为在/etc/vfstab 文件中包含rq 项的所有文件系统启用配额。
filesystem ... 为指定的一个或多个文件系统启用配额。指定多个文件系统时,需要用空格
来分隔每个文件系统的名称。
启用配额
以下示例说明如何为/dev/dsk/c0t4d0s7 和/dev/dsk/c0t3d0s7 磁盘分片上的文件系统启用
配额。
# quotaon -v /dev/dsk/c0t4d0s7 /dev/dsk/c0t3d0s7
/dev/dsk/c0t4d0s7: quotas turned on
/dev/dsk/c0t3d0s7: quotas turned on
示例14–4
1
2
示例14–5
设置配额(任务图)
第14 章• 管理配额(任务) 259
维护配额(任务图)
任务说明参考
检查超过的配额。显示在使用quota 命令激活配额
的文件系统中各用户的配额和磁
盘使用情况。
第260 页中的“如何检查超过的
配额”
检查文件系统中的配额。使用repquota 命令显示一个或
多个文件系统中的所有用户的配
额和磁盘使用情况。
第261 页中的“如何检查文件系
统中的配额”
更改软限制缺省值。使用edquota 命令更改用户可以
超过其磁盘空间配额或inode 配
额的时间长度。
第263 页中的“如何更改软限制
缺省值”
更改用户的配额。使用配额编辑器edquota 更改单
个用户的配额。
第264 页中的“如何为用户更改
配额”
对用户禁用配额。使用配额编辑器edquota 对单个
用户禁用配额。
第265 页中的“如何为用户禁用
配额”
关闭配额。使用quotaoff 命令关闭配额。第266 页中的“如何关闭配额”
检查配额
设置并打开磁盘配额和inode 配额后,即可检查超过其配额的用户。此外,还可以检查整个
文件系统的配额信息。
下表介绍了用于检查配额的命令。
表14–2用于检查配额的命令
命令任务
quota(1M) 显示用户配额和当前磁盘使用情况,以及有关超过其配额的用
户的信息
repquota(1M) 显示指定文件系统所拥有的配额、文件和空间量
如何检查超过的配额
在已使用quota 命令激活配额的文件系统中,您可以显示各个用户的配额和磁盘使用情况。
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
1
维护配额(任务图)
260 系统管理指南:高级管理• 2006 年7 月
显示启用配额的已挂载文件系统的用户配额。
# quota [-v] username
-v 显示在具有配额的所有已挂载文件系统中的一个或多个用户的配额。
username 用户帐户的登录名或UID。
检查超过的配额
以下示例显示由UID 301 标识的用户帐户有一个1KB的配额,但尚未使用任何磁盘空间。
# quota -v 301
Disk quotas for bob (uid 301):
Filesystem usage quota limit timeleft files quota limit timeleft
/export/home 0 12 0 2 3
Filesystem 文件系统的挂载点。
usage 当前的块使用情况。
quota 软块限制。
limit 硬块限制。
timeleft 配额计时器中剩余的时间,以天为单位。
files 当前的inode 使用情况。
quota 软inode 限制。
limit 硬inode 限制。
timeleft 配额计时器中剩余的时间,以天为单位。
如何检查文件系统中的配额
使用repquota 命令显示一个或多个文件系统中的所有用户的配额和磁盘使用情况。
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
显示一个或多个文件系统的所有配额(即使未使用也显示)。
# repquota [-v] -a filesystem
-v 报告所有用户的配额,包括那些不占用资源的用户。
2
示例14–6
1
2
检查配额
第14 章• 管理配额(任务) 261
-a 报告所有文件系统。
filesystem 报告指定的文件系统。
检查文件系统中的配额
以下示例显示在仅对一个文件系统(/export/home) 启用配额的系统中repquota 命令的输
出。
# repquota -va
/dev/dsk/c0t3d0s7 (/export/home):
Block limits File limits
User used soft hard timeleft used soft hard timeleft
#301-- 0 1 2.0 days 0 2 3
#341-- 57 50 60 7.0 days 2 90 100
Block limits 定义
used 当前的块使用情况。
soft 软块限制。
hard 硬块限制。
timeleft 配额计时器中剩余的时间,以天为单位。
File limits 定义
used 当前的inode 使用情况。
soft 软inode 限制。
hard 硬inode 限制。
timeleft 配额计时器中剩余的时间,以天为单位。
更改和删除配额
您可以更改配额,以调整用户可以占用的磁盘空间量或inode 数量。还可以根据需要,为个
别用户或从整个文件系统中删除配额。
下表介绍了用于更改配额或删除配额的命令。
示例14–7
更改和删除配额
262 系统管理指南:高级管理• 2006 年7 月
表14–3用于更改配额和删除配额的命令
命令手册页说明
edquota edquota(1M) 更改每个用户的inode 数量或磁盘空间量的硬限制
和软限制。此外,还要更改具有配额的每个文件
系统的软限制。
quotaoff quotaon(1M) 关闭指定文件系统的配额。
如何更改软限制缺省值
缺省情况下,用户可以超过其配额软时间限制一周。因此,在重复违反磁盘空间配额或
inode 配额软时间限制一周后,系统将禁止用户使用更多的inode 或磁盘块。
使用edquota 命令可以更改用户可超过其磁盘空间配额或inode 配额的时间长度。
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
使用配额编辑器创建包含软时间限制的临时文件。
# edquota -t
其中,-t 选项指定为每个文件系统编辑软时间限制。
将时间限制从0(缺省值)更改为指定的时间限制。因此,请使用数字和关键字month、
week、day、hour、min 或sec。
注– 此过程不会影响当前的配额违反者。
更改软限制缺省值
以下示例显示了edquota 命令在某一系统(其中/export/home 是唯一具有配额的已挂载文
件系统)中打开的临时文件的内容。缺省值0 表示缺省时间限制为一周。
fs /export/home blocks time limit = 0 (default), files time limit = 0 (default)
以下示例显示了在将超过块配额的时间限制更改为2 周之后的同一临时文件。而且,超过
文件数的时间限制已更改为16 天。
fs /export/home blocks time limit = 2 weeks, files time limit = 16 days
1
2
3
示例14–8
更改和删除配额
第14 章• 管理配额(任务) 263
如何为用户更改配额
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
使用配额编辑器打开一个临时文件,对于在文件系统的根目录中具有quotas 文件的每个已
挂载文件系统,该文件都包含一行配额信息。
# edquota username
其中,username 指定要更改其配额的用户名。
注意– 可以将多个用户指定为edquota 命令的参数。但不显示此信息所属的用户。为避免混
乱,请仅指定一个用户名。
指定1KB磁盘块的数量(软限制和硬限制)和inode 数量(软限制和硬限制)。
验证是否已正确更改了用户的配额。
# quota -v username
-v 显示已启用配额的所有已挂载文件系统中的用户配额信息。
username 指定要检查其配额的用户名。
为用户更改配额
以下示例显示了由edquota 命令打开的临时文件的内容。在打开此临时文件的系统中,
/files 是在文件系统的根目录中包含quotas 文件的唯一已挂载文件系统。
fs /files blocks (soft = 0, hard = 0) inodes (soft = 0, hard = 0)
以下输出显示了更改配额后的同一临时文件。
fs /files blocks (soft = 0, hard = 500) inodes (soft = 0, hard = 100)
验证是否已更改了硬配额
以下示例说明如何验证用户smith 的硬配额是否已更改为500 个1KB块和100 个inode。
# quota -v smith
Disk quotas for smith (uid 12):
Filesystem usage quota limit timeleft files quota limit timeleft
1
2
3
4
示例14–9
示例14–10
更改和删除配额
264 系统管理指南:高级管理• 2006 年7 月
/files 10 500 10 100
如何为用户禁用配额
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
使用配额编辑器创建一个临时文件,对于在其顶层目录中包含quotas 文件的已挂载文件系
统,该临时文件都包含一行配额信息。
# edquota username
其中,username 指定要禁用其配额的用户名。
注意– 可以将多个用户指定为edquota 命令的参数。但不显示此信息所属的用户。为避免混
乱,请仅指定一个用户名。
将1KB磁盘块的数量(软块和硬块)和inode 数量(软inode 和硬inode)更改为0。
注– 确保将上述值更改为零。请勿从文本文件中删除该行。
验证是否已禁用用户的配额。
# quota -v username
-v 显示已启用配额的所有已挂载文件系统中的用户配额信息。
username 指定要检查其配额的用户名(UID)。
为用户禁用配额
以下示例显示了由edquota 命令在系统中打开的临时文件的内容,其中/files 是在文件系
统的根目录中包含配额文件的唯一已挂载文件系统。
fs /files blocks (soft = 50, hard = 60) inodes (soft = 90, hard = 100)
以下示例显示了禁用配额后的同一临时文件。
fs /files blocks (soft = 0, hard = 0) inodes (soft = 0, hard = 0)
1
2
3
4
示例14–11
更改和删除配额
第14 章• 管理配额(任务) 265
如何关闭配额
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《System
Administration Guide: Security Services》中的“Configuring RBAC (Task Map)”。
关闭文件系统配额。
# quotaoff [-v] -a filesystem ...
-v 显示关闭配额时每个文件系统中的消息。
-a 为所有文件系统关闭配额。
filesystem 为指定的一个或多个文件系统关闭配额。指定多个文件系统时,需要用空格来
分隔每个文件系统的名称。
关闭配额
以下示例说明如何为/export/home 文件系统关闭配额。
# quotaoff -v /export/home
/export/home: quotas turned off
1
2
示例14–12
更改和删除配额
266 系统管理指南:高级管理• 2006 年7 月
调度系统任务(任务)
本章介绍如何使用crontab 和at 命令来调度例程或单个(一次)系统任务。本章还说明如
何使用以下文件来控制对上述命令的访问:
cron.deny
cron-allow
at.deny
有关与调度系统任务关联的过程信息,请参见以下内容:
第267 页中的“创建和编辑crontab 文件(任务图)”
第280 页中的“使用at 命令(任务图)”
创建和编辑crontab 文件(任务图)
任务说明参考
创建或编辑crontab 文
件。
使用crontab -e 命令来创建或编辑
crontab 文件。
第272 页中的“如何创建或编辑
crontab 文件”
验证crontab 文件是否存
在。
使用ls -l 命令验证
/var/spool/cron/crontabs 文件的内
容。
第273 页中的“如何验证crontab
文件是否存在”
显示crontab 文件。使用ls -l 命令显示crontab 文件。第274 页中的“如何显示crontab
文件”
删除crontab 文件crontab 文件设置时使用了受限权
限。使用crontab -r 命令而不是rm
命令删除crontab 文件。
第275 页中的“如何删除crontab
文件”
15 第1 5 章
267
任务说明参考
拒绝crontab 访问要拒绝用户对crontab 命令的访问,
请通过编辑/etc/cron.d/cron.deny
文件将用户名添加到该文件中。
第277 页中的“如何拒绝crontab
命令访问”
将crontab 访问限制于指
定的用户。
要允许用户访问crontab 命令,请将
用户名添加到
/etc/cron.d/cron.allow 文件中。
第278 页中的“如何将crontab
命令访问限制于指定的用户”
自动执行系统任务的方法
可以设置多个要自动执行的系统任务。其中有些任务应该以固定间隔进行。其他任务只需
运行一次,可能是在晚间或周末等非高峰时间。
本节包含有关crontab 和at 这两个命令的概述信息,使用这两个命令可以调度要自动执行
的例程任务。crontab 命令用于调度重复性命令。at 命令则用于调度只执行一次的任务。
下表总结了crontab 和at 命令以及可用来控制对这些命令的访问的文件。
表15–1命令摘要:调度系统任务
命令调度内容文件位置控制访问的文件
crontab 固定间隔的多
个系统任务
/var/spool/cron/crontabs /etc/cron.d/cron.allow 和
/etc/cron.d/cron.deny
at 单个系统任务/var/spool/cron/atjobs /etc/cron.d/at.deny
也可以使用Solaris Management Console 的调度作业工具来调度例程任务。有关使用和启动
Solaris Management Console 的信息,请参见《System Administration Guide: Basic
Administration》中的第2 章,“WorkingWith the Solaris Management Console (Tasks)”。
用于调度重复性作业: crontab
可以使用crontab 命令来调度例程系统管理任务,使其每日、每周或每月执行一次。
每日crontab 系统管理任务可能包括以下内容:
从临时目录中删除几天前的文件
执行记帐摘要命令
使用df 和ps 命令获取系统快照
执行每日安全监视
运行系统备份
每周crontab 系统管理任务可能包括以下内容:
自动执行系统任务的方法
268 系统管理指南:高级管理• 2006 年7 月
通过man -k 命令重新生成可供使用的catman 数据库
运行fsck -n 命令以列出任何磁盘问题
每月crontab 系统管理任务可能包括以下内容:
列出在特定月份中未使用的文件
生成每月记帐报告
此外,用户还可以调度crontab 命令以执行其他例程系统任务,例如发送提醒和删除备份文
件。
有关调度crontab 作业的逐步说明,请参见第272 页中的“如何创建或编辑crontab 文件
”。
用于调度单个作业: at
通过at 命令可以调度要在以后执行的作业。该作业可由单个命令或脚本组成。
与crontab 类似,使用at 命令可以调度例程任务的自动执行。但与crontab 文件不同的是,
at 文件只执行一次任务。然后,便从目录中删除这些文件。因此,在运行将输出定向到独
立文件中以供以后检查的单个命令或脚本时,at 命令很有用。
提交at 作业包括键入命令并按照at 命令语法指定选项来调度执行作业的时间。有关提交
at 作业的更多信息,请参见第281 页中的“at 命令的说明”。
at 命令会在/var/spool/cron/atjobs 目录中存储您运行的命令或脚本以及当前环境变量的
副本。at 作业文件名是一个长数字,用于指定该文件在at 队列中的位置,后面是.a 扩展
名,例如793962000.a。
cron 守护进程在启动时检查at 作业并侦听是否提交了新作业。cron 守护进程执行at 作业
后,将从atjobs 目录中删除at 作业的文件。有关更多信息,请参见at(1) 手册页。
有关调度at 作业的逐步说明,请参见第282 页中的“如何创建at 作业”。
调度重复性系统任务(cron)
以下各节介绍如何创建、编辑、显示和删除crontab 文件以及如何控制对这些文件的访问。
在crontab 文件内
cron 守护进程会根据在每个crontab 文件中找到的命令来调度系统任务。crontab 文件由命
令组成,每个命令占据一行,这些命令将以固定间隔执行。每行开头包含日期和时间信
息,以告知cron 守护进程何时执行命令。
例如,在SunOS 软件安装期间提供名为root 的crontab 文件。该文件的内容包括以下命令
行:
阅读(428) | 评论(0) | 转发(0) |