修正记帐错误

您可以修正日期和时间戳记不一致的情况。

必须具有 root 用户或 adm 组权限才能执行此过程。

处理 /var/adm/wtmp 文件会产生一些警告,并通过邮件发送给 root 用户。 wtmp 文件包含 /etc/init/bin/login 收集的信息并且主要由记帐脚本用于计算连接时间(用户登录的时间长度)。 很不幸,日期更改干扰了处理 wtmp 文件的程序。 结果,runacct 命令将邮件发送到 root 用户和 adm 用户,报告自上次运行记帐以来的日期更改后的任何错误。

  1. 确定您是否收到任何错误。
    acctcon1 命令会输出错误消息,这些错误消息由 runacct 命令通过邮件发送给 adm 用户和 root 用户。
    例如,如果日期更改后 acctcon1 命令出错并且收集连接时间失败,那么 adm 用户可能获取与以下邮件消息相似的邮件:
    Mon Jan 6 11:58:40 CST 1992
    acctcon1: bad times: old: Tue Jan 7 00:57:14 1992
    new: Mon Jan 6 11:57:59 1992
    acctcon1: bad times: old: Tue Jan 7 00:57:14 1992
    new: Mon Jan 6 11:57:59 1992
    acctcon1: bad times: old: Tue Jan 7 00:57:14 1992
    new: Mon Jan 6 11:57:59 1992
  2. 通过输入以下命令调整 wtmp 文件:
    /usr/sbin/acct/wtmpfix wtmp
    wtmpfix 命令会检查 wtmp 文件的日期和时间戳记不一致情况,并修正可能导致 acctcon1 失败的问题。 然而,一些日期更改被 wtmpfix 忽略。
  3. 关闭前或启动后立即运行记帐权限。
    在这些时间使用 runacct 命令最小化有停工时间的项的数量。 runacct 命令会持续地将邮件发送到 root 和 adm 帐户,直至进行以下操作为止:编辑 runacct 脚本,找到 WTMPFIX 一节,并注释掉将文件日志设置为通过邮件发送到 root 和 adm 帐户的行。