zion - chroot
Nom
chroot - Modifier le répertoire racine.
Résumé
#include <unistd.h> int chroot (const char * path );
Description
chroot remplace le répertoire racine du processus en cours par celui spécifié par le chemin path . Ce répertoire sera utilisé comme origine des chemins commençant par /. Le répertoire racine est hérité par tous les enfants du processus ayant fait le changement. Seul le Super-User peut effectuer un changement de répertoire racine. Notez que cet appel système ne modifie pas le répertoire de travail, aussi `.' peut se retrouver en-dehors de l'arbre dont la racine est `/'. En particulier, le Super-User peut s'évader d'un "piège chroot" en faisant `mkdir foo; chroot foo; cd ..'.
Valeur renvoyée
chroot renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.
Erreurs
Suivant le type de système de fichiers, plusieurs erreurs peuvent être renvoyées. Les plus courantes sont les suivantes :
EPERM
L'UID effectif du processus n'est pas nul. |
EFAULT path
pointe en dehors de l'espace d'adressage accessible. |
ENAMETOOLONG path
est trop long. |
ENOENT
Le fichier n'existe pas. |
ENOMEM
Pas assez de mémoire pour le noyau. |
ENOTDIR
Un élément du chemin d'accès n'est pas un répertoire. |
EACCES
L'accès à un élément du chemin est interdit. |
ELOOP path
contient une référence circulaire (à travers un lien symbolique) EIO Une erreur d'entrée/sortie de bas-niveau s'est produite. |
Conformité
SVr4, SVID, 4.4BSD, X/OPEN. Cette fonction n'est pas décrite dans POSIX.1 SVr4 indique des conditions d'erreurs supplémentaires EINTR, ENOLINK et EMULTIHOP. X/OPEN ne décrit pas les erreurs EIO, ENOMEM, et EFAULT.
Voir aussi
chdir (2)
Traduction
Christophe Blaess, 1996-2003.
Poster un commentaire