可将系统记帐设置为在系统处于多用户模式时运行(运行级 2)。通常,此任务涉及以下步骤:
创建 /etc/rc0.d/K22acct 和 /etc/rc2.d/S22acct 启动脚本
修改 /var/spool/cron/crontabs/adm 和 /var/spool/cron/crontabs/root crontab 文件
目的 |
记帐脚本 |
手册页 |
运行频率 |
---|---|---|---|
检查 /usr/adm/pacct 日志文件的大小并确保该文件不会太大。 |
ckpacct |
定期 |
|
处理连接、磁盘和费用记帐的信息。如果不想执行某些记帐功能,则可从此脚本中删除相应命令。 |
runacct |
每日 |
|
每月生成一次财务记帐摘要报告。您可以确定此脚本的运行频率。如果不想使用某些记帐功能,则可从此脚本中删除相应命令。 |
monacct |
按财务周期 |
可以选择缺省情况下运行的记帐脚本。将这些项添加到 crontab 文件后,系统记帐应自动运行。
成为超级用户或同等角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。
安装 /etc/init.d/acct 作为运行级 2 的启动脚本。
# ln /etc/init.d/acct /etc/rc2.d/S22acct |
安装 /etc/init.d/acct 作为运行级 0 的停止脚本。
# ln /etc/init.d/acct /etc/rc0.d/K22acct |
向 adm crontab 文件中添加以下行,以自动启动 ckpacct、runacct 和 monacct 脚本。
# EDITOR=vi; export EDITOR # crontab -e adm 0 * * * * /usr/lib/acct/ckpacct 30 2 * * * /usr/lib/acct/runacct 2> /var/adm/acct/nite/fd2log 30 7 1 * * /usr/lib/acct/monacct |
向 root crontab 文件中添加以下行,以自动启动 dodisk 脚本。
# crontab -e 30 22 * * 4 /usr/lib/acct/dodisk |
编辑 /etc/acct/holidays 以包括国定假日和当地假日。
有关更多信息,请参见 holidays(4) 手册页及后面的示例。
# /etc/init.d/acct start |
这一修改的 adm crontab 包含 ckpacct、runacct 和 monacct 脚本的项。
#ident "@(#)adm 1.5 92/07/14 SMI" /* SVr4.0 1.2 */ # # The adm crontab file should contain startup of performance # collection if the profiling and performance feature has been # installed. 0 * * * * /usr/lib/acct/ckpacct 30 2 * * * /usr/lib/acct/runacct 2> /var/adm/acct/nite/fd2log 30 7 1 * * /usr/lib/acct/monacct |
这一修改的 root crontab 包含 dodisk 程序的项。
#ident "@(#)root 1.19 98/07/06 SMI" /* SVr4.0 1.1.3.1 */ # # The root crontab should be used to perform accounting data collection. # # 10 3 * * * /usr/sbin/logadm 15 3 * * 0 /usr/lib/fs/nfs/nfsfind 30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean 30 22 * * 4 /usr/lib/acct/dodisk |
以下示例显示一个 /etc/acct/holidays 文件样例。
* @(#)holidays January 1, 2004 * * Prime/Nonprime Table for UNIX Accounting System * * Curr Prime Non-Prime * Year Start Start * 2004 0800 1800 * * only the first column (month/day) is significant. * * month/day Company * Holiday * 1/1 New Years Day 7/4 Indep. Day 12/25 Christmas |