Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       chroot - schimbă directorul rădăcină

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <unistd.h>

       int chroot(const char *ruta);

   Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

       chroot():
           Începând cu glibc 2.2.2:
               _XOPEN_SOURCE && ! (_POSIX_C_SOURCE >= 200112L)
                   || /* Începând cu glibc 2.20: */ _DEFAULT_SOURCE
                   || /* glibc <= 2.19: */ _BSD_SOURCE
           Înainte de glibc 2.2.2:
               nimic

DESCRIERE

       chroot()  schimbă  directorul rădăcină al procesului apelant în cel specificat în rută. Acest director va
       fi utilizat pentru numele de rută care încep cu /. Directorul  rădăcină  este  moștenit  de  toți  copiii
       procesului apelant.

       Numai  un  proces  privilegiat  (Linux:  unul  cu  capacitatea  CAP_SYS_CHROOT  în  spațiul  de  nume  al
       utilizatorului) poate apela chroot().

       Acest apel modifică un ingredient în procesul de rezolvare a numelui de rută și nu face nimic altceva. În
       special, nu este destinat să fie utilizat în niciun fel de scop de  securitate,  nici  pentru  a  face  o
       „cutie de nisip” completă a unui proces, nici pentru a restricționa apelurile de sistem ale sistemului de
       fișiere.  În  trecut,  chroot()  a  fost  utilizat  de către demoni pentru a se restricționa înainte de a
       transmite rutele de acces furnizate de utilizatori care nu prezintă încredere la apelurile de sistem, cum
       ar fi open(2).  Cu toate acestea, dacă un dosar este mutat în  afara  directorului  chroot,  un  atacator
       poate  exploata  acest  lucru  pentru a ieși și din directorul chroot. Cel mai simplu mod de a face acest
       lucru este să facă chdir(2) la directorul care urmează să fie mutat, să aștepte ca acesta să  fie  mutat,
       apoi să deschidă o rută precum „../../../etc/passwd”.

       O variantă puțin mai complicată funcționează, de asemenea, în anumite circumstanțe, dacă chdir(2) nu este
       permis.  Dacă  un demon permite specificarea unui „director chroot”, aceasta înseamnă, de obicei, că dacă
       doriți să împiedicați utilizatorii de la distanță să acceseze  fișiere  din  afara  directorului  chroot,
       trebuie să vă asigurați că dosarele nu sunt niciodată mutate în afara acestuia.

       Acest  apel  nu  modifică  directorul  de  lucru  curent,  astfel încât, după apel, „.” poate fi în afara
       arborelui cu rădăcina „/”.În special, superutilizatorul poate scăpa dintr-o „închisoare chroot” făcând:

           mkdir foo; chroot foo; cd ..

       Acest apel nu închide descriptorii de fișiere deschise, iar astfel de descriptori de fișiere pot  permite
       accesul la fișiere din afara arborelui chroot.

VALOAREA RETURNATĂ

       În  caz  de  succes,  se  returnează zero. În caz de eroare, se returnează -1, iar errno este configurată
       pentru a indica eroarea.

ERORI-IEȘIRE

       În funcție de sistemul de fișiere, pot fi returnate și alte erori. Cele mai generale erori sunt enumerate
       mai jos:

       EACCES Permisul de căutare este refuzat pentru o componentă a prefixului rutei; (a se vedea, de asemenea,
              path_resolution(7).)

       EFAULT ruta indică în afara spațiului de adrese accesibil.

       EIO    A apărut o eroare de In/Ieș.

       ELOOP  S-au întâlnit prea multe legături simbolice în rezolvarea rutei.

       ENAMETOOLONG
              ruta este prea lungă.

       ENOENT Fișierul nu există.

       ENOMEM Nu a fost disponibilă suficientă memorie pentru nucleu.

       ENOTDIR
              O componentă a rutei nu este un director.

       EPERM  Apelantul nu are privilegii suficiente.

STANDARDE

       Niciunul.

ISTORIC

       SVr4, 4.4BSD, SUSv2 ( marcată ca „LEGACY”). Această funcție nu face parte din POSIX.1-2001.

NOTE

       Un proces-copil creat prin fork(2) moștenește directorul rădăcină al părintelui său. Directorul  rădăcină
       este lăsat neschimbat de execve(2).

       Legătura  simbolică  magică, /proc/pid/root, poate fi utilizată pentru a descoperi directorul rădăcină al
       unui proces; a se vedea proc(5) pentru detalii.

       FreeBSD are un apel de sistem jail() mai puternic.

CONSULTAȚI ȘI

       chroot(1), chdir(2), pivot_root(2), path_resolution(7), switch_root(8)

TRADUCERE

       Traducerea   în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel    Chelu
       <remusgabriel.chelu@disroot.org>

       Această  traducere  este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3 sau o
       versiune  ulterioară  cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se   asumă   NICIO
       RESPONSABILITATE.

       Dacă  găsiți  erori  în  traducerea  acestui manual, vă rugăm să trimiteți un e-mail la translation-team-
       ro@lists.sourceforge.net.

Pagini de manual de Linux 6.9.1                    2 mai 2024                                          chroot(2)