proc_sys_fs(5) File Formats Manual proc_sys_fs(5) NUME /proc/sys/fs/ - variabile ale nucleului referitoare la sistemele de fiiere DESCRIERE /proc/sys/fs/ Acest director conine fiiere i subdirectoare pentru variabilele nucleului referitoare la sistemele de fiiere. /proc/sys/fs/aio-max-nr /proc/sys/fs/aio-nr (ambele incepand cu Linux 2.6.4) aio-nr este suma totala a numarului de evenimente specificate de apelurile io_setup(2) pentru toate contextele AIO active in prezent. Daca aio-nr atinge aio-max-nr, atunci io_setup(2) va eua cu eroarea EAGAIN. Creterea aio-max-nr nu duce la prealocarea sau redimensionarea niciunei structuri de date a nucleului. /proc/sys/fs/binfmt_misc Documentaia pentru fiierele din acest director poate fi gasita in sursa nucleului Linux in fiierul Documentation/admin-guide/binfmt-misc.rst (sau in Documentation/binfmt_misc.txt pe nucleele mai vechi). /proc/sys/fs/dentry-state (incepand cu Linux 2.2) Acest fiier conine informaii despre starea cache-ului de directoare (dcache). Fiierul conine ase numere, nr_dentry, nr_unused, age_limit (varsta in secunde), want_pages (pagini solicitate de sistem) i doua valori fictive. o nr_dentry este numarul de dentries alocate (intrari dcache). Acest camp este neutilizat in Linux 2.2. o nr_unused este numarul de dentries neutilizate. o age_limit este varsta in secunde dupa care intrarile dcache pot fi recuperate atunci cand memoria este scurta. o want_pages este diferita de zero atunci cand nucleul a apelat shrink_dcache_pages() i dcache nu este inca curaat. /proc/sys/fs/dir-notify-enable Acest fiier poate fi utilizat pentru a dezactiva sau activa interfaa dnotify descrisa in fcntl(2) la nivelul intregului sistem. O valoare de 0 in acest fiier dezactiveaza interfaa, iar o valoare de 1 o activeaza. /proc/sys/fs/dquot-max Acest fiier arata numarul maxim de intrari ale cotelor de disc din memoria cache. Pe unele sisteme (2.4), acesta nu este prezent. Daca numarul de intrari libere de cota de disc in cache este foarte mic i avei un numar impresionant de utilizatori simultani ai sistemului, este posibil sa dorii sa marii limita. /proc/sys/fs/dquot-nr Acest fiier arata numarul de intrari de cote de disc alocate i numarul de intrari de cote de disc libere. /proc/sys/fs/epoll/ (incepand cu Linux 2.6.28) Acest director conine fiierul max_user_watches, care poate fi utilizat pentru a limita cantitatea de memorie a nucleului consumata de interfaa epoll. Pentru detalii suplimentare, consultai epoll(7). /proc/sys/fs/file-max Acest fiier definete o limita la nivel de sistem privind numarul de fiiere deschise pentru toate procesele. Apelurile sistemului care eueaza atunci cand intalnesc aceasta limita eueaza cu eroarea ENFILE; (a se vedea, de asemenea, setrlimit(2), care poate fi utilizat de un proces pentru a stabili limita per-proces, RLIMIT_NOFILE, privind numarul de fiiere pe care le poate deschide). Daca primii multe mesaje de eroare in jurnalul nucleului despre epuizarea gestionarilor de fiiere (descrieri de fiiere deschise) (cautai ,,VFS: file-max limit reached"), incercai sa cretei aceasta valoare: echo 100000 > /proc/sys/fs/file-max Procesele privilegiate (CAP_SYS_ADMIN) pot trece peste limita file-max. /proc/sys/fs/file-nr Acest fiier (numai pentru citire) conine trei numere: numarul de gestionari de fiiere alocai (de exemplu, numarul de descrieri de fiiere deschise; a se vedea open(2)); numarul de gestionari de fiiere libere; i numarul maxim de gestionari de fiiere (de exemplu, aceeai valoare ca /proc/sys/fs/file-max). Daca numarul de gestionari de fiiere alocai este aproape de maxim, ar trebui sa luai in considerare creterea maximului. Inainte de Linux 2.6, nucleul aloca gestionari de fiiere in mod dinamic, dar nu-i elibera din nou. In schimb, gestionarii de fiiere liberi erau pastrai intr-o lista pentru realocare; valoarea ,,free file handles" indica dimensiunea acelei liste. Un numar mare de gestionari de fiiere libere indica faptul ca in trecut a existat un varf in utilizarea gestionarilor de fiiere deschise. Incepand cu Linux 2.6, nucleul dezaloca(elibereaza) gestionarii de fiiere eliberate, iar valoarea ,,free file handles" este intotdeauna zero. /proc/sys/fs/inode-max (prezent doar pana la Linux 2.2) Acest fiier conine numarul maxim de noduri-i in memorie. Aceasta valoare ar trebui sa fie de 3-4 ori mai mare decat valoarea din file-max, deoarece stdin, stdout i soclurile de reea au nevoie, de asemenea, de un nod-i pentru a le gestiona. Atunci cand ramanei in mod regulat fara noduri-i, trebuie sa marii aceasta valoare. Incepand cu Linux 2.4, nu mai exista o limita statica a numarului de noduri-i, iar acest fiier este eliminat. /proc/sys/fs/inode-nr Acest fiier conine primele doua valori din inode-state. /proc/sys/fs/inode-state Acest fiier conine apte numere: nr_inodes, nr_free_inodes, preshrink i patru valori fictive (intotdeauna zero). nr_inodes reprezinta numarul de noduri-i pe care sistemul le-a alocat. nr_free_inodes reprezinta numarul de noduri-i libere. preshrink este diferita de zero atunci cand nr_inodes > inode-max i sistemul trebuie sa reduca lista de noduri-i in loc sa aloce mai multe; de la Linux 2.4, acest camp este o valoare falsa (intotdeauna zero). /proc/sys/fs/inotify/ (incepand cu Linux 2.6.13) Acest director conine fiierele max_queued_events, max_user_instances i max_user_watches, care pot fi utilizate pentru a limita cantitatea de memorie a nucleului consumata de interfaa inotify. Pentru detalii suplimentare, consultai inotify(7). /proc/sys/fs/lease-break-time Acest fiier specifica perioada de graie pe care nucleul o acorda unui proces care deine un contract de inchiriere a unui fiier (fcntl(2)) dupa ce a trimis un semnal procesului respectiv prin care il informeaza ca un alt proces ateapta sa deschida fiierul. In cazul in care titularul inchirierii nu elimina sau nu retrogradeaza inchirierea in aceasta perioada de graie, nucleul intrerupe cu fora inchirierea. /proc/sys/fs/leases-enable Acest fiier poate fi utilizat pentru a activa sau dezactiva inchirierea fiierelor (fcntl(2)) la nivelul intregului sistem. Daca acest fiier conine valoarea 0, inchirierile sunt dezactivate. O valoare diferita de zero activeaza inchirierile. /proc/sys/fs/mount-max (incepand cu Linux 4.9) Valoarea din acest fiier specifica numarul maxim de montari care pot exista intr-un spaiu de nume al montarilor. Valoarea implicita din acest fiier este 100 000. /proc/sys/fs/mqueue/ (incepand cu Linux 2.6.6) Acest director conine fiierele msg_max, msgsize_max i queues_max, care controleaza resursele utilizate de cozile de mesaje POSIX. Consultai mq_overview(7) pentru detalii. /proc/sys/fs/nr_open (incepand cu Linux 2.6.25) Acest fiier impune un plafon pentru valoarea la care poate fi ridicata limita de resurse RLIMIT_NOFILE (a se vedea getrlimit(2)). Acest plafon este impus atat pentru procesele neprivilegiate, cat i pentru cele privilegiate. Valoarea implicita in acest fiier este 1048576. Inainte de Linux 2.6.25, plafonul pentru RLIMIT_NOFILE era codificat la aceeai valoare. /proc/sys/fs/overflowgid /proc/sys/fs/overflowuid Aceste fiiere va permit sa modificai valoarea UID i GID fixe. Valoarea implicita este 65534. Unele sisteme de fiiere accepta numai UID-uri i GID-uri pe 16 bii, dei in Linux UID-urile i GID-urile sunt pe 32 de bii. Atunci cand unul dintre aceste sisteme de fiiere este montat cu scrierea activata, orice UID sau GID care ar depai 65535 este convertit la valoarea de depaire inainte de a fi scris pe disc. /proc/sys/fs/pipe-max-size (incepand cu Linux 2.6.35) A se vedea pipe(7). /proc/sys/fs/pipe-user-pages-hard (incepand cu Linux 4.5) A se vedea pipe(7). /proc/sys/fs/pipe-user-pages-soft (incepand cu Linux 4.5) A se vedea pipe(7). /proc/sys/fs/protected_fifos (incepand cu Linux 4.19) Valoarea din acest fiier este/poate fi stabilita la una dintre urmatoarele valori: 0 Scrierea in FIFO-uri este nerestricionata. 1 Nu se permite O_CREAT open(2) pe FIFO-uri pe care apelantul nu le deine in directoare lipicioase cu acces de scriere la nivel global, cu excepia cazului in care FIFO-ul este deinut de proprietarul directorului. 2 Ca i pentru valoarea 1, dar restricia se aplica i directoarelor lipicioase cu acces de scriere pentru grup. Intenia proteciilor de mai sus este de a evita scrierile neintenionate intr-o FIFO controlata de atacator atunci cand un program se ateapta sa creeze un fiier obinuit. /proc/sys/fs/protected_hardlinks (incepand cu Linux 3.6) In cazul in care valoarea din acest fiier este 0, nu sunt impuse restricii privind crearea de legaturi permanente (acesta este comportamentul istoric inainte de Linux 3.6). Atunci cand valoarea din acest fiier este 1, se poate crea o legatura dura catre un fiier inta numai daca una dintre urmatoarele condiii este adevarata: o Procesul apelant are capacitatea CAP_FOWNER in spaiul sau de nume al utilizatorului, iar UID-ul fiierului are o asociere in spaiul de nume. o UID-ul sistemului de fiiere al procesului care creeaza legatura corespunde proprietarului (UID) fiierului inta (dupa cum se descrie in credentials(7), UID-ul sistemului de fiiere al unui proces este in mod normal acelai cu UID-ul sau efectiv). o Toate condiiile urmatoare sunt adevarate: o inta este un fiier obinuit; o fiierul inta nu are activat bitul de mod set-user-ID; o fiierul inta nu are biii de mod set-group-ID i group-executable activai; i o apelantul are permisiunea de a citi i de a scrie in fiierul inta (fie prin masca de permisiuni a fiierului, fie pentru ca dispune de capacitaile corespunzatoare). Valoarea implicita in acest fiier este 0. Stabilirea valorii la 1 previne o clasa veche de probleme de securitate cauzate de cursele de timp de verificare i de timp de utilizare bazate pe legaturi dure, observate cel mai frecvent in directoare de tip acces-global-de-scriere precum /tmp. Metoda obinuita de exploatare a acestui defect consta in depairea limitelor de privilegii atunci cand se urmarete o anumita legatura dura (de exemplu, un proces root urmarete o legatura dura creata de un alt utilizator). In plus, pe sistemele fara partiii separate, acest lucru impiedica utilizatorii neautorizai sa ,,fixeze" fiiere vulnerabile set-user-ID i set-group-ID impotriva actualizarii de catre administrator, sau sa faca legaturi catre fiiere speciale. /proc/sys/fs/protected_regular (incepand cu Linux 4.19) Valoarea din acest fiier este/poate fi stabilita la una dintre urmatoarele valori: 0 Scrierea in fiiere obinuite este nerestricionata. 1 Nu se permite O_CREAT open(2) pe fiiere obinuite pe care apelantul nu le deine in directoare lipicioase cu acces de scriere global, cu excepia cazului in care fiierul obinuit este deinut de proprietarul directorului. 2 Ca i pentru valoarea 1, dar restricia se aplica i directoarelor lipicioase cu acces de scriere pentru grup. Intenia proteciilor de mai sus este similara cu protected_fifos, dar permite unei aplicaii sa evite scrierea intr-un fiier obinuit controlat de atacator, atunci cand aplicaia se atepta sa creeze unul. /proc/sys/fs/protected_symlinks (incepand cu Linux 3.6) Atunci cand valoarea din acest fiier este 0, nu sunt impuse restricii privind urmarirea legaturilor simbolice (de exemplu, acesta este comportamentul istoric inainte de Linux 3.6). Atunci cand valoarea din acest fiier este 1, legaturile simbolice sunt urmate numai in urmatoarele circumstane: o UID-ul sistemului de fiiere al procesului care urmeaza legatura corespunde proprietarului (UID) legaturii simbolice (dupa cum se descrie in credentials(7), UID-ul sistemului de fiiere al unui proces este in mod normal acelai cu UID-ul sau efectiv); o legatura nu se afla intr-un director lipicios cu acces global de scriere; sau o legatura simbolica i directorul sau parinte au acelai proprietar (UID) Un apel de sistem care nu reuete sa urmeze o legatura simbolica din cauza restriciilor de mai sus returneaza eroarea EACCES in errno. Valoarea implicita in acest fiier este 0. Stabilirea valorii la 1 evita o clasa veche de probleme de securitate bazate pe curse de timp de verificare, timp de utilizare la accesarea legaturilor simbolice. /proc/sys/fs/suid_dumpable (incepand cu Linux 2.6.13) Valoarea din acest fiier este atribuita fanionului ,,dumpable" al unui proces in circumstanele descrise in prctl(2). De fapt, valoarea din acest fiier determina daca sunt produse fiiere de descarcare a coninutului memoriei pentru set-user-ID sau pentru alte binare protejate/alterate. Activarea parametrului ,,dumpable" afecteaza, de asemenea, dreptul de proprietate asupra fiierelor din directorul /proc/pid al unui proces, astfel cum este descris mai sus. Pot fi specificate trei valori intregi diferite: 0 (implicit)] Acest lucru asigura comportamentul tradiional (inainte de Linux 2.6.13). Nu va fi produsa o descarcare a coninutului memoriei pentru un proces care i-a schimbat acreditarile (apeland seteuid(2), setgid(2) sau similar, sau executand un program set-user-ID sau set-group-ID) sau al carui binar nu are permisiunea de citire activata. 1 (,,debug") Toate procesele descarca coninutul memoriei atunci cand este posibil; (motivele pentru care un proces ar putea totui sa nu descarce coninutul memorie sunt descrise in core(5)). Descarcarea coninutului memoriei este deinuta de ID-ul de utilizator al sistemului de fiiere al procesului de descarcare a datelor i nu se aplica nicio masura de securitate. Acest mod este destinat numai situaiilor de depanare a sistemului: acest mod este nesigur deoarece permite utilizatorilor neprivilegiai sa examineze coninutul memoriei proceselor privilegiate. 2 (,,suidsafe") Orice binar care, in mod normal, nu ar fi descarcat (a se vedea ,,0" de mai sus) este descarcat pentru a putea fi citit numai de catre root. Acest lucru permite utilizatorului sa elimine fiierul cu datele din memorie descarcate, dar nu sa il citeasca. Din motive de securitate, fiierele cu datele din memorie descarcate, in acest mod nu se vor suprascrie unul pe altul sau pe alte fiiere. Acest mod este adecvat atunci cand administratorii incearca sa depaneze probleme intr-un mediu normal. In plus, incepand cu Linux 3.6, /proc/sys/kernel/core_pattern trebuie sa fie fie un nume de ruta absolut, fie o comanda de tip conducta, dupa cum se specifica in core(5). Vor fi scrise avertismente in jurnalul nucleului daca core_pattern nu respecta aceste reguli i nu va fi produsa nicio descarcare a coninutului memoriei. Pentru detalii despre efectul activarii parametrului ,,dumpable" al unui proces asupra verificarii modului de acces ptrace, consultai ptrace(2). /proc/sys/fs/super-max Acest fiier controleaza numarul maxim de super-blocuri i, prin urmare, numarul maxim de sisteme de fiiere montate pe care le poate avea nucleul. Trebuie sa marii doar super-max daca trebuie sa montai mai multe sisteme de fiiere decat va permite valoarea curenta din super-max. /proc/sys/fs/super-nr Acest fiier conine numarul de sisteme de fiiere montate in prezent. CONSULTAI I proc(5), proc_sys(5) TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Pagini de manual de Linux 6.12 28 iunie 2024 proc_sys_fs(5)