acctdisk(8)acctdisk(8)NAME
acctdisk, acctdusg - Perform disk-usage accounting
SYNOPSISacctdisk
acctdusg [-u file] [-pfile]
OPTIONS
Searches file as the alternate file for login names and numbers,
instead of searching /etc/passwd. Writes records of file names for
which it does not charge into file.
DESCRIPTION
Normally the acctdisk and acctdusg commands are called from the dodisk
shell procedure to do disk-usage accounting. The dodisk shell procedure
is invoked when the cron daemon executes commands in the
/usr/spool/cron/crontabs/[filename] file. In the usual case, the out‐
put of the diskusg command is the redirected input to the acctdisk com‐
mand. When a more thorough, but slower, version of disk accounting is
needed, specify the -o option with the dodisk command. This is not nor‐
mally done in the /usr/spool/cron/crontabs/[filename] file. When the
-o option is used, the acctdusg command replaces the diskusg command.
acctdisk
Normally, the acctdisk command reads a temporary output file produced
by the diskusg or the acctdusg command from standard input, converts
each record into a total disk-accounting record, and writes it to stan‐
dard output. These records are merged with other accounting records
with the acctmerg command to produce a daily accounting report.
acctdusg
The acctdusg command is called when the -o option is used with the
dodisk command. This produces a more thorough, but slower, version of
disk-accounting records. Otherwise, the dodisk shell procedure invokes
the diskusg command.
The acctdusg command reads a list of files from standard input (usually
piped from a find / -print command), computes the number of disk blocks
(including indirect blocks) allocated to each file divided by the num‐
ber of hard links then writes an individual record for each user to
standard output.
To find the user who is charged for the file, compare each file path‐
name with the login directories of the users. The user who has the
longest pathname component match is charged for the file. Therefore,
the relevant information for charging users is not ownership of a file
but the directory where it is stored.
The acctdusg command searches the /etc/passwd file, or the alternate
password file specified with the -p option, for login names, numbers
and login directories. Each output record has the following format:
uid login #blocks
EXAMPLES
To start normal disk-accounting procedures, add a line similar to the
following to the /usr/spool/cron/crontabs/[filename] file: 0 2 * * 4
/usr/sbin/acct/dodisk
The foregoing example is a typical, periodically invoked command
that the cron daemon reads and executes. The period is expressed
by a 6-field entry having the format: mm hh daymon monyr wkday
cmd. For any field requiring digits, numbers are integers.
These six fields have the following significance: Purpose Time
variable that has the value 0 through 59 expressing minutes past
the hour. Time variable for the hour of the day in 24-hour
clock notation. Time variable for the day of the month. Time
variable for month of the year. Time variable for the day or
days of the week, where 0 is Sunday and inclusive days are sepa‐
rated with a hyphen (-). Command the cron daemon must execute.
Whenever you write any of the time variables described in the
foregoing table, an unspecified value must be noted with an *
(asterisk) to define an empty field.
In the foregoing example, the dodisk shell procedure runs at
02:00 hours (2) every Thursday (4). The dodisk shell procedure
calls the acctdusg command to redirect its input to a temporary
file and then calls the acctdisk shell procedure to redirect
disk-usage records from the temporary file as input to a
/var/adm/acct/nite/[filename] file as output. The file stored in
the /var/adm/acct/nite subdirectory is a permanent binary
record of disk usage for the specified period. To initiate a
slower, more thorough disk-accounting procedure, add a line sim‐
ilar to the following to the /usr/spool/cron/crontabs/[filename]
file. 0 2 * * 0-4 /usr/sbin/acct/dodisk -o
The dodisk shell procedure calls the acctdusg command and the
acctdisk command to write disk-usage records to
the/var/adm/acct/nite/[filename] file just as in the previous
example. The dodisk procedure runs at 2 a.m. every day (0-6)
including Sunday.
FILES
Specifies the command path. Specifies the command path. User database
file. The active login/logout database file. Accounting header files
that define formats for writing accounting files.
SEE ALSO
Commands: acct(8), acctmerg(8), cron(8), diskusg(8), dodisk(8),
runacct(8)
Functions: acct(2)acctdisk(8)