FreeBSD manual
download PDF document: acct.2.pdf
ACCT(2) FreeBSD System Calls Manual ACCT(2)
NAME
acct - enable or disable process accounting
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <unistd.h>
int
acct(const char *file);
DESCRIPTION
The acct() system call enables or disables the collection of system
accounting records. If the argument file is a null pointer, accounting
is disabled. If file is an existing pathname (null-terminated), record
collection is enabled and for every process initiated which terminates
under normal conditions an accounting record is appended to file.
Abnormal conditions of termination are reboots or other fatal system
problems. Records for processes which never terminate cannot be produced
by acct().
For more information on the record structure used by acct(), see
<sys/acct.h> and acct(5).
This call is permitted only to the super-user.
NOTES
Accounting is automatically disabled when the file system the accounting
file resides on runs out of space; it is enabled when space once again
becomes available. The values controlling this behaviour can be modified
using the following sysctl(8) variables:
kern.acct_chkfreq Specifies the frequency (in seconds) with which free
disk space should be checked.
kern.acct_resume The percentage of free disk space above which process
accounting will resume.
kern.acct_suspend The percentage of free disk space below which process
accounting will suspend.
RETURN VALUES
On error -1 is returned. The file must exist and the call may be
exercised only by the super-user.
ERRORS
The acct() system call will fail if one of the following is true:
[EPERM] The caller is not the super-user.
[ENOTDIR] A component of the path prefix is not a directory.
[ENAMETOOLONG] A component of a pathname exceeded 255 characters, or
an entire path name exceeded 1023 characters.
[ENOENT] The named file does not exist.
[EROFS] The named file resides on a read-only file system.
[EFAULT] The file argument points outside the process's
allocated address space.
[EIO] An I/O error occurred while reading from or writing to
the file system.
[EINTEGRITY] Corrupted data was detected while reading from the
file system.
SEE ALSO
acct(5), accton(8), sa(8)
HISTORY
The acct() function appeared in Version 7 AT&T UNIX.
FreeBSD 14.2-RELEASE March 30, 2020 FreeBSD 14.2-RELEASE