other sections
ACCT(2) | 리눅스 프로그래머 메뉴얼 | ACCT(2) |
이름¶
acct - 프로세스 계정 작업을 활성화시키거나 비활성화시킨다.
사용법¶
#include <unistd.h> int acct(const char *filename);
설명¶
어떤 파일 이름을 인자로 주어 호출할 경우, 계정 작업이 활성화되고 각 프로세스가 종료될 때마다 filename 파일에 기록이 추가된다. 인자를 NULL로 주면 계정 작업이 비활성화된다.
반환값¶
성공시 0을 반환하고, 실패시 -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도 지원한다. (동일한 파일을 사용 중일 경우에도 어카운팅이 지원된다).
주의¶
프로그램이 정상 종료되지 않았을 때 어떠한 어카운팅도 없으며, 보통 비정상 종료 프로세스는 어카운팅되지 않는다.
번역¶
ASPLINUX <man@asp-linux.co.kr> 2000년 7월
29일
한글 Manpage 프로젝트
(http://man.kldp.org) 2004년 3월 10일
1998년 11월 4일 | 리눅스 2.1.126 |