Provided by: manpages-de-dev_1.4-1_all bug

BEZEICHNUNG

       chroot - Wurzelverzeichnis wechseln

ÜBERSICHT

       #include <unistd.h>

       int chroot(const char *pfad);

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       chroot():
           Seit Glibc 2.2.2:
               _BSD_SOURCE ||
                   (_XOPEN_SOURCE >= 500 ||
                       _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED) &&
                   !(_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)
           Bis Glibc 2.2.2: Keine

BESCHREIBUNG

       chroot()  wechselt  das Wurzelverzeichnis des aufrufenden Prozesses in das durch pfad festgelegte. Dieses
       Verzeichnis wird für Pfadnamen verwendet,  die  mit  /  beginnen.  Das  Wurzelverzeichnis  wird  an  alle
       Kindprozesse des aufrufenden Prozesses vererbt.

       Nur ein privilegierter Prozess kann chroot() aufrufen (Linux: einer mit der Fähigkeit CAP_SYS_CHROOT).

       Dieser Aufruf ändert einen Bestandteil des Pfadauflösungsprozesses und tut sonst nichts.

       Dieser  Aufruf  ändert nicht das aktuelle Arbeitsverzeichnis, so dass sich '.'  nach dem Aufruf außerhalb
       des Baums mit der Wurzel bei '/' befinden kann. Insbesondere kann der  Superuser  dem  »chroot-Gefängnis«
       entfliehen wie folgt:

           mkdir foo; chroot foo; cd ..

       Dieser  Aufruf  schließt  keine gesöffneten Datei-Deskriptoren. Solche Datei-Deskriptoren könnten Zugriff
       auf Dateien außerhalb des Chroot-Baumes gewähren.

RÜCKGABEWERT

       Bei Erfolg wird Null zurückgegeben. Bei  einem  Fehler  wird  -1  zurückgegeben  und  errno  entsprechend
       gesetzt.

FEHLER

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

       EACCES Eine Komponente des Pfad-Präfix darf nicht durchsucht werden. (Siehe auch path_resolution(7).)

       EFAULT path zeigt aus dem für Sie zugänglichen Adressraum heraus.

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

       ELOOP  Bei der Auflösung von path wurden zu viele symbolische Links gefunden.

       ENAMETOOLONG
              path ist zu lang.

       ENOENT Die Datei existiert nicht.

       ENOMEM Es war nicht genügend Kernel-Speicher verfügbar.

       ENOTDIR
              Eine Komponente von path ist kein Verzeichnis.

       EPERM  Der Aufrudende verfügt nicht über ausreichende Privilegien

KONFORM ZU

       SVr4, 4.4BSD, SUSv2 (als ALTLAST markiert). Diese Funktion ist nicht Teil von POSIX.1-2001.

ANMERKUNGEN

       Ein Kindprozess, der mit fork(2) erstellt wurde, erbt das Wurzelverzeichnis seines  Elternprozesses.  Das
       Wurzelverzeichnis wird von execve(2) unverändert gelassen.

       FreeBSD verfügt über einen stärkeren Systemaufruf: jail().

SIEHE AUCH

       chdir(2), path_resolution(7)

KOLOPHON

       This  page  is  part  of  release  3.54 of the Linux man-pages project. A description of the project, and
       information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Ralf  Demmer  <rdemmer@rdemmer.de>,  Chris  Leick
       <c.leick@vollbio.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

       Diese  Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
       bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser  Handbuchseite  finden,  schicken  Sie  bitte  eine  E-Mail  an
       <debian-l10n-german@lists.debian.org>.

Linux                                          20. September 2010                                      CHROOT(2)