acct(2)

NAME
acct - switch process accounting on or off

LIBRARY
Standard C library (libc, -lc)

SYNOPSIS
#include <unistd.h>

int acct(const char *_Nullable path);

    Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

acct():
    Since glibc 2.21:
        _DEFAULT_SOURCE
    In glibc 2.19 and 2.20:
        _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
    Up to and including glibc 2.19:
        _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIPTION
The acct() system call enables or disables process accounting. If called with the pathname of an existing file as its argument, accounting is turned on, and records for each terminating process are appended to the file as it terminates. An argument of NULL causes accounting to be turned off.

RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set to indicate the error.

ERRORS

EACCES
    Write permission is denied for the specified file, or search permission is denied for one of the directories in the path prefix of path (see also path_resolution(7)), or path is not a regular file.

EFAULT
    path points outside your accessible address space.

EIO Error writing to the file path.

EISDIR
    path is a directory.

ELOOP
    Too many symbolic links were encountered in resolving path.

ENAMETOOLONG
    path was too long.

ENFILE
    The system-wide limit on the total number of open files has been reached.

ENOENT
    The specified path does not exist.

ENOMEM
    Out of memory.

ENOSYS
    BSD process accounting has not been enabled when the operating system kernel was compiled. The kernel configuration parameter controlling this feature is CONFIG_BSD_PROCESS_ACCT.

ENOTDIR
    A component used as a directory in path is not in fact a directory.

EPERM
    The calling process has insufficient privilege to enable process accounting. On Linux, the CAP_SYS_PACCT capability is required.

EROFS
    path refers to a file on a read-only filesystem.

EUSERS
    There are no more free file structures or we ran out of memory.

STANDARDS
None.

HISTORY
SVr4, 4.3BSD.

NOTES
No accounting is produced for programs running when a system crash occurs. In particular, nonterminating processes are never accounted for.

The structure of the records written to the accounting file is described in acct(5).

SEE ALSO
acct(5)