CHROOT(2)

NOMBRE
chroot - cambia el directorio raíz.

SINOPSIS
#include <unistd.h>

int chroot(const char *path);

DESCRIPCIÓN
chroot cambia el directorio raíz a aquel especificado en path. Este directorio será usado como raíz para aquellos nombres de camino que comiencen por /. El directorio raíz es heredado por todos los descendientes del proceso actual.

Solamente el superusuario puede cambiar el directorio raíz.

Note que esta llamada no cambia el directorio de trabajo actual, por lo que el directorio '.' puede estar fuera del árbol enraizado en '/'. En particular, el super-usuario puede escapar de una `prisión chroot' haciendo `mkdir foo; chroot foo; cd ..'.

VALOR DEVUELTO
En caso de éxito 0, si hay algún error, -1, y a la variable errno se le asigna un valor adecuado.

ERRORES
Según el sistema de ficheros, se pueden obtener otros errores. Los errores más comunes se listan a continuación:

EPERM
    El UID efectivo no es 0.

EFAULT
    path apunta fuera de su espacio de direcciones accesibles.

ENAMETOOLONG
    path es demasiado largo.

ENOENT
    El fichero no existe.

ENOMEM
    No había suficiente memoria disponible en el núcleo.

ENOTDIR
    Un componente del camino path no es un directorio.

EACCES
    Permiso de búsqueda denegado en uno de los componentes del camino path.

ELOOP
    Se encontraron demasiados enlaces simbólicos al resolver path.

EIO Ocurrió un error de E/S.

CONFORME A
SVr4, SVID, 4.4BSD y X/OPEN. Esta función no es parte de POSIX.1. SVr4 documenta además las condiciones de error EINTR, ENOLINK y EMULTIHOP. X/OPEN no documenta las condiciones de error EIO, ENOMEM ni EFAULT. Esta interfaz es clasificada por X/OPEN como legado.

VÉASE TAMBIÉN
chdir(2)