fchroot man page on Solaris

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
Solaris logo
[printable version]

chroot(2)			 System Calls			     chroot(2)

       chroot, fchroot - change root directory

       #include <unistd.h>

       int chroot(const char *path);

       int fchroot(int fildes);

       The  chroot()  and  fchroot() functions cause a directory to become the
       root directory, the starting point for path  searches  for  path	 names
       beginning with / (slash). The user's working directory is unaffected by
       the chroot() and fchroot() functions.

       The path argument points to a path name naming a directory. The	fildes
       argument	 to  fchroot()	is  the	 open file descriptor of the directory
       which is to become the root.

       The privilege {PRIV_PROC_CHROOT} must be asserted in the effective  set
       of  the process to change the root directory. While it is always possi‐
       ble to change to the system root using the fchroot()  function,	it  is
       not guaranteed to succeed in any other case, even if fildes is valid in
       all respects.

       The ".." entry in the root directory is interpreted to  mean  the  root
       directory  itself.  Therefore, ".." cannot be used to access files out‐
       side the subtree rooted at the root directory. Instead,	fchroot()  can
       be  used	 to  reset  the root to a directory that was opened before the
       root directory was changed.

       Upon successful completion, 0 is returned. Otherwise, −1	 is  returned,
       the  root directory remains unchanged, and errno is set to indicate the

       The chroot() function will fail if:

       EACCES		       Search permission is denied for a component  of
			       the  path  prefix of dirname, or search permis‐
			       sion is denied for the directory referred to by

       EBADF		       The descriptor is not valid.

       EFAULT		       The path argument points to an illegal address.

       EINVAL		       The fchroot() function attempted to change to a
			       directory the is not the system root and exter‐
			       nal circumstances do not allow this.

       EINTR		       A signal was caught during the execution of the
			       chroot() function.

       EIO		       An I/O error occurred  while  reading  from  or
			       writing to the file system.

       ELOOP		       Too  many  symbolic  links  were encountered in
			       translating path.

       ENAMETOOLONG	       The  length  of	the  path   argument   exceeds
			       PATH_MAX,  or  the  length  of a path component
			       exceeds NAME_MAX while  _POSIX_NO_TRUNC	is  in

       ENOENT		       The named directory does not exist or is a null

       ENOLINK		       The path argument points to  a  remote  machine
			       and  the	 link  to  that	 machine  is no longer

       ENOTDIR		       Any component of the path name is not a	direc‐

       EPERM		       The   {PRIV_PROC_CHROOT}	  privilege   is   not
			       asserted in the effective set  of  the  calling

       chroot(1M), chdir(2), privileges(5)

       The  only use of fchroot() that is appropriate is to change back to the
       system root.

SunOS 5.10			  20 Jan 2003			     chroot(2)

List of man pages available for Solaris

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net