RUNACCT(8) Maintenance Commands and Procedures RUNACCT(8)
NAME
runacct - run daily accounting
SYNOPSIS
/usr/lib/acct/runacct [
mmdd [
state]]
DESCRIPTION
runacct is the main daily accounting shell procedure. It is normally
initiated using
cron.
runacct processes connect, fee, disk, and
process accounting files. It also prepares summary files for
prdaily or billing purposes.
runacct is distributed only to source code
licensees.
runacct takes care not to damage active accounting files or summary
files in the event of errors. It records its progress by writing
descriptive diagnostic messages into
active. When an error is
detected, a message is written to
/dev/console, mail (see
mail(1)) is
sent to
root and
adm, and
runacct terminates.
runacct uses a series
of lock files to protect against re-invocation. The files
lock and
lock1 are used to prevent simultaneous invocation, and
lastdate is
used to prevent more than one invocation per day.
runacct breaks its processing into separate, restartable
states using
statefile to remember the last
state completed. It accomplishes this
by writing the
state name into
statefile.
runacct then looks in
statefile to see what it has done and to determine what to process
next.
states are executed in the following order:
SETUP Move active accounting files into working files.
WTMPFIX Verify integrity of
wtmpx file, correcting date changes
if necessary.
CONNECT Produce connect session records in
tacct.h format.
PROCESS Convert process accounting records into
tacct.h format.
MERGE Merge the connect and process accounting records.
FEES Convert output of
chargefee into
tacct.h format, merge
with connect, and process accounting records.
DISK Merge disk accounting records with connect, process,
and fee accounting records.
MERGETACCT Merge the daily total accounting records in
daytacct with the summary total accounting records in
/var/adm/acct/sum/tacct.
CMS Produce command summaries.
USEREXIT Any installation dependent accounting programs can be
included here.
CLEANUP Clean up temporary files and exit. To restart
runacct after a failure, first check the
active file for
diagnostics, then fix any corrupted data files, such as
pacct or
wtmpx. The
lock,
lock1, and
lastdate files
must be removed before
runacct can be restarted. The
argument
mmdd is necessary if
runacct is being
restarted.
mmdd specifies the month and day for which
runacct will rerun the accounting. The entry point for
processing is based on the contents of
statefile; to
override this, include the desired
state on the command
line to designate where processing should begin.
EXAMPLES
Example 1: Starting runacct
The following example starts
runacct:
example% nohup runacct 2> /var/adm/acct/nite/fd2log &
Example 2: Restarting runacct
The following example restarts
runacct:
example% nohup runacct 0601 2>> /var/adm/acct/nite/fd2log &
Example 3: Restarting runacct at a Specific State
The following example restarts
runacct at a specific state:
example% nohup runacct 0601 MERGE 2>> /var/adm/acct/nite/fd2log &
FILES
/var/adm/wtmpx History of user access and administration information
/var/adm/pacctincr /var/adm/acct/nite/active /var/adm/acct/nite/daytacct /var/adm/acct/nite/lock /var/adm/acct/nite/lock1 /var/adm/acct/nite/lastdate /var/adm/acct/nite/statefileSEE ALSO
acctcom(1),
mail(1),
acct(2),
acct.h(3HEAD),
utmpx(5),
attributes(7),
acct(8),
acctcms(8),
acctcon(8),
acctmerg(8),
acctprc(8),
acctsh(8),
cron(8),
fwtmp(8)NOTES
It is not recommended to restart
runacct in the
SETUP state. Run
SETUP manually and restart using:
runacct mmdd WTMPFIX If
runacct failed in the
PROCESS state, remove the last
ptacct file
because it will not be complete.
The
runacct command can process a maximum of
o 6000 distinct sessions
o 1000 distinct terminal lines
o 2000 distinct login names
during a single invocation of the command. If at some point the
actual number of any one of these items exceeds the maximum, the
command will not succeed.
Do not invoke
runacct at the same time as
ckpacct, as there may be a
conflict if both scripts attempt to execute
turnacct switch simultaneously.
May 11, 1999 RUNACCT(8)