CHROOT
Section: 리눅스 프로그래머 메뉴얼 (2)
Updated: 1997년 8월 21일
Index
Return to Main Contents
이름
chroot - 루트 디렉토리를 바꾼다.
사용법
#include <unistd.h>
int chroot(const char *path);
설명
chroot는
path가
지정한 곳으로 루트 디렉토리를 바꾼다.
이 디렉토리는 /으로 시작하는 경로 이름이 사용된다.
루트 디렉토리는 현재 프로세스의 모든 자식 프로세스에게 상속된다.
슈퍼유저만이 루트 디렉토리를 바꿀 수 있다.
이 시스템 콜은 현재 작업 디렉토리는 바꾸지 않는다. 그래서 `.'는
`/'으로 지정된 루트 트리 밖의 위치가 될 수도 있다.
반환값
성공시, 0이 리턴된다. 에러시, -1이 리턴되며,
errno는
적당한 값으로 설정된다.
에러
파일 시스템에 의존적이며, 다른 에러가 리턴될 수 있다.
일반적인 에러 목록은 다음과 같다:
- EPERM
-
유효 UID가 0이 아니다.
- EFAULT
-
path가
접근할 수 없는 메모리 영역을 가리키고 있다.
- ENAMETOOLONG
-
path가
너무 길다.
- ENOENT
-
파일이 존재하지 않는다.
- ENOMEM
-
커널 메모리가 충분치않다.
- ENOTDIR
-
path가
디렉토리가 아니다.
- EACCES
-
허가가 거부되었다.
- ELOOP
-
path를
찾아갈 때, 너무 많은 심볼릭 링크가 존재한다.
- EIO
-
I/O 에러가 발생했다.
호환
SVr4, SVID, 4.4BSD, X/OPEN. 이 함수는 POSIX.1의 일부가 아니다.
SVr4 문서는 EINTR, ENOLINK 그리고 EMULTIHOP 에러 상태들을 추가적으로 기술한다.
X/OPEN은 EIO, ENOMEM 또는 EFAULT 에러 상태를 문서화하지 않았다.
이 시스템 콜은 X/OPNE의 유산물로서 알려져있다.
관련 항목
chdir(2)
역자
정강훈 <skyeyes@soback.kornet.net>, 2000년 5월 1일
Index
- 이름
-
- 사용법
-
- 설명
-
- 반환값
-
- 에러
-
- 호환
-
- 관련 항목
-
- 역자
-
This document was created by
man2html,
using the manual pages.
Time: 08:07:00 GMT, March 25, 2004