RUNACCT(1M) INTERACTIVE UNIX System RUNACCT(1M)
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 via cron(1M). 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 pro-
gress 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 sta-
tefile. runacct then looks in statefile to see what it has
done and to determine what to process next. States are exe-
cuted in the following order:
SETUP Move active accounting files into working
files.
WTMPFIX Verify integrity of wtmp file, correcting
date changes if necessary.
CONNECT1 Produce connect session records in ctmp.h
format.
CONNECT2 Convert ctmp.h records into 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 and merge with connect and process
accounting records.
DISK Merge disk accounting records with connect,
process, and fee accounting records.
Rev. Page 1
RUNACCT(1M) INTERACTIVE UNIX System RUNACCT(1M)
MERGETACCT Merge the daily total accounting records in
daytacct with the summary total accounting
records in /usr/adm/acct/sum/tacct.
CMS Produce command summaries.
USEREXIT Any installation-dependent accounting pro-
grams can be included here.
CLEANUP Cleanup temporary files and exit.
To restart runacct after a failure, first check the active
file for diagnostics, then fix up any corrupted data files
such as pacct or wtmp. The lock files and lastdate file
must be removed before runacct can be restarted. The argu-
ment mmdd is necessary if runacct is being restarted, and
specifies the month and day for which runacct will rerun the
accounting. Entry point for processing is based on the con-
tents of statefile; to override this, include the desired
state on the command line to designate where processing
should begin.
EXAMPLES
To start runacct.
nohup runacct 2> /usr/adm/acct/nite/fd2log &
To restart runacct.
nohup runacct 0601 2>> /usr/adm/acct/nite/fd2log &
To restart runacct at a specific state.
nohup runacct 0601 MERGE 2>> /usr/adm/acct/nite/fd2log &
FILES
/etc/wtmp
/usr/adm/pacct*
/usr/src/cmd/acct/tacct.h
/usr/src/cmd/acct/ctmp.h
/usr/adm/acct/nite/active
/usr/adm/acct/nite/daytacct
/usr/adm/acct/nite/lock
/usr/adm/acct/nite/lock1
/usr/adm/acct/nite/lastdate
/usr/adm/acct/nite/statefile
/usr/adm/acct/nite/ptacct*.mmdd
SEE ALSO
acct(1M), acctcms(1M), acctcom(1), acctcon(1M),
acctmerg(1M), acctprc(1M), acctsh(1M), cron(1M), fwtmp(1M),
mail(1).
acct(2), acct(4), utmp(4) in the INTERACTIVE SDS Guide and
Programmer's Reference Manual.
BUGS
Rev. Page 2
RUNACCT(1M) INTERACTIVE UNIX System RUNACCT(1M)
Normally, it is not a good idea to restart runacct in the
SETUP state. Run SETUP manually and restart via:
runacct mmdd WTMPFIX
If runacct failed in the PROCESS state, remove the last
ptacct file because it will not be complete.
Rev. Page 3