CHROOT
This document was created by man2html using the manual pages.
Section: Linux Programmer's Manual (2)
Updated: 1997-08-21
Index
Return to NetAdminTools
NAME
chroot - change root directory
SYNOPSIS
#include <unistd.h>
int chroot(const char *path);
DESCRIPTION
chroot
changes the root directory to that specified in
path.
This directory will be used for path names beginning with /. The root
directory is inherited by all children of the current process.
Only the super-user may change the root directory.
Note that this call does not change the current working directory,
so that `.' can be outside the tree rooted at `/'.
In particular, the super-user can escape from a `chroot jail'
by doing `mkdir foo; chroot foo; cd ..'.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and
errno
is set appropriately.
ERRORS
Depending on the file system, other errors can be returned. The more
general errors are listed below:
- EPERM
-
The effective UID is not zero.
- EFAULT
-
path
points outside your accessible address space.
- ENAMETOOLONG
-
path
is too long.
- ENOENT
-
The file does not exist.
- ENOMEM
-
Insufficient kernel memory was available.
- ENOTDIR
-
A component of
path
is not a directory.
- EACCES
-
Search permission is denied on a component of the path prefix.
- ELOOP
-
Too many symbolic links were encountered in resolving
path.
- EIO
-
An I/O error occurred.
CONFORMING TO
SVr4, SVID, 4.4BSD, X/OPEN. This function is not part of POSIX.1.
SVr4 documents additional EINTR, ENOLINK and EMULTIHOP error conditions.
X/OPEN does not document EIO, ENOMEM or EFAULT error conditions.
This interface is marked as legacy by X/OPEN.
SEE ALSO
chdir(2)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- ERRORS
-
- CONFORMING TO
-
- SEE ALSO
-
Return to NetAdminTools,