.\" -*- coding: UTF-8 -*-
.\" Copyright (C) 1994, 1995, Daniel Quinlan <quinlan@yggdrasil.com>
.\" Copyright (C) 2002-2008, 2017, Michael Kerrisk <mtk.manpages@gmail.com>
.\" Copyright (C) , Andries Brouwer <aeb@cwi.nl>
.\" Copyright (C) 2023, Alejandro Colomar <alx@kernel.org>
.\"
.\" SPDX-License-Identifier: GPL-3.0-or-later
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH proc_sys_fs 5 "2 maja 2024 r." "Linux man\-pages 6.8" 
.SH NAZWA
/proc/sys/fs/ \- zmienne jądra odnoszące się do systemów plików
.SH OPIS
.TP 
\fI/proc/sys/fs/\fP
Katalog zawierający pliki i podkatalogi do zmiennych jądra związanych z
systemami plików.
.TP 
\fI/proc/sys/fs/aio\-max\-nr\fP i \fI/proc/sys/fs/aio\-nr\fP (od Linuksa 2.6.4)
\fIaio\-nr\fP jest sumą bieżącą liczby zdarzeń określonych przez wywołania
\fBio_setup\fP(2), dla wszystkich aktualnie aktywnych kontekstów AIO. Jeśli
\fIaio\-nr\fP osiągnie \fIaio\-max\-nr\fP, to \fBio_setup\fP(2) zawiedzie z błędem
\fBEAGAIN\fP. Zwiększenie \fIaio\-max\-nr\fP nie powoduje alokacji wstępnej ani
zmiany jakichś struktur danych jądra.
.TP 
\fI/proc/sys/fs/binfmt_misc\fP
Dokumentacja plików z tego katalogu znajduje się w źródłach jądra Linux w
pliku \fIDocumentation/admin\-guide/binfmt\-misc.rst\fP (lub
\fIDocumentation/binfmt_misc.txt\fP w starszych jądrach).
.TP 
\fI/proc/sys/fs/dentry\-state\fP (od Linuksa 2.2)
Plik zawiera informacje o statusie bufora katalogu (dcache). Zawiera sześć
liczb: \fInr_dentry\fP, \fInr_unused\fP, \fIage_limit\fP (wiek w sekundach),
\fIwant_pages\fP (strony żądane przez system) i dwie nieużywane wartości.
.RS
.IP \[bu] 3
\fInr_dentry\fP jest liczbą przydzielonych dentries (wpisów dcache). To pole
jest nieużywane w Linuksie 2.2.
.IP \[bu]
\fInr_unused\fP jest liczbą nieużywanych dentries.
.IP \[bu]
.\" looks like this is unused in Linux 2.2 to Linux 2.6
\fIage_limit\fP jest wiekiem w sekundach, po którym wpisy dcache mogą być
przydzielone ponownie, gdy jest zbyt mało pamięci.
.IP \[bu]
.\" looks like this is unused in Linux 2.2 to Linux 2.6
\fIwant_pages\fP jest niezerowa, gdy jądro wywołało shrink_dcache_pages(), ale
dcache nie zostały jeszcze przycięte.
.RE
.TP 
\fI/proc/sys/fs/dir\-notify\-enable\fP
Plik ten może służyć do wyłączania lub włączania interfejsu \fIdnotify\fP
opisanego w \fBfcntl\fP(2) dla całego systemu. Wartość 0 w tym pliku wyłącza
interfejs, a wartość 1 go włącza.
.TP 
\fI/proc/sys/fs/dquot\-max\fP
Zawiera maksymalną liczbę buforowanych wpisów kwot (przydziałów)
dyskowych. W niektórych (2.4) systemach nie występuje. Gdy liczba wolnych
zbuforowanych kwot dyskowych jest bardzo mała, a jest przerażająca liczba
jednoczesnych użytkowników systemu, może istnieć potrzeba zwiększenia tego
ograniczenia.
.TP 
\fI/proc/sys/fs/dquot\-nr\fP
Zawiera liczbę przydzielonych wpisów kwot dyskowych oraz liczbę wolnych
wpisów kwot dyskowych.
.TP 
\fI/proc/sys/fs/epoll/\fP (od Linuksa 2.6.28)
Katalog zawiera plik \fImax_user_watches\fP, którego można użyć, aby ograniczyć
ilość pamięci jądra używanej przez interfejs \fIepoll\fP. Więcej szczegółów
można znaleźć w \fBepoll\fP(7).
.TP 
\fI/proc/sys/fs/file\-max\fP
Zawiera ogólnosystemowe ograniczenie liczby plików otwartych przez wszystkie
procesy. Wywołania systemowe które zawiodą przy napotkaniu tych limitów nie
powiodą się z błędem \fBENFILE\fP. (Zobacz także \fBsetrlimit\fP(2), które może
służyć procesom do ustawiania ograniczenia dla procesu, \fBRLIMIT_NOFILE\fP,
jako liczby plików, które proces może otworzyć). Gdy otrzymuje się mnóstwo
komunikatów w dzienniku jądra o przekroczeniu liczby uchwytów plików (opisów
otwartego pliku) (należy szukać komunikatów takich jak \[Bq]VFS: file\-max
limit <liczba> reached\[rq]), to można spróbować zwiększyć tę
wartość:
.IP
.in +4n
.EX
echo 100000 > /proc/sys/fs/file\-max
.EE
.in
.IP
Procesy uprzywilejowane (\fBCAP_SYS_ADMIN\fP) mogą przesłonić limit
\fIfile\-max\fP.
.TP 
\fI/proc/sys/fs/file\-nr\fP
Jest to plik (tylko do odczytu) zawierający trzy liczby: liczbę
przydzielonych uchwytów plików (tzn. liczbę opisów otwartego pliku;
zob. \fBopen\fP(2)), liczbę wolnych uchwytów plików i maksymalną liczbę
uchwytów plików (tzn. tę samą wartość co w \fI/proc/sys/fs/file\-max\fP). Jeśli
liczba przydzielonych uchwytów plików zbliża się do maksimów, należy
rozważyć zwiększenie ich. Przed Linuksem 2.6 jądro dynamicznie przydzielało
uchwyty, lecz nie zwalniało ich. Wolne uchwyty były przechowywane w liście
do ponownego przydzielenia, wartość \[Bq]wolne uchwyty plików\[rq]
wskazywała na rozmiar tej listy. Duża liczba wolnych uchwytów plików
wskazywała, że w przeszłości był moment dużego użycia otwartych uchwytów
plików. Od Linuksa 2.6 jądro zwalnia wolne uchwyty plików, a wartość
\[Bq]wolne uchwyty plików\[rq] zawsze wynosi zero.
.TP 
\fI/proc/sys/fs/inode\-max\fP (obecny jedynie do Linuksa 2.2)
Ten plik zawiera maksymalną liczbę i\-węzłów w pamięci. Wartość ta powinna
być 3\[en]4 razy większa niż wartość w \fIfile\-max\fP, gdyż \fIstdin\fP, \fIstdout\fP
i gniazda sieciowe również potrzebują i\-węzłów, aby można było na nich
operować. Gdy systematycznie brakuje i\-węzłów, istnieje potrzeba zwiększenia
tej wartości.
.IP
Od jądra Linux 2.4 nie występuje statyczny limit liczby i\-węzłów, w związku
z czym usunięto ten plik.
.TP 
\fI/proc/sys/fs/inode\-nr\fP
Zawiera dwie pierwsze wartości z \fIinode\-state\fP.
.TP 
\fI/proc/sys/fs/inode\-state\fP
Plik zawiera siedem liczb: \fInr_inodes\fP, \fInr_free_inodes\fP, \fIpreshrink\fP i
cztery nieużywane wartości (wynoszące zawsze zero).
.IP
.\" This can be slightly more than
.\" .I inode\-max
.\" because Linux allocates them one page full at a time.
\fInr_inodes\fP jest liczbą przydzielonych przez system
i\-węzłów. \fInr_free_inodes\fP jest liczbą wolnych i\-węzłów.
.IP
\fIpreshrink\fP jest niezerowe, gdy \fInr_inodes\fP > \fIinode\-max\fP i gdy
system musi przyciąć listę i\-węzłów zamiast przydzielić ich więcej; od
Linuksa 2.4 to pole jest wartością \- atrapą (wynosi zawsze zero).
.TP 
\fI/proc/sys/fs/inotify/\fP (od Linuksa 2.6.13)
Ten katalog zawiera pliki \fImax_queued_events\fP, \fImax_user_instances\fP i
\fImax_user_watches\fP, których można użyć, aby ograniczyć ilość pamięci jądra
używanej przez interfejs \fIinotify\fP. Więcej szczegółów można znaleźć w
\fBinotify\fP(7).
.TP 
\fI/proc/sys/fs/lease\-break\-time\fP
Określa okres ulgi, przez jaki jądro zapewnia procesowi utrzymanie dzierżawy
pliku (\fBfcntl\fP(2)), a po którym wyśle do tego procesu sygnał zawiadamiający
go, że inny proces oczekuje na otwarcie pliku. Jeśli utrzymujący dzierżawę
nie usunie jej lub nie ograniczy swoich praw do niej w przeciągu tego czasu,
jądro wymusi zerwanie dzierżawy.
.TP 
\fI/proc/sys/fs/leases\-enable\fP
Ten plik może służyć do ogólnosystemowego włączania lub wyłączania dzierżaw
plików (\fBfcntl\fP(2)). Gdy plik ten zawiera wartość 0, dzierżawy są
wyłączone. Wartość niezerowa włącza dzierżawy.
.TP 
\fI/proc/sys/fs/mount\-max\fP (od Linuksa 4.9)
.\" commit d29216842a85c7970c536108e093963f02714498
Wartość w tym pliku określa maksymalną liczbę montowań, jakie mogą istnieć w
przestrzeni nazw montowań. Domyślną wartością w tym pliku jest 100\ 000.
.TP 
\fI/proc/sys/fs/mqueue/\fP (od Linuksa 2.6.6)
Ten katalog zawiera pliki \fImsg_max\fP, \fImsgsize_max\fP i \fIqueues_max\fP,
kontrolujące zasoby używane przez kolejki komunikatów POSIX. Szczegółowe
informacje można znaleźć w \fBmq_overview\fP(7).
.TP 
\fI/proc/sys/fs/nr_open\fP (od Linuksa 2.6.25)
.\" commit 9cfe015aa424b3c003baba3841a60dd9b5ad319b
Plik ten określa pułap, do którego można podnieść limit zasobów
\fBRLIMIT_NOFILE\fP (zob. \fBgetrlimit\fP(2)). Pułap ten jest wymuszany zarówno na
nieuprzywilejowanych i uprzywilejowanych procesach. Domyślną wartością w
pliku jest 1048576 (przed Linuksem 2.6.25, pułap \fBRLIMIT_NOFILE\fP
był zakodowany na sztywno i wynosił tyle samo).
.TP 
\fI/proc/sys/fs/overflowgid\fP and \fI/proc/sys/fs/overflowuid\fP
Te pliki umożliwiają zmianę wartości ustalonego UID\-u i GID\-u. Wartością
domyślną jest 65534. Niektóre systemy plików wspierają jedynie 16\-bitowe
UID\-y i GID\-y, podczas gdy linuksowe UID\-y i GID\-y są 32\-bitowe. Gdy któryś
z takich systemów plików jest zamontowany z możliwością zapisu, to wszystkie
UID\-y i GID\-y przekraczające 65535 są zastępowane podanymi tu wartościami
przed zapisem na dysk.
.TP 
\fI/proc/sys/fs/pipe\-max\-size\fP (od Linuksa 2.6.35)
Patrz \fBpipe\fP(7).
.TP 
\fI/proc/sys/fs/pipe\-user\-pages\-hard\fP (od Linuksa 4.5)
Patrz \fBpipe\fP(7).
.TP 
\fI/proc/sys/fs/pipe\-user\-pages\-soft\fP (od Linuksa 4.5)
Patrz \fBpipe\fP(7).
.TP 
\fI/proc/sys/fs/protected_fifos\fP (od Linuksa 4.19)
Wartość w tym pliku jest/może być ustawiona na jedną z poniższych:
.RS
.TP  4
0
Zapisywanie do FIFO jest nieograniczone.
.TP 
1
Nie zezwala na \fBO_CREAT\fP \fBopen\fP(2) na potokach FIFO, których wywołujący
nie jest właścicielem, w zapisywalnych dla wszystkich katalogach z bitem
lepkości, chyba że właściciel katalogu jest też właścicielem FIFO.
.TP 
2
Jak przy wartości 1, lecz ograniczenie dotyczy również zapisywalnych dla
grupy katalogach z bitem lepkości.
.RE
.IP
Powyższe zabezpieczenia mają pomóc uniknąć sytuacji nieoczekiwanego zapisu
do potoku FIFO kontrolowanego przez atakującego, gdy program chciał jedynie
utworzyć zwykły plik.
.TP 
\fI/proc/sys/fs/protected_hardlinks\fP (od Linuksa 3.6)
.\" commit 800179c9b8a1e796e441674776d11cd4c05d61d7
Gdy w pliku zapisana jest wartość 0, to w odniesieniu do tworzenia dowiązań
zwykłych (twardych) nie wprowadza się żadnych ograniczeń (jest to
historyczne zachowanie przed Linuksem 3.6). Gdy wartość wynosi 1, to
dowiązania zwykłe mogą być tworzone do pliku docelowego jedynie wówczas, gdy
spełniony jest jeden z poniższych warunków:
.RS
.IP \[bu] 3
Proces wywołujący ma przywilej \fBCAP_FOWNER\fP w swojej przestrzeni nazw
użytkownika, a UID pliku ma przypisanie w tej przestrzeni nazw.
.IP \[bu]
UID systemu plików dotyczący procesu tworzącego dowiązanie pasują do
właściciela (UID) pliku docelowego (zgodnie z opisem w podręczniku
\fBcredentials\fP(7), UID systemu plików procesu jest zwykle taki sam jak jego
efektywny UID).
.IP \[bu]
Wszystkie poniższe warunki zostaną spełnione:
.RS 4
.IP \[bu] 3
cel jest zwykłym plikiem,
.IP \[bu]
plik docelowy nie ma ustawionego bitu set\-user\-ID,
.IP \[bu]
plik docelowy nie ma ustawionych obu z bitów set\-group\-ID i bitu
wykonywalności dla grupy,
.IP \[bu]
wywołujący ma uprawnienie do odczytu i zapisu pliku docelowego (albo dzięki
uprawnieniom pliku albo ze względu na posiadane przywileje).
.RE
.RE
.IP
Domyślną wartością w tym pliku jest 0. Ustawienie 1 rozwiąże występujące od
dawna problemy z bezpieczeństwem wykorzystujące wyścig między czasem
sprawdzenia a czasem użycia dowiązania zwykłego, zwykle spotykanych w
katalogach dostępnych do zapisu dla wszystkich (np. \fI/tmp\fP). Częstym
sposobem wykorzystywania tej wady jest skrzyżowanie ograniczeń w
uprawnieniach przy podążaniu za danym dowiązaniem zwykłym (np. gdy proces
root podąża za dowiązaniem stałym utworzonym przez innego użytkownika). W
systemach bez wydzielonych partycji, rozwiązuje się w ten sposób również
problem nieautoryzowanych użytkowników \[Bq]przypinających\[rq] dziurawe
pliki z ustawionymi bitami set\-user\-ID i set\-group\-ID wobec aktualizowanych
przez administratora a także dowiązywaniu do plików specjalnych.
.TP 
\fI/proc/sys/fs/protected_regular\fP (od Linuksa 4.19)
Wartość w tym pliku jest/może być ustawiona na jedną z poniższych:
.RS
.TP  4
0
Zapis do zwykłych plików jest nieograniczony
.TP 
1
Nie zezwala na \fBO_CREAT\fP \fBopen\fP(2) na zwykłych plikach, których wywołujący
nie jest właścicielem, w zapisywalnych dla wszystkich katalogach z bitem
lepkości, chyba że właściciel zwykłego pliku jest też właścicielem FIFO.
.TP 
2
Jak przy wartości 1, lecz ograniczenie dotyczy również zapisywalnych dla
grupy katalogach z bitem lepkości.
.RE
.IP
Intencja utworzenia powyższych zabezpieczeń jest podobna do
\fIprotected_fifos\fP, lecz w tym przypadku chodzi o uniknięcie zapisu do
zwykłego pliku kontrolowanego przez atakującego, gdy program chciał go
utworzyć.
.TP 
\fI/proc/sys/fs/protected_symlinks\fP (od Linuksa 3.6)
.\" commit 800179c9b8a1e796e441674776d11cd4c05d61d7
Gdy w pliku zapisana jest wartość 0, to w odniesieniu do tworzenia dowiązań
symbolicznych nie wprowadza się żadnych ograniczeń (jest to historyczne
zachowanie przed Linuksem 3.6). Gdy wartość wynosi 1, to dowiązania
symboliczne mogą być tworzone jedynie gdy spełnione są następujące warunki:
.RS
.IP \[bu] 3
UID systemu plików dotyczący procesu podążającego za dowiązaniem pasują do
właściciela (UID) dowiązania symbolicznego (zgodnie z opisem w podręczniku
\fBcredentials\fP(7), UID systemu plików procesu jest zwykle taki sam jak jego
efektywny UID),
.IP \[bu]
dowiązanie nie znajduje się w katalogu dostępnych dla wszystkich do zapisu z
bitem lepkości lub
.IP \[bu]
dowiązanie symboliczne i katalog w którym się ono znajduje mają tego samego
właściciela (UID)
.RE
.IP
Wywołanie systemowe które nie podąży za dowiązaniem symbolicznym ze względu
na powyższe ograniczenia zwróci w \fIerrno\fP błąd \fBEACCES\fP.
.IP
Domyślną wartością w tym pliku jest 0. Ustawienie 1 rozwiąże występujące od
dawna problemy z bezpieczeństwem wykorzystujących wyścig między czasem
sprawdzenia a czasem użycia przy uzyskiwaniu dostępu do dowiązań
symbolicznych.
.TP 
\fI/proc/sys/fs/suid_dumpable\fP (od Linuksa 2.6.13)
.\" The following is based on text from Documentation/sysctl/kernel.txt
Wartość w tym pliku jest przypisana do flagi \[Bq]dumpable\[rq]
(\[Bq]zrzucalny\[rq]) w sytuacjach opisanych w \fBprctl\fP(2). W konsekwencji,
wartość w tym pliku określa, czy pliki zrzutów pamięci są tworzone dla
programów mających ustawiony bit set\-user\-ID albo chronionych w jakiś inny
sposób. Ustawienie \[Bq]zrzucalności\[rq] wpływa również na własność plików
w katalogu \fI/proc/\fPpid procesu, jak opisano wyżej.
.IP
Można podać trzy różne wartości liczbowe:
.RS
.TP 
\fI0\ (domyślna)\fP
.\" In kernel source: SUID_DUMP_DISABLE
Jest to tradycyjne zachowanie (sprzed Linuksa 2.6.13). Zrzut pamięci nie
będzie tworzony dla procesu, który zmienił swoje uprawnienia (wywołując
\fBseteuid\fP(2), \fBsetgid\fP(2) lub podobną funkcję albo gdy program miał
ustawiony bit set\-user\-ID lub set\-group\-ID) albo gdy uprawnienia nadane
plikowi binarnemu programu zabraniają jego odczytywania.
.TP 
\fI1\ (\[Bq]debug\[rq])\fP
.\" In kernel source: SUID_DUMP_USER
Jeżeli jest to możliwe, to wszystkie procesy wykonują zrzut pamięci (powody,
dla których proces może mimo wszystko nie zrzucić pamięci, opisano w
podręczniku \fBcore\fP(5)). Właścicielem pliku zrzutu jest użytkownik, którego
uprawnienia do systemu plików ma proces wykonujący zrzut. Nie są stosowane
żadne mechanizmy bezpieczeństwa. Jest to przeznaczone tylko do celów
debugowania: tryb ten jest niebezpieczny, ponieważ pozwala użytkownikom
nieuprzywilejowanym na sprawdzanie zawartości pamięci procesów
uprzywilejowanych.
.TP 
\fI2\ (\[Bq]suidsafe\[rq])\fP
.\" In kernel source: SUID_DUMP_ROOT
Zrzut pamięci programu, dla którego w normalnej sytuacji taki zrzut nie
zostałby wykonany (patrz wyżej \[Bq]0\[rq]), może być odczytany tylko przez
administratora (root). Pozwala to użytkownikowi usunąć plik ze zrzutem, ale
nie pozwala na jego odczytanie. Z powodów bezpieczeństwa w tym trybie pliki
zrzutu nie nadpisują istniejących plików. Ten tryb jest odpowiedni, gdy
administrator będzie chciał debugować problemy w naturalnym środowisku.
.IP
.\" 9520628e8ceb69fa9a4aee6b57f22675d9e1b709
.\" 54b501992dd2a839e94e76aa392c392b55080ce8
Dodatkowo, od Linuksa 3.6, \fI/proc/sys/kernel/core_pattern\fP musi być
absolutną ścieżką lub poleceniem potokowym (zob. \fBcore\fP(5)). Do dziennika
jądra zapisane zostaną ostrzeżenia, jeśli \fIcore_pattern\fP nie będzie się
stosowało do tych reguł i nie utworzy się zrzut pamięci.
.RE
.IP
Szczegóły odnośnie wpływu ustawienia \[Bq]zrzucalności\[rq] procesu na
sprawdzanie trybu dostępu ptrace opisano w podręczniku \fBptrace\fP(2).
.TP 
\fI/proc/sys/fs/super\-max\fP
Plik steruje maksymalną liczbą superbloków, a więc i maksymalną liczbą
systemów plików, które jądro może zamontować. Potrzeba zwiększenia wartości
\fIsuper\-max\fP występuje tylko wtedy, gdy chce się zamontować więcej systemów
plików, niż na to pozwala aktualna wartość \fIsuper\-max\fP.
.TP 
\fI/proc/sys/fs/super\-nr\fP
Plik zawiera liczbę obecnie zamontowanych systemów plików.
.SH "ZOBACZ TAKŻE"
\fBproc\fP(5), \fBproc_sys\fP(5)
.PP
.SH TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są:
Przemek Borys <pborys@dione.ids.pl>,
Robert Luberda <robert@debian.org>
i
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
