Provided by: manpages-ru_0.98-4_all bug

ИМЯ

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

ОБЗОР

       #include <unistd.h>

       int acct(const char *filename);

ОПИСАНИЕ

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

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

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

ОШИБКИ

       EACCES Для указанного файла отсутствуют права на запись.

       EACCES Аргумент filename не является обычным файлом.

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

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

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

       ELOOP  Во  время  определения  filename  встретилось  слишком  много   символьных   ссылок
              (зацикливание по символьным сслыкам -- прим. пер.).

       ENAMETOOLONG
              filename слишком длинно.

       ENOENT Файл с указанным именем не существует.

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

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

       ENOTDIR
              Один  из  компонентов  в пути filename который указан как каталог, на самом деле не
              является каталогом.

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

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

       EUSERS Больше нет свободных файловых структур или произошло переполнение памяти.

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

       SVr4 (но не POSIX).  SVr4 документирует условия ошибки EBUSY,  но  не  ошибок  EISDIR  или
       ENOSYS.  Также AIX и HPUX документируют ошибку EBUSY (попытку разрешить учёт, когда он уже
       разрешён), как в Solaris (попытка разрешить учёт, используя такое же  имя  файла,  которое
       уже было использовано).

ЗАМЕЧАНИЕ

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

ПЕРЕВОД

       Перевёл с английского Виктор Вислобоков <corochoone@perm.ru> 2003