Linux Man на русском

  User    Syst    Libr    Device    Files    Other    Admin  



   acct - включает или выключает учёт процессов

acct(2) включает или выключает учёт процессов


ОБЗОР

#include <unistd.h>


int acct(const char *filename);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

acct(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)


ОПИСАНИЕ

Системный вызов acct() включает или выключает учёт процессов. Если при вызове, в качестве аргумента, указывается имя существующего файла, происходит включение учёта, и при завершении процесса, в файл filename добавляются записи для каждого завершившегося процесса. Если в качестве аргумента указан NULL, то учёт выключается.


ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.


ОШИБКИ

EACCES Нет прав на запись в указанный файл, или в одном из каталогов в pathname не разрешён поиск (см. также path_resolution(7)), или filename не является обычным файлом.

EFAULT Аргумент filename указывает за пределы доступного адресного пространства.

EIO Ошибка записи в файл filename.

EISDIR filename является каталогом.

ELOOP Во время определения pathname встретилось слишком много символьных ссылок.

ENAMETOOLONG Слишком длинное значение аргумента pathname.

ENFILE Достигнуто максимальное количество открытых файлов в системе.

ENOENT Указанный файл не существует.

ENOMEM Не хватает памяти.

ENOSYS BSD учёт процессов не может быть разрешён, если эта возможность не была включена при компиляции ядра операционной системы. Этой возможностью управляет параметр настройки ядра CONFIG_BSD_PROCESS_ACCT.

ENOTDIR Компонент пути в pathname в действительности не является каталогом.

EPERM Вызвавшему процессу не хватает прав включить учёт процессов. В Linux для этого требуется мандат CAP_SYS_PACCT.

EROFS filename указывает на файл в файловой системе, доступной только для чтения.

EUSERS Закончились свободные файловые структуры или память.


СООТВЕТСТВИЕ СТАНДАРТАМ

SVr4, 4.3BSD (но не POSIX).


ЗАМЕЧАНИЯ

Учёт не производится для программ, которые заканчиваются аварийно. В частности, незавершаемые процессы никогда не учитываются.

Структура записей, записываемых в файл учёта, описана в acct(5).