runacct(1M)
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.
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
wtmp
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 and 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 wtmp.
The lock, lock1, and
lastdate files must be removed
before runacct can be restarted.
The argument mmdd is necessary if runacct is being restarted,
and 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.
Files
/var/adm/wtmp-
/var/adm/pacctincr-
/usr/src/cmd/acct/tacct.h-
/usr/src/cmd/acct/ctmp.h-
/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/statefile-
Examples
To start runacct:
nohup runacct 2 > /var/adm/acct/nite/fd2log &
To restart runacct:
nohup runacct 0601 2 >> /var/adm/acct/nite/fd2log &
To restart runacct at a specific state:
nohup runacct 0601 MERGE 2 >> /var/adm/acct/nite/fd2log &
References
acct(1M),
acct(2),
acct(4),
acctcms(1M),
acctcom(1),
acctcon(1M),
acctmerg(1M),
acctprc(1M),
acctsh(1M),
cron(1M),
fwtmp(1M),
mail(1),
utmp(4)
Notices
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.
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004