CHROOT(2)

BEZEICHNUNG
chroot - Root-Verzeichnis wechseln

ÜBERSICHT
#include <unistd.h>

intchroot(constchar*path);

BESCHREIBUNG
chroot wechselt in das durch path angegebenen Root-Verzeichnis. Dieses Verzeichnis wird für Pfadnamen verwendet, die mit / beginnen. Das Root-Verzeichnis wird an alle Child-Prozesse des aktuellen Prozesses vererbt. Nur der Super-User kann das Root-Verzeichnis ändern. Beachten Sie, dass dieser Aufruf keine Auswirkung auf das aktuelle Arbeitsverzeichnis hat, d.h. `.' kann sich außerhalb des mit `/' beginnenden Pfades befinden.

RÜCKGABEWERT
Bei Erfolg wird 0 zurückgegeben. Tritt ein Fehler auf, ist der Rückgabewert -1 und errno wird entsprechend gesetzt.

FEHLER
In Abhängigkeit vom Dateisystem können andere Fehlerwerte zurückgegeben werden. Die verbreitetsten Fehler sind hier aufgelistet:

EPERM
    Die tatsächliche UID ist nicht Null.

EFAULT
    path befindet sich außerhalb Ihres verfügbaren Adressbereichs.

ENAMETOOLONG
    path ist zu lang.

ENOENT
    Die Datei existiert nicht.

ENOMEM
    Zu wenig Kernelspeicher verfügbar.

ENOTDIR
    Ein Teil des path ist kein gültiges Verzeichnis.

EACCES
    Die Sucherlaubnis auf einen Teil des path-Prefix wurde verweigert.

ELOOP
    Es wurden zu viele symbolische Links bei der Auflösung des path vorgefunden.

EIO Es ist ein E/A-Fehler (engl. I/O) aufgetreten.

KONFORM ZU
SVr4, SVID, 4.4BSD, X/OPEN. Diese Funktion ist kein Bestandteil der POSIX.1-Spezifikation. SVr4 dokumentiert zusätzlich die Fehlerbedingungen EINTR, ENOLINK und EMULTIHOP. X/OPEN dokumentiert die Fehlerbedingungen EIO, ENOMEM oder EFAULT nicht. Diese Schnittstelle ist durch X/OPEN als Legacy vermerkt.

SIEHE AUCH
chdir(2).