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.