Provided by: manpages-pl_20060617-1_all bug

NAZWA

       proc - pseudosystem plików z informacjami o procesach

OPIS

       proc  jest  pseudosystemem plików, który służy jako lepszy interfejs do
       struktur jądra. Zazwyczaj jest montowany w katalogu /proc.  Jest  on  w
       większości   przeznaczony   tylko   do  odczytu,  lecz  niektóre  pliki
       umożliwiają modyfikacje zmiennych jądra.

       Następujący szkic ukazuje w szybki sposób hierarchię /proc.

       /proc/[numer]
              Każdemu działającemu procesowi odpowiada katalog  o  numerycznej
              nazwie;  nazwą  tą  jest  identyfikator  procesu.  Każdy  z tych
              katalogów zawiera następujące pseudopliki i podkatalogi:

       /proc/[numer]/cmdline
              Zawiera  pełną  linię  polecenia  wydanego   przy   uruchamianiu
              procesu,  chyba  że  cały  proces  uległ  wymianie  lub  jest to
              proces-duch (zombie). W obu tych przypadkach plik będzie  pusty,
              tzn.  odczyt  tego pliku zwróci zawsze 0 znaków. Argumenty linii
              poleceń  występują  w  tym  pliku  rozdzielone  znakami  NUL,  z
              dodatkowym znakiem NUL po ostatnim łańcuchu.

       /proc/[numer]/cwd
              Jest  dowiązaniem  do  bieżącego katalogu roboczego procesu. Aby
              dowiedzieć się, jaki jest katalog roboczy procesu, na  przykład,
              20, można wydać następujące polecenia:

              cd /proc/20/cwd; /bin/pwd

              Należy   zauważyć,  że  polecenie  pwd  jest  często  wbudowanym
              poleceniem powłoki i może nie działać w tym kontekście w  sposób
              właściwy. W bashu można użyć pwd -P.

              W  procesie wielowątkowym zawartość tego linku symbolicznego nie
              jest  dostępna,  jeżeli   wątek   główny   już   się   zakończył
              (najprawdopodobniej wywołując pthread_exit(3)).

       /proc/[numer]/environ
              Plik ten zawiera środowisko procesu. Wpisy są oddzielone znakami
              NUL ('\0'), mogą także wystąpić znaki NUL na końcu. Dlatego, aby
              wypisać zmienne środowiskowe procesu 1, należy wykonać:

              (cat /proc/1/environ; echo) | tr "\000" "\n"

              (Aby  dowiedzieć  się,  z  jakiego powodu ktoś miałby chcieć coś
              takiego zrobić, zobacz lilo(8).)

       /proc/[numer]/exe
              W Linuksie 2.2 i wersjach późniejszych plik ten jest dowiązaniem
              symbolicznym zawierającym rzeczywistą nazwę ścieżki działającego
              polecenia.  Dowiązaniem   symbolicznym   można   się   normalnie
              posługiwać  -  próba  jego otwarcia otworzy plik programu. Można
              nawet wydać polecenie /proc/[numer]/exe, aby  uruchomić  kolejną
              kopię  tego  samego  procesu co [numer].W procesie wielowątkowym
              zawartość tego linku symbolicznego  nie  jest  dostępna,  jeżeli
              główny    wątek    już    się   zakończył   (wywołując   zapewne
              pthread_exit(3)).

              W Linuksie 2.0 i wcześniejszych wersjach, /proc/[numer]/exe jest
              wskaźnikiem   do  uruchomionego  pliku  binarnego  i  ma  postać
              dowiązania symbolicznego. Wywołanie  readlink(2)  na  tym  pliku
              zwróci w Linuksie 2.0 łańcuch znakowy postaci:

              [urządzenie]:i-węzeł

              Na  przykład,  [0301]:1502  będzie 1502 i-węzłem na urządzeniu o
              numerze głównym 03 (IDE, MFM  itp.)  i  pobocznym  01  (pierwsza
              partycja pierwszego dysku).

              Do zlokalizowania pliku, można posłużyć się poleceniem find(1) z
              opcją -inum.

       /proc/[numer]/fd
              Jest to podkatalog zawierający  po  jednym  wpisie  dla  każdego
              otwartego  przez  proces pliku; nazwą tego wpisu jest deskryptor
              pliku i jest on dowiązaniem symbolicznym do rzeczywistego pliku.
              Dlatego  0  jest  standardowym  wejściem,  1  jest  standardowym
              wyjściem, 2 jest standardową diagnostyką, itd.

              W  procesie  wielowątkowym  zawartość  tego  katalogu  nie  jest
              dostępna, jeżeli wątek główny już się zakończył (zazwyczaj przez
              wywołanie pthread_exit(3)).

              Można to efektywnie wykorzystać do  oszukania  programów,  które
              pobierają  dane  wejściowe  z  pliku,  lecz  nie czytają swojego
              standardowego wejścia  i  które  zapisują  do  pliku,  lecz  nie
              wysyłają  danych wyjściowych na standardowe wyjście. Zakładając,
              że opcja -i określa plik wejściowy,  a  opcja  -o  określa  plik
              wyjściowy:

              foobar -i /proc/self/fd/0 -o /proc/self/fd/1 ...

              co daje działający filtr.

              /proc/self/fd/N  jest  w  przybliżeniu tym samym co /dev/fd/N na
              niektórych systemach  uniksowych  i  uniksopodobnych.  Większość
              linuksowych   skryptów  MAKEDEV  tworzy  dowiązania  symboliczne
              /dev/fd do /proc/self/fd.

       /proc/[numer]/maps
              Plik zawierający aktualnie  zmapowane  obszary  pamięci  wraz  z
              prawami dostępu do nich.

              Format pliku jest następujący:

        address           perms offset   dev   inode      pathname
        08048000-08056000 r-xp 00000000 03:0c 64593      /usr/sbin/gpm
        08056000-08058000 rw-p 0000d000 03:0c 64593      /usr/sbin/gpm
        08058000-0805b000 rwxp 00000000 00:00 0
        40000000-40013000 r-xp 00000000 03:0c 4165       /lib/ld-2.2.4.so
        40013000-40015000 rw-p 00012000 03:0c 4165       /lib/ld-2.2.4.so
        4001f000-40135000 r-xp 00000000 03:0c 45494      /lib/libc-2.2.4.so
        40135000-4013e000 rw-p 00115000 03:0c 45494      /lib/libc-2.2.4.so
        4013e000-40142000 rw-p 00000000 00:00 0
        bffff000-c0000000 rwxp 00000000 00:00 0

              gdzie  address  jest  przestrzenią  adresemową procesu, który ją
              zajmuje, perms jest zbiorem uprawnień:

                   r = odczyt
                   w = zapis
                   x = wykonywanie
                   s = wspólne
                   p = prywatne (kopiowane przy zapisie)

              offset  jest  przesunięciem  w  pliku/czymkolwiek,  dev  zawiera
              numeru  (główny:poboczny)  urządzenia,  a inode jest i-węzłem na
              tym urządzeniu. 0 wskazuje, że nie istnieje i-węzeł  związany  z
              tym obszarem pamięci, jak to ma miejsce z bss.

              W Linuksie 2.0 nie ma pola pathname podającego nazwę ścieżki.

       /proc/[numer]/mem
              Za pośrednictwem tego pliku można korzystając z open(2), read(2)
              i fseek(3) uzyskać dostęp do stron pamięci procesu.

       /proc/[numer]/root
              UNIX i Linux wspierają pomysł określonego  dla  każdego  procesu
              osobno  katalogu  głównego  systemu  plików,  ustawianego  przez
              wywołanie systemowe chroot(2).  Plik  ten  wskazuje  na  katalog
              główny systemu plików i zachowuje się jak exe, fd/*, itp.

              W  procesie wielowątkowym zawartość tego linku symbolicznego nie
              jest dostępna, jeżeli wątek główny już się zakończył  (zazwyczaj
              przez wywołanie pthread_exit(3)).

       /proc/[numer]/smaps (od wersji Linuksa 2.6.14)
              Plik ten pokazuje zużycie pamięci dla każdego mapowania procesu.
              Dla każdego takiego mapowania pokazana jest lista  następujących
              linii:

                08048000-080bc000 r-xp 00000000 03:02 13130      /bin/bash
                Size:               464 kB
                Rss:                424 kB
                Shared_Clean:       424 kB
                Shared_Dirty:         0 kB
                Private_Clean:        0 kB
                Private_Dirty:        0 kB

              Pierwsza z tych linii pokazuje te same informacje o mapowaniach,
              co  w  /proc/[numer]/maps.  Pozostałe  linie  zawierają  rozmiar
              mapowania,  ilość  mapowań  obecnych  w  RAM,  liczbę czystych i
              brudnych stron współdzielonych w mapowaniu oraz liczbę  czystych
              i brudnych prywatnych stron w mapowaniu.

              Ten  plik istnieje tylko jeśli podczas kompilacji jądra włączono
              opcję CONFIG_MMU.

       /proc/[numer]/stat
              Informacje o stanie procesu.  Korzysta  z  tego  ps(1).  Są  one
              zdefiniowane w /usr/src/linux/fs/proc/array.c.

              Kolejne pola i ich właściwe specyfikatory formatu scanf(3) to:

              pid %d Identyfikator procesu (PID).

              comm %s
                     Nazwa  pliku  wykonywalnego  w nawiasach. Widać, czy plik
                     jest uległ wymianie.

              state %c
                     Jeden znak  spośród  "RSDZTW",  gdzie  R  oznacza  proces
                     działający,    S   -   proces   uśpiony   w   oczekiwaniu
                     przerywalnym,  D   -   proces   uśpiony   w   oczekiwaniu
                     nieprzerywalnym,  Z  - proces duch (zombie), T - śledzony
                     lub zatrzymany (przez  sygnał),  a  W  -  którego  strony
                     zastąpiono.

              ppid %d
                     PID procesu macierzystego.

              pgrp %d
                     Identyfikator grupy procesów danego procesu.

              session %d
                     Identyfikator sesji procesu.

              tty_nr %d
                     Terminal (tty), z którego proces korzysta.

              tpgid %d
                     Identyfikator  grupy  procesów,  do  której należy proces
                     będący właścicielem  terminala  (tty),  do  którego  dany
                     proces jest podłączony.

              flags %lu
                     Słowo   flag   jądra   dla   danego   procesu.  Znaczenie
                     poszczególnych bitów określają  definicje  PF_*  w  pliku
                     <linux/sched.h>. Szczegóły zależą od wersji jądra.

              minflt %lu
                     Liczba  drobnych  błędów,  które popełnił proces, a które
                     nie wymagały załadowania strony pamięci z dysku.

              cminflt %lu
                     Liczba drobnych błędów procesów potomnych.

              majflt %lu
                     Liczba głównych błędów, które popełnił  proces,  a  które
                     wymagały załadowania strony pamięci z dysku.

              cmajflt %lu
                     Liczba głównych błędów procesów potomnych.

              utime %lu
                     Liczba  jiffies  (przerwań  zegarowych),  podczas których
                     proces był kolejkowany w trybie użytkownika.

              stime %lu
                     Liczba jiffies, podczas których proces był kolejkowany  w
                     trybie jądra.

              cutime %ld
                     Liczba  jiffies,  podczas  których  procesy  potomne były
                     kolejkowane   w   trybie   użytkownika.   (Zobacz   także
                     times(2)).

              cstime %ld
                     Liczba  jiffies,  podczas  których  procesy  potomne były
                     kolejkowane w trybie jądra.

              priority %ld
                     Standardowa  wartość  nice  plus  piętnaście.  Wartość  w
                     jądrze jest zawsze nieujemna.

              nice %ld
                     Wartość nice znajduje się w zakresie od 19 (najmilszy) do
                     -19 (niemiły dla innych).

              0 %ld  Trwale  przypisana  wartość  0;  jest  to  wypełniacz  po
                     usuniętym polu.

              itrealvalue %ld
                     Czas w jiffies poprzedzający wysłanie przez czasomierz do
                     procesu następnego sygnału SIGALRM.

              starttime %lu
                     Czas  uruchomienia  procesu   wyrażony   w   jiffies   od
                     uruchomienia systemu.

              vsize %lu
                     Rozmiar pamięci wirtualnej w bajtach.

              rss %ld
                     Resident  Set  Size:  liczba  stron,  które  proces  ma w
                     rzeczywistej pamięci minus 3 dla celów administracyjnych.
                     Są  to  po  prostu  strony,  które obejmują segment text,
                     segment data i przestrzeń stosu. Nie obejmuje  to  stron,
                     które  nie  były  ładowane  na  żądanie  lub które uległy
                     wymianie.

              rlim %lu
                     Aktualne  ograniczenie  rss  procesu  w  bajtach  (zwykle
                     4294967295 na i386).

              startcode %lu
                     Adres, pod którym zaczyna się kod programu.

              endcode %lu
                     Adres, pod którym kończy się kod programu.

              startstack %lu
                     Adres początku stosu.

              kstkesp %lu
                     Aktualna  wartość  esp  (wskaźnika  stosu),  określona na
                     podstawie strony stosu jądra dla danego procesu.

              kstkeip %lu
                     Aktualny EIP (wskaźnik instrukcji).

              signal %lu
                     Mapa bitowa oczekujących sygnałów.

              blocked %lu
                     Mapa bitowa ignorowanych sygnałów.

              sigignore %lu
                     Mapa bitowa ignorowanych sygnałów.

              sigcatch %lu
                     Mapa bitowa przechwyconych sygnałów.

              wchan %lu
                     Jest to "kanał", na którym oczekuje proces. Jest to adres
                     funkcji  systemowej  i  można  go znaleźć na liście nazw,
                     jeśli potrzebna jest nazwa tekstowa. (Gdy /etc/psdatabase
                     jest  aktualne,  można  zobaczyć  działanie  pola  WCHAN,
                     próbująć ps -l.)

              nswap %lu
                     Liczba stron, które uległy wymianie (nie konserwowane).

              cnswap %lu
                     Łączna  wartość  nswap  dla   procesów   potomnych   (nie
                     konserwowane).

              exit_signal %d
                     Sygnał  wysyłany  przez  ginący  proces  do  jego procesu
                     macierzystego.

              processor %d
                     Numer CPU, na którym proces ostatnio działał.

              rt_priority %lu (od jądra 2.5.19)
                     Priorytet   planowania   czasu    rzeczywistego    (patrz
                     sched_setscheduler(2)).

              policy %lu (od wersji jądra 2.5.19)
                     Polityka  przydzielania  zadaniom  czasu procesora (patrz
                     sched_setscheduler(2)).

       /proc/[numer]/statm
              Udostępnia informacje o liczbie stron pamięci  w  danym  stanie.
              Występują następujące kolumny:
               size       łączny rozmiar programu
               resident   rozmiar części rezydentnej
               share      strony wspólne
               text        text (kod)
               lib        biblioteki
               data        dane/stos
               dt          strony  nieaktualne  (dirty;  nieużywane w Linuksie
              2.6)

       /proc/[numer]/status
              Udostępnia   sporo   informacji    ze    /proc/[numer]/stat    i
              /proc/[numer]/statm  w  postaci  łatwiejszej do przeanalizowania
              przez człowieka.

       /proc/[numer]/task (od wersji jądra 2.6.0-test6)
              Jest to katalog zawierający po jednym  podkatalogu  dla  każdego
              wątku  procesu.  Nazwą  każdego  podkatalogu  jest numeryczne ID
              wątku (patrz gettid(2)).  Każdy  z  podkatalogów  zawiera  zbiór
              plików   o   tej   samej   nazwie   i  zawartości,  co  katalogi
              /proc/[numer].  Dla  atrybutów,  które  są  współdzielone  przez
              wszystkie  wątki  zawartość  każdego  z  plików  w podkatalogach
              task/[ID-wtku] będzie  taka  sama  jak  zawartość  odpowiednich
              plików  w  nadrzędnym  katalogu  /proc/[numer]  (np.  w procesie
              wielowątkowym wszystkie pliki task/[ID-wtku/cwd będą miały taką
              samą   zawartość,   jak   plik   /proc/[numer]/cwd   w  katalogu
              nadrzędnym, ponieważ  wszystkie  wątki  procesu  dzielą  katalog
              bieżący).  Dla  atrybutów,  które  dla  każdego  wątku są różne,
              odpowiednie pliki wtask/[ID-wtku] mogą mieć różne wartości (np.
              różne  pola  w  każdym  z plików task/[ID-wtku]/status mogą być
              inne dla każdego wątku).

              W procesie wielowątkowym zawartość  katalogu  /proc/[numer]/task
              nie  jest  dostępna,  jeżeli  wątek  główny  już  się  zakończył
              (najprawdopodobniej wywołując pthread_exit(3)).

       /proc/apm
              Wersja APM (Zaawansowane zarządzanie energią) oraz informacja  o
              akumulatorach,   gdy   CONFIG_APM   było   zdefiniowane  podczas
              kompilacji jądra.

       /proc/bus
              Zawiera podkatalogi odpowiadające zainstalowanym magistralom.

       /proc/bus/pccard
              Podkatalog  dla  urządzeń   pcmcia,   gdy   CONFIG_PCMCIA   było
              zdefiniowane podczas kompilacji jądra.

       /proc/bus/pccard/drivers

       /proc/bus/pci
              Zawiera różne podkatalogi magistral oraz pseudopliki zawierające
              informacje o magistralach PCI, zainstalowanych urządzeniach oraz
              sterownikach  urządzeń.  Niektóre z tych plików nie są w postaci
              ASCII.

       /proc/bus/pci/devices
              Informacje o urządzeniach PCI. Dostęp do nich może  się  odbywać
              poprzez lspci(8) i setpci(8).

       /proc/cmdline
              Argumenty  przekazane  jądru  Linuksa  podczas  startu  systemu.
              Zazwyczaj odbywa się to poprzez zarządcę startu systemu, takiego
              jak lilo(1).

       /proc/cpuinfo
              Jest to zbiór elementów zależnych od CPU i architektury systemu;
              dla  każdej  wspieranej  architektury  jest  inna   lista.   Dwa
              popularne  wpisy  to: processor, który udostępnia numer CPU oraz
              bogomips;   jest   to   stała   systemowa,   wyliczona   podczas
              inicjalizacji jądra. Maszyny SMP zawierają informacje o każdym z
              procesorów.

       /proc/devices
              Listing tekstowy numerów głównych oraz grup  urządzeń.  Może  to
              służyć skryptom MAKEDEV do zachowania spójności z jądrem.

       /proc/diskstats (od wersji Linuksa 2.5.69)
              Plik  zawiera  statystyki  operacji  wejścia/wyjścia dla każdego
              urządzenia dyskowego. Dalsze informacje można  znaleźć  w  pliku
              Documentation/iostats.txt w źródłach jądra.

       /proc/dma
              Jest  listą  zarejestrowanych  i  używanych  kanałów DMA (direct
              memory access) szyny ISA.

       /proc/driver
              Pusty podkatalog.

       /proc/execdomains
              Lista  domen  uruchamiania  (wcieleń  ABI  [Application   Binary
              Interface - przyp. tłum.]).

       /proc/fb
              Informacje  o  framebuferze,  o  ile  podczas  kompilacji  jądra
              zdefiniowano CONFIG_FB.

       /proc/filesystems
              Listing  tekstowy  wkompilowanych  w  jądro   systemów   plików.
              Przypadkowo,  informacje  te są wykorzystywane przez mount(1) do
              kolejnego próbowania różnych systemów plików,  gdy  żadnego  nie
              podano.

       /proc/fs
              Pusty podkatalog.

       /proc/ide
              Katalog  ten  istnieje w systemach zawierających magistralę IDE.
              Zawiera po jednym katalogu  dla  każdego  kanału  IDE  oraz  dla
              przyłączonych urządzeń. Wśród plików są:

              cache              rozmiar bufora w KB
              capacity           liczba sektorów
              driver             wersja sterownika
              geometry           geometria fizyczna i logiczna
              identify           szesnastkowo
              media              rodzaj nośnika
              model              numer modelu producenta
              settings           ustawienia napędu
              smart_thresholds   szesnastkowo
              smart_values       szesnastkowo

              Dostęp  do  tych  informacji  w  przyjaznym  formacie  umożliwia
              program narzędziowy hdparm(8).

       /proc/interrupts
              Służy  do  zapamiętania  liczby  przerwań  dla  każdego  IRQ   w
              (przynajmniej)    architekturze    i386.    Łatwe   do   odczytu
              formatowanie, zrobione w ASCII.

       /proc/iomem
              Odwzorowanie portów we/wy w pamięci w Linuksie 2.4.

       /proc/ioports
              Jest to lista  obecnie  zarejestrowanych  i  używanych  obszarów
              portów we/wy.

       /proc/kallsyms (od wersji Linuksa 2.5.71)
              Zawiera  wyeksportowane  przez jądro definicje symboli, które są
              używane przez narzędzia modules(X) do  dynamicznego  podłączania
              ładowanych   modułów.   W   wersji   jądra   Linuksa   2.5.47  i
              wcześniejszych podobny plik z troszkę odmienną  zawartością  był
              nazwany ksyms.

       /proc/kcore
              Plik ten reprezentuje pamięć fizyczną systemu i jest zachowany w
              formacie pliku core dla ELF. Korzystając  z  tego  pseudoplikiem
              oraz     z     niezestripowanego     binarnego    pliku    jądra
              (/usr/src/linux/vmlinux), można za pomocą GDB testować  aktualny
              stan dowolnej struktury danych jądra.

              Całkowity  rozmiar tego pliku to rozmiar fizycznej pamięci (RAM)
              plus 4KB.

       /proc/kmsg
              Plik ten może  służyć  do  odczytu  komunikatów  jądra,  zamiast
              funkcji systemowej syslog(2). Aby odczytać ten plik, proces musi
              mieć uprawnienia superużytkownika i tylko jeden proces  powinien
              dokonywać jego odczytu. Pliku tego nie należy czytać, gdy działa
              proces syslog, korzystający z funkcji  systemowej  syslog(2)  do
              rejestrowania komunikatów jądra.

              Z tego pliku pobiera komunikaty program dmesg(8).

       /proc/ksyms (Linux 1.1.23-2.5.47)
              Patrz /proc/kallsyms.

       /proc/loadavg
              Pierwsze  trzy  pola  w  tym  pliku zawierają średnie obciążenie
              (loadavg)  podając   informację   o   średniej   liczbie   zadań
              uruchomionych  (stan  R)  oraz  czekających  na dyskowe operacje
              wejścia/wyjścia (stan D)  w ciągu ostatnich 1, 5  i 15 minut. Są
              to te same wartości średniego obciążenia, które podaje uptime(1)
              i inne programy. Czwarte pole zawiera dwie liczby oddzielone  od
              siebie znakiem ukośnika (/). Pierwsza z nich jest liczbą obecnie
              uruchomionych  zadań  (procesów,  wątków);  wartość  ta   będzie
              mniejsza  lub  równa  liczbie  CPU.  Wartość  za ukośnikiem jest
              liczbą zadań,  obecnych  w  systemie.  Piąte  pole  zawiera  PID
              najnowszego ostatnio utworzonego procesu w systemie.

       /proc/locks
              Plik  ten pokazuje aktualne blokady plików (flock(2) i fcntl(2))
              oraz dzierżawy (fcntl(2)).

       /proc/malloc
              Ten plik istnieje tylko jeśli  podczas  kompilacji  zdefiniowano
              CONFIGDEBUGMALLOC.

       /proc/meminfo
              Plik  ten jest używany przez free(1) do informowania o rozmiarze
              wolnej i zajętej pamięci (zarówno fizycznej, jak  i  wymiany)  w
              systemie,  a także o pamięci wspólnej i buforach używanych przez
              jądro.

              Jest on w tym samym formacie co free(1), poza tym, że  podawanie
              informacji odbywa się w bajtach, a nie w KB.

       /proc/mounts
              Jest to lista wszystkich systemów plików obecnie zamontowanych w
              systemie. Format tego pliku jest udokumentowany w  fstab(5).  Od
              wersji 2.6.15 jądra Linuksa, ten plik może być użyty w wywołaniu
              funkcji poll(): po otwarciu tego pliku do odczytu, zmiana w  nim
              (np.  montowanie  lub  odmontowanie systemu plików) powoduje, że
              select(2) oznaczy deskryptor jako możliwy do odczytu, a  poll(2)
              i epoll_wait(2) zaznaczą, że w pliku wystąpił błąd.

       /proc/modules
              Tekstowa  lista  modułów,  które  załadowano  w systemie. Zobacz
              także lsmod(8).

       /proc/mtrr
              Memory  Type  Range  Registers.  Szczegóły   można   znaleźć   w
              /usr/src/linux/Documentation/mtrr.txt.

       /proc/net
              Różne  sieciowe  pseudopliki,  z  których  wszystkie podają stan
              pewnej części warstwy  sieciowej.  Plik  ten  zawiera  struktury
              ASCII  i  dlatego  nadaje  się  do odczytu za pomocą cat. Jednak
              standardowy pakiet netstat(8) daje dużo czystszy dostęp do  tych
              plików.

       /proc/net/arp
              Zawiera   zrzut  tabeli  ARP  jądra  używanej  do  rozwiązywania
              adresów, w czytelnej postaci  ASCII.  Pokazane  zostaną  zarówno
              wyuczone  dynamicznie,  jak  i  wstępnie  zaprogramowane wpisy w
              tabeli ARP. Format jest następujący:

        IP address     HW type   Flags     HW address          Mask   Device
        192.168.0.50   0x1       0x2       00:50:BF:25:68:F3   *      eth0
        192.168.0.250  0x1       0xc       00:00:00:00:00:00   *      eth0

              Gdzie 'IP address' jest adresem IPv4 maszyny, a 'HW  type'  jest
              rodzajem  sprzętu wg RFC 826. 'Flags' są to wewnętrzne znaczniki
              struktury ARP (zdefiniowane  w  /usr/include/linux/if_arp.h),  a
              'HW  address' jest odwzorowaniem adresu IP w warstwie fizycznej,
              jeśli jest ono określone.

       /proc/net/dev
              Pseudoplik  dev   zawiera   informacje   o   stanie   urządzenia
              sieciowego.   Zawierają   one  liczbę  otrzymanych  i  wysłanych
              pakietów,  liczbę  błędów  i  kolizji   oraz   inne   podstawowe
              statystyki.   Informacje  te  są  wykorzystywane  przez  program
              ifconfig(8) do informowania o  stanie  urządzenia.  Format  jest
              następujący:

 Inter-|   Receive                                                |  Transmit
  face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
     lo: 2776770   11307    0    0    0     0          0         0  2776770   11307    0    0    0     0       0          0
   eth0: 1215645    2751    0    0    0     0          0         0  1782404    4324    0    0    0   427       0          0
   ppp0: 1622270    5552    1    0    0     0          0         0   354130    5669    0    0    0     0       0          0
   tap0:    7714      81    0    0    0     0          0         0     7714      81    0    0    0     0       0          0

       /proc/net/dev_mcast
              Zdefiniowany w /usr/src/linux/net/core/dev_mcast.c:
                   indx interface_name  dmi_u dmi_g dmi_address
                   2    eth0            1     0     01005e000001
                   3    eth1            1     0     01005e000001
                   4    eth2            1     0     01005e000001

       /proc/net/igmp
              Internetowy   Protokół   Zarządzania   Grupami.  Zdefiniowany  w
              /usr/src/linux/net/core/igmp.c.

       /proc/net/rarp
              Plik ten ma ten sam format, co plik arp i zawiera aktualną  bazę
              odwrotnych odwzorowań, używaną do udostępniania usług odwrotnego
              poszukiwania adresów rarp(8). Jeśli RARP nie jest skonfigurowane
              w jądrze, to plik ten nie będzie istniał.

       /proc/net/raw
              Zawiera zrzut tabeli gniazd surowych (RAW). Większość informacji
              nie  jest  przeznaczona  do  użytku  innego  niż  odpluskwiania.
              Wartość  ,,sl"  jest slotem mieszania jądra dla gniazda, ,,local
              address" jest parą składającą się z lokalnego  adresu  i  numeru
              protokołu.  ,,st" jest stanem wewnętrznym gniazda. ,,tx_queue" i
              ,,rx_queue" są kolejkami danych przychodzących i wychodzących, w
              sensie   zużycia   pamięci  jądra.  Pola  ,,tr",  ,,tm->when"  i
              ,,rexmits" nie są używane  przez  gniazda  surowe.  Pole  ,,uid"
              zawiera efektywny UID twórcy gniazda.

       /proc/net/snmp
              Ten   plik  zawiera  dane  ASCII  potrzebne  bazom  agenta  snmp
              zarządzającym informacjami o IP, ICMP, TCP i UDP.

       /proc/net/tcp
              Zawiera zrzut tabeli gniazd TCP. Wiele informacji  nie  przydaje
              się  do  użytku  poza  odpluskwianiem.  Wartość "sl" jest slotem
              mieszania  jądra  dla  gniazda,  "local   address"   jest   parą
              składającą  się  z  lokalnego  adresu  i  numeru  portu. "remote
              addres" jest parą składającą się ze  zdalnego  adresu  i  numeru
              portu   (jeśli  gniazdo  jest  podłączone).  ,,st"  jest  stanem
              wewnętrznym gniazda.  ,,tx_queue"  i  ,,rx_queue"  są  kolejkami
              danych  przychodzących  i  wychodzących w sensie zużycia pamięci
              jądra. Pola ,,tr", ,,tm-when" i ,,rexmits" zawierają  wewnętrzne
              informacje  o  stanie  gniazda  w jądrze i są przydatne tylko do
              odpluskwiania. Pole ,,uid" zawiera efektywny UID twórcy gniazda.

       /proc/net/udp
              Zawiera  zrzut  tabeli gniazd UDP. Wiele informacji nie przydaje
              się do użytku poza odpluskwianiem.  Wartość  ,,sl"  jest  slotem
              mieszania   jądra   dla  gniazda,  ,,local  address"  jest  parą
              składającą się z  lokalnego  adresu  i  numeru  portu.  ,,remote
              addres"  jest  parą  składającą  się ze zdalnego adresu i numeru
              portu  (jeśli  gniazdo  jest  podłączone).  ,,st"  jest   stanem
              wewnętrznym  gniazda.  ,,tx_queue"  i  ,,rx_queue"  są kolejkami
              danych przychodzących i wychodzących w  sensie  zużycia  pamięci
              jądra.  Pola  ,,tr",  ,,tm-when"  i  ,,rexmits" nie są używane w
              gniazdach UDP. Pole ,,uid" zawiera efektywny UID twórcy gniazda.
              Format jest następujący:

 sl  local_address rem_address   st tx_queue rx_queue tr rexmits  tm->when uid
  1: 01642C89:0201 0C642C89:03FF 01 00000000:00000001 01:000071BA 00000000 0
  1: 00000000:0801 00000000:0000 0A 00000000:00000000 00:00000000 6F000100 0
  1: 00000000:0201 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0

       /proc/net/unix
              Wymienia  gniazda  domeny UNIX, obecne w systemie oraz ich stan.
              Format jest następujący:
              Num RefCount Protocol Flags    Type St Path
               0: 00000002 00000000 00000000 0001 03
               1: 00000001 00000000 00010000 0001 01 /dev/printer

              Gdzie ,,Num" jest numerem wpisu  w  tablicy  jądra,  ,,RefCount"
              jest  liczbą  użytkowników  gniazda,  ,,Protocol"  obecnie  jest
              zawsze zerem, ,,Flags" reprezentuje wewnętrzne znaczniki  jądra,
              określające stan gniazda. ,,Type" jest zawsze równe ,,1" (Nie ma
              na razie w  jądrze  wsparcia  dla  gniazd  datagramowych  domeny
              UNIX).  ,,St"  jest  wewnętrznym  stanem gniazda, a ścieżka jest
              ścieżką (jeśli istnieje) związaną z gniazdem.

       /proc/partitions
              Zawiera liczby główne i poboczne każdej z partycji  oraz  liczby
              bloków i nazwy partycji.

       /proc/pci
              Listing    wszystkich    urządzeń   PCI   znalezionych   podczas
              inicjalizacji jądra i ich konfiguracja.

       /proc/scsi
              Katalog z pseudoplikiem scsi na  pośrednim  poziomie  i  różnymi
              podkatalogami  niskopoziomowych  sterowników SCSI, zawierającymi
              po jednym pliku dla każdego kontrolera SCSI  w  danym  systemie;
              każdy  z  nich podaje stan jakiejś części podsystemu we/wy SCSI.
              Pliki te zawierają struktury  ASCII  i  dlatego  nadaje  się  do
              odczytu za pomocą cat.

              Możliwy  jest  też  zapis  do  niektórych  z tych plików, w celu
              rekonfiguracji podsystemu, lub przełączania różnych  parametrów.

       /proc/scsi/scsi
              Jest  listingiem wszystkich znanych jądru urządzeń SCSI. Listing
              jest podobny  do  widzianego  podczas  ładowania  systemu.  scsi
              wspiera  obecnie tylko polecenie add-single-device umożliwiające
              rootowi dodanie do listy znanych urządzeń urządzenia  włączonego
              na gorąco.

              Polecenie   echo   'scsi   add-single-device   1   0   5   0'  >
              /proc/scsi/scsi  spowoduje,  że  kontroler  scsi1   przeprowadzi
              skanowanie  kanału SCSI 0 w poszukiwaniu urządzenia o ID 5 i LUN
              0. Jeśli już istnieje urządzenie o takim adresie, lub adres jest
              nieprawidłowy, zostanie zwrócony błąd.

       /proc/scsi/[drivername]
              [drivername]  może  obecnie  być  jednym  z: NCR53c7xx, aha152x,
              aha1542,  aha1740,  aic7xxx,   buslogic,   eata_dma,   eata_pio,
              fdomain,  in2000,  pas16,  qlogic,  scsi_debug,  seagate,  t128,
              u15-24f, ultrastore, or wd7000. Ukazują się te z katalogów,  dla
              których odpowiednie sterowniki zarejestrowały przynajmniej jeden
              kontroler SCSI. Każdy katalog zawiera  jeden  plik  dla  każdego
              zarejestrowanego  kontrolera. Każdy z plików kontrolera ma nazwę
              odpowiadającą  numerowi  kontrolera,  przyznanemu  podczas  jego
              inicjacji.

              Czytanie  tych  plików  zwykle  pokaże konfigurację sterownika i
              kontrolera, statystyki itp.

              Pisanie do tych  plików  umożliwia  różne  operacje  na  różnych
              kontrolerach.  Na przykład za pomocą poleceń latency i nolatency
              root  może  uaktywniać  lub  deaktywować   kod   pomiaru   czasu
              oczekiwania dla poleceń (command latency) w sterowniku eata_dma.
              Za pomocą poleceń lockup i unlock root może sterować symulowanym
              przez sterownik scsi_debug blokowaniem magistrali.

       /proc/self
              Ten  katalog  odnosi  się  do  procesu  korzystającego z systemu
              plików /proc i jest identyczny z  katalogiem  o  nazwie  będącej
              jego PID-em.

       /proc/slabinfo
              Informacje    dotyczące   buforów   (cache)   jądra.   Występują
              następujące kolumny:
              cache-name
              num-active-objs
              total-objs
              object-size
              num-active-slabs
              total-slabs
              num-pages-per-slab
              Szczegóły można znaleźć w slabinfo(5).

       /proc/stat
              statystyki jądra/systemu. Różnią  się  pomiędzy  architekturami.
              Wśród wspólnych wpisów są:

              cpu  3357 0 4313 1362393
                     Ilość  czasu,  wyrażona w USER_HZ (jedna setna sekundy na
                     większości architektur), które system  spędził  w  trybie
                     użytkownika,  trybie  użytkownika o obniżonym priorytecie
                     (nice), trybie systemowym  i  w  zadaniu  idle.  Ostatnia
                     wartość  powinna  być równa iloczynowi wartości USER_HZ z
                     drugim wpisem w pseudopliku uptime.

                     W  Linuksie  2.6  linia   ta   zawiera   trzy   dodatkowe
                     kolumny:iowait - czas oczekiwania na zakończenie operacji
                     I/O (od wersji 2.5.41); irq - czas obsługiwania  przerwań
                     (od  2.6.0-test4);  softirq - cxzas obsługiwania miękkich
                     przerwań (softirqs) (od 2.6.0-test4).

              page 5741 1808
                     Liczba stron, które system wstronicował  i  liczba  tych,
                     które wystronicował (z dysku).

              swap 1 0
                     Liczba stron wymiany, które wniesiono i wyniesiono.

              intr 1462898
                     Linia  ta  pokazuje licznik przerwań obsłużonych od czasu
                     uruchomienia    dla    każdego    możliwego    przerwania
                     systemowego.  Pierwsza  kolumna  określa całkowitą liczbę
                     wszystkich obsłużonych przerwań, każda  następna  określa
                     całkowitą wartość dla danego przerwania.

              disk_io: (2,0):(31,30,5764,1,2) (3,0):...
                     (major,minor):(noinfo,       read_io_ops,      blks_read,
                     write_io_ops, blks_written)
                     (tylko Linux 2.4)

              ctxt 115315
                     Liczba przełączeń kontekstu, które przeszedł system.

              btime 769041601
                     Czas uruchomienia  systemu,  w  sekundach,  od  epoki  (1
                     stycznia 1970).

              processes 86031
                     Liczba rozwidleń procesów od uruchomienia systemu.

              procs_running 6
                     Liczba   procesów  w  stanie  runnable  (Linux  2.5.45  i
                     późniejsze).

              procs_blocked 2
                     Liczba  procesów  oczekujących  na  zakończenie  operacji
                     wejścia/wyjścia (Linux 2.5.45 i późniejsze).

       /proc/swaps
              Używane obszary wymiany. Zobacz także swapon(8).

       /proc/sys
              Katalog   ten   (obecny   od  1.3.57)  zawiera  wiele  plików  i
              podkatalogów odpowiadających zmiennym jądra. Zmienne te mogą być
              odczytywane  i  czasem  modyfikowane  za  pośrednictwem  systemu
              plików proc,  jak  też  przy  wykorzystaniu  funkcji  systemowej
              sysctl(2). Istnieją w nim aktualnie podkatalogi abi, debug, dev,
              fs, kernel, net, proc, rxrpc,  sunrpc  i  vm,  z  których  każdy
              zawiera więcej plików i podkatalogów.

       /proc/sys/abi
              Ten   katalog   może  zawierać  pliki  z  binarną  informacją  o
              aplikacji. W niektórych systemach nie występuje.

       /proc/sys/debug
              Ten katalog może być pusty.

       /proc/sys/dev
              Ten katalog zawiera informacje  specyficzne  dla  poszczególnych
              urządzeń.  (np. dev/cdrom/info). W niektórych systemach może być
              pusty.

       /proc/sys/fs
              Zawiera podkatalogi binfmt_misc, inotify, and mqueue oraz  pliki
              dentry-state,  dir-notify-enable,  dquot-nr,  file-max, file-nr,
              inode-max,     inode-nr,     inode-state,      lease-break-time,
              leases-enable,    overflowgid,    overflowuid,    suid_dumpable,
              super-max i super-nr.

       /proc/sys/fs/binfmt_misc
              Dokumentacja plików z tego  katalogu  znajduje  się  w  źródłach
              jądra w Documentation/binfmt_misc.txt.

       /proc/sys/fs/dentry-state
              Zawiera  sześć  liczb:  nr_dentry,  nr_unused, age_limit (wiek w
              sekundach), want_pages (strony,  których  zażądał  system)  oraz
              dwie  wartości  nieużywane.  nr_dentry  wydaje się być cały czas
              równe 0.  nr_unused  wydaje  się  oznaczać  liczbę  nieużywanych
              dentry.  age_limit jest wyrażonym w sekundach wiekiem dentry, po
              osiągnięciu  którego  wpisy  w  cache'u   dentry   mogą   zostać
              odzyskane,   gdy   brakuje   pamięci  i  want_pages  ma  wartość
              niezerową, podczas gdy jądro wywołało shrink_dcache_pages() oraz
              cache dentry nie został jeszcze wyczyszczony.

       /proc/sys/fs/dir-notify-enable
              Plik  ten  może  służyć  do  wyłączania lub włączania interfejsu
              dnotify opisanego w fcntl(2) dla całego systemu. Wartość 0 w tym
              pliku wyłącza interfejs, a wartość 1 go włącza.

       /proc/sys/fs/dquot-max
              Zawiera  maksymalną liczbę buforowanych wpisów kwot 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.

       /proc/sys/fs/dquot-nr
              Zawiera  liczbę przydzielonych wpisów kwot dyskowych oraz liczbę
              wolnych wpisów kwot dyskowych.

       /proc/sys/fs/file-max
              Zawiera ogólnosystemowe  ograniczenie  liczby  plików  otwartych
              przez  wszystkie procesy. (Zobacz także setrlimit(2), które może
              służyć  procesom  do  ustawiania   ograniczenia   dla   procesu,
              RLIMIT_NOFILE,  jako liczby plików, które proces może otworzyć).
              Gdy otrzymuje się mnóstwo  komunikatów  o  przekroczeniu  liczby
              uchwytów  plików (file handles), to można spróbować zwiększyć tę
              wartość:

              echo 100000 > /proc/sys/fs/file-max

              Stała jądra NR_OPEN narzuca górne ograniczenie  wartości,  która
              może zostać umieszczona w file-max.

              Gdy   zwiększa  się  /proc/sys/fs/file-max,  należy  pamiętać  o
              zwiększeniu /proc/sys/fs/inode-max do wartości 3-4 razy większej
              niż  nowa  wartość /proc/sys/fs/file-max lub należy się liczyć z
              tym, że zabraknie i-węzłów.

       /proc/sys/fs/file-nr
              Ten (tylko do odczytu) plik określa liczbę  aktualnie  otwartych
              plików.  Zawiera  on trzy liczby: liczbę przydzielonych uchwytów
              plików, liczbę wolnych uchwytów plików  oraz  maksymalną  liczbę
              uchwytów  plików.  Jądro  przydziela uchwyty plików dynamicznie,
              ale ich później nie zwalnia. Gdy liczba przydzielonych  uchwytów
              plików zbliża się do

              maksimum,  należy  rozważyć  zwiększenie tego maksimum. Gdy jest
              duża liczba wolnych uchwytów plików, oznacza  to,  że  wystąpiło
              przesilenie  w  wykorzystaniu uchwytów plików i, prawdopodobnie,
              niema potrzeby zwiększania maksimum.

       /proc/sys/fs/inode-max
              Ten  plik  zawiera  maksymalną  liczbę  i-węzłów  w  pamięci.  W
              niektórych  (2.4)  systemach  może  nie  występować.  Wartość ta
              powinna być 3-4 razy większa niż wartość w file-max, gdyż stdin,
              stdout 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.

       /proc/sys/fs/inode-nr
              Zawiera dwie pierwsze wartości z inode-state.

       /proc/sys/fs/inode-state
              Zawiera  siedem  liczb:  nr_inodes,  nr_free_inodes, preshrink i
              cztery wartości nieużywane. nr_inodes jest liczbą przydzielonych
              w  systemie  i-węzłów. Może ona być nieco większa niż inode-max,
              gdyż  Linux  przydziela  je  pełnymi  stronami.   nr_free_inodes
              przedstawia  liczbę  wolnych i-węzłów. preshrink jest niezerowe,
              gdy nr_inodes > inode-max oraz  w  systemie  występuje  potrzeba
              wyczyszczenia listy i-węzłów zamiast przydzielania nowych.

       /proc/sys/fs/inotify (od wersji Linuksa 2.6.13)
              Ten  katalog zawiera pliki max_queued_events, max_user_instances
              i max_user_watches, których można  użyć,  aby  ograniczyć  ilość
              pamięci   jądra   używanej   przez   interfejs  inotify.  Więcej
              szczegółów można znaleźć w inotify(7).

       /proc/sys/fs/lease-break-time
              Określa  okres  ulgi,  przez  jaki  jądro   zapewnia   procesowi
              utrzymanie dzierżawy pliku (fcntl(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.

       /proc/sys/fs/leases-enable
              Ten   plik   może  służyć  do  ogólnosystemowego  włączania  lub
              wyłączania dzierżaw plików  (fcntl(2)).  Gdy  plik  ten  zawiera
              wartość  0,  dzierżawy  są  wyłączone.  Wartość niezerowa włącza
              dzierżawy.

       /proc/sys/fs/mqueue (od wersji Linuksa 2.6.6)
              Ten katalog zawiera pliki  msg_max,  msgsize_max  i  queues_max,
              kontrolujące  zasoby  używane  przez  kolejki komunikatów POSIX.
              Szczegółowe informacje można znaleźć w mq_overview(7).

       /proc/sys/fs/overflowgid and /proc/sys/fs/overflowuid
              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.

       /proc/sys/fs/suid_dumpable (od wersji Linuksa 2.6.13)
              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. Można podać trzy różne wartości
              liczbowe:

              0 (domylny).  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 seteuid(2), setgid(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.

              1 ("debug").  Jeżeli  jest  to  możliwe,  to  wszystkie  procesy
              wykonują   zrzut   pamięci.   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.
              Ptrace nie jest sprawdzane.

              2 ("suidsafe").  Zrzut pamięci programu, dla którego w normalnej
              sytuacji taki zrzut nie zostałby wykonany(patrz wyżej "0"), 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.

       /proc/sys/fs/super-max
              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 super-max występuje tylko wtedy,  gdy  chce
              się  zamontować  więcej  systemów  plików,  niż  na  to  pozwala
              aktualna wartość super-max.

       /proc/sys/fs/super-nr
              Plik zawiera liczbę obecnie zamontowanych systemów plików.

       /proc/sys/kernel
              Ten   katalog   zawiera   pliki   acct,   cad_pid,    cap-bound,
              core_pattern,    core_uses_pid,    ctrl-alt-del,   dentry-state,
              domainname, hotplug,  hostname,  htab-reclaim  (tylko  PowerPC),
              java-appletviewer  (binfmt_java, przestarzały), java-interpreter
              (binfmt_java, przestarzały),  l2cr  (tylko  PowerPC),  modprobe,
              msgmax,   msgmnb,   msgmni,   osrelease,   ostype,  overflowgid,
              overflowuid, panic, panic_on_oops, pid_max, powersave-nap (tylko
              PowerPC ), printk, pty, random, real-root-dev, reboot-cmd (tylko
              SPARC), rtsig-max, rtsig-nr, sem, sg-big-buff,  shmall,  shmmax,
              shmmni, sysrq, tainted, threads-max, version i zero-paged (tylko
              PowerPC).

       /proc/sys/kernel/acct
              Plik zawiera trzy liczby: highwater, lowwater i  frequency.  Gdy
              włączone  jest  rejestrowanie  procesów w stylu BSD, wartości te
              sterują jego zachowaniem. Gdy ilość wolnego miejsca  w  systemie
              plików,  na  którym znajdują się logi, spada poniżej wyrażonej w
              procentach wartości lowwater, rejestrowanie  jest  wstrzymywane.
              Gdy  ilość  wolnego  miejsca  stanie  się większa niż wyrażona w
              procentach  wartość  highwater,  rejestrowanie  jest  wznawiane.
              frequency  określa,  jak  często  jadro  będzie  sprawdzać ilość
              wolnego miejsca (wartość w sekundach). Wartościami domyślnymi są
              4,   2   i  30.  Oznacza  to,  że  rejestrowanie  procesów  jest
              wstrzymywane, gdy ilość wolnego miejsca będzie <= 2%;  wznowione
              zostanie,  gdy  wolne będzie >= 4%; zakłada się, że informacja o
              ilości wolnego miejsca jest ważna przez 30 sekund.

       /proc/sys/kernel/cap-bound
              Plik przechowuje  wartość  capability  bounding  set  dla  jądra
              (wyrażone  jako  liczba  dziesiętna ze znakiem). Wartość ta jest
              mnożona (AND) bitowo  z  capabilities  dozwolonymi  dla  procesu
              podczas exec().

       /proc/sys/kernel/core_pattern
              Patrz core(5). /proc/sys/kernel/core_uses_pid Patrz core(5).

       /proc/sys/kernel/ctrl-alt-del
              Ten plik steruje obsługą kombinacji klawiszy Ctrl-Alt-Del. Gdy w
              pliku  tym   znajduje   się   wartość   0,   Ctrl-Alt-Del   jest
              przechwytywane i przesyłane do programu init(1) w celu wykonania
              wdzięcznego restartu. Gdy wartość jest > 0, reakcją  Linuksa  na
              Wulkanicznie  Nerwowe  Nękanie  (Vulcan Nerve Pinch (tm)) będzie
              natychmiastowy  restart,  nawet  bez  zrzucenia  zmodyfikowanych
              buforów. Uwaga: gdy program (jak np. dosemu) korzysta z surowego
              trybu  klawiatury,  Ctrl-Alt-Del   jest   przechwytywane   przez
              program,  zanim  dotrze do warstwy terminalowej jądra i decyzja,
              co z tym zrobić, zależy od programu.

       /proc/sys/kernel/hotplug
              Plik ten zawiera ścieżkę do programu hotplug. Domyślną wartością
              w tym pliku jest "/sbin/hotplug".

       /proc/sys/kernel/domainname i /proc/sys/kernel/hostname
              Te  pliki  mogą służyć do ustawiania nazwy domeny i hosta NIS/YP
              maszyny dokładnie w  ten  sam  sposób,  jak  za  pomocą  poleceń
              domainname i hostname, np.:

              # echo "darkstar" > /proc/sys/kernel/hostname
              # echo "mydomain" > /proc/sys/kernel/domainname

              daje taki sam efekt, jak

              # hostname "darkstar"
              # domainname "mydomain"

              Należy tu zauważyć, że klasyczny darkstar.frop.org posiada nazwę
              hosta "darkstar" i domenę "frop.org" w DNS (Internetowej Usłudze
              Nazw  Domen  - Internet Domain Name Service), których nie należy
              mylić z domeną NIS (Sieciowej  Usługi  Informacyjnej  -  Network
              Information  Service) lub YP (Yellow Pages). Te dwa systemy nazw
              domenowych zasadniczo się różnią. Szczegółowe  informacje  można
              znaleźć na stronie podręcznika hostname(1).

       /proc/sys/kernel/htab-reclaim
              (Tylko  PowerPC)  Jeśli  do  tego pliku zostanie wpisana wartość
              niezerowa,       htab        PowerPC        (zobacz:        plik
              Documentation/powerpc/ppc_htab.txt   w   źródłach   jądra)  jest
              czyszczony  za  każdym  razem,  gdy  system  natrafi  na   pętlę
              oczekiwania ("idle").

       /proc/sys/kernel/l2cr
              (Tylko PowerPC) Plik zawiera znacznik sterujący cache'em L2 płyt
              procesora G3. Jeśli zawiera 0, cache jest wyłączony. Cache  jest
              włączony, gdy plik zawiera wartość różną od zera.

       /proc/sys/kernel/modprobe
              Plik opisano w źródłach jądra w pliku Documentation/kmod.txt.

       /proc/sys/kernel/msgmax
              Zawiera ogólnosystemowe ograniczenie maksymalnej liczby bajtów w
              pojedynczym  komunikacie  zapisywanym  do  kolejki   komunikatów
              Systemu V.

       /proc/sys/kernel/msgmni
              Określa   ogólnosystemowe  ograniczenie  liczby  identyfikatorów
              kolejek komunikatów. (Plik ten występuje  począwszy  od  Linuksa
              2.4).

       /proc/sys/kernel/msgmnb
              Zawiera ogólnosystemowy parametr służący do inicjacji ustawienia
              msg_qbytes tworzonych później  kolejek  komunikatów.  Ustawienie
              msg_qbytes  określa  maksymalną liczbę bajtów, które mogą zostać
              zapisane do kolejki komunikatów.

       /proc/sys/kernel/ostype i /proc/sys/kernel/osrelease
              Pliki te zawierają poszczególne części z /proc/version.

       /proc/sys/kernel/overflowgid i /proc/sys/kernel/overflowuid
              Pliki  te   są   kopiami   plików   /proc/sys/fs/overflowgid   i
              /proc/sys/fs/overflowuid.

       /proc/sys/kernel/panic
              Umożliwia   dostęp   (odczyt   i   zapis)   do   zmiennej  jądra
              panic_timeout. Jeśli jest to zero,  jądro  będzie  się  zapętlać
              podczas  paniki;  jeśli  wartość  niezerowa,  to  określa liczbę
              sekund, po której jądro powinno się  automatycznie  przeładować.
              Jeśli  używany jest software watchdog to zalecaną wartością jest
              60.

       /proc/sys/kernel/panic_on_oops
              Plik ten (nowy w  Linuksie  2.5)  kontroluje  zachowanie  jądra,
              kiedy wystąpi oops lub BŁĄD. Jeśli ten plik zawiera 0, to system
              próbuje kontynuować operację. Jeśli zawiera 1, to  system  czeka
              parę sekund (aby dać procesowi klogd czas na zapisanie wyjścia z
              oops),  a   następnie   panikuje.   Jeżeli   wartość   w   pliku
              /proc/sys/kernel/panic   również   jest  niezerowa,  to  nastąpi
              restart komputera.

       /proc/sys/kernel/pid_max
              Ten plik (nowy w Linuksie 2.5) określa wartość po której nastąpi
              przewinięcie  licznika  PID  (tj.  wartość  w tym pliku jest o 1
              większa niż maksymalny PID). Domyślna wartość tego pliku,  czyli
              32768,  określa  taki  sam zakres wartości PID, jak wcześniejsze
              wersje jądra. Dla platform  32-bitowych  32768  jest  maksymalną
              wartością, jaką może przyjmować pid_max. W systemach 64-bitowych
              pid_max może zostać ustawiony na dowolną  wartość,  aż  do  2^22
              (PID_MAX_LIMIT, około 4 milionów).

       /proc/sys/kernel/powersave-nap (tylko PowerPC)
              Plik  zawiera  znacznik.  Gdy jest on ustawiony, Linux-PPC używa
              trybu oszczędzania energii 'nap', a w przeciwnym przypadku trybu
              'doze'.

       /proc/sys/kernel/printk
              Cztery   wartości   w   pliku   printk   to:   console_loglevel,
              default_message_loglevel,        minimum_console_level         i
              default_console_loglevel.  Wartości  te  wpływają  na zachowanie
              printk() podczas wypisywania lub logowania  komunikatów  błędów.
              Informacja   o  różnych  poziomach  logowania  można  znaleźć  w
              syslog(2). Komunikaty o priorytecie wyższym niż console_loglevel
              będą  wypisywane  na  konsoli. Komunikaty bez jawnego priorytetu
              będą    wypisywane    z    priorytetem    default_message_level.
              minimum_console_loglevel jest najmniejszą (najwyższą) wartością,
              którą      można      ustawić       jako       console_loglevel.
              default_console_loglevel    jest    domyślną    wartością    dla
              console_loglevel.

       /proc/sys/kernel/pty (od wersji Linuksa 2.6.4)
              Ten katalog zawiera dwa pliki związane z liczbą  pseudoterminali
              Unix 98 (patrz pts(4)) w systemie.

       /proc/sys/kernel/pty/max
              Plik określa maksymalną liczbę pseudoterminali.

       /proc/sys/kernel/pty/nr
              Ten  plik  tylko do odczytu zawiera informację o liczbie obecnie
              używanych pseudoterminali.

       /proc/sys/kernel/random
              Katalog ten zawiera różne parametry sterujące  działaniem  pliku
              /dev/random. Dalsze informacje można znaleźć w random(4).

       /proc/sys/kernel/real-root-dev
              Plik  ten jest udokumentowany w pliku Documentation/initrd.txt w
              źródłach jądra.

       /proc/sys/kernel/reboot-cmd (Sparc only)
              Ten plik wydaje  się  stanowić  mechanizm  podawania  argumentów
              SPARC-owej  ładowarce  systemu w ROM/Flash. Może przekazuje jej,
              co zrobić po restarcie?

       /proc/sys/kernel/rtsig-max
              (Tylko w  wersjach  jądra  nie  późniejszych  niż  2.6.7;  patrz
              setrlimit(2)).  Plik  ten  może  służyć do sterowania maksymalną
              liczbą zgodnych z POSIX nieobsłużonych  (w  kolejkach)  sygnałów
              czasu rzeczywistego w systemie.

       /proc/sys/kernel/rtsig-nr
              (Tylko  w  wersjach  jądra nie późniejszych niż 2.6.7). Plik ten
              podaje liczbę zgodnych  z  POSIX  sygnałów  czasu  rzeczywistego
              oczekujących obecnie w kolejce.

       /proc/sys/kernel/sem (od wersji Linuksa 2.4)
              Plik  ten  zawiera  4  liczby definiujące ograniczenia semaforów
              Systemu V. Są to w kolejności:

              SEMMSL  Maksymalna liczba semaforów w zestawie semaforów.

              SEMMNS  Ogólnosystemowe   ograniczenie   liczby   semaforów   we
                      wszystkich zestawiach semaforów.

              SEMOPM  Maksymalna  liczba  operacji, które mogą zostać podane w
                      wywołaniu semop(2).

              SEMMNI  Ogólnosystemowe    ograniczenie    maksymalnej    liczby
                      identyfikatorów semaforów.

       /proc/sys/kernel/sg-big-buff
              Plik ten zawiera rozmiar bufora niskopoziomowego urządzenia SCSI
              (sg). Nie można nim na razie  sterować,  ale  można  go  zmienić
              podczas  kompilacji  poprzez  edycję  include/scsi/sg.h i zmianę
              wartości SG_BIG_BUFF. Jednakże nie ma  żadnego  powodu,  aby  to
              robić.

       /proc/sys/kernel/shmall
              Ten  plik zawiera ogólnosystemowe ograniczenie całkowitej liczby
              stron pamięci wspólnej Systemu V.

       /proc/sys/kernel/shmmax
              Ten plik może służyć  do  odpytywania  o  aktualne  ograniczenie
              maksymalnego   rozmiaru  tworzonego  segmentu  pamięci  wspólnej
              (System V IPC) oraz do zmiany tego ograniczenia.  Jadro  wspiera
              obecnie  segmenty  pamięci  wspólnej  do 1GB. Wartością domyślną
              jest SHMMAX.

       /proc/sys/kernel/shmmni
              (dostępny  począwszy  od   Linuksa   2.4)   Ten   plik   określa
              ogólnosystemową  maksymalną  liczbę  segmentów  pamięci wspólnej
              Systemu V, które można utworzyć.

       /proc/sys/kernel/version
              zawiera tekst jak np.:

              #5 Wed Feb 25 21:49:24 MET 1998.TP

              '#5' oznacza, że jest to piąte z kolei jądro  zbudowane  z  tych
              samych  źródeł,  a  następująca  dalej data określa, kiedy jądro
              zostało zbudowane.

       /proc/sys/kernel/zero-paged (PowerPC only)
              Plik  zawiera  znacznik.  Gdy  jest  on  ustawiony  (niezerowy),
              Linux-PPC   wstępnie   zeruje   strony   w  pętli  bezczynności.
              Prawdopodobnie przyspiesza to get_free_pages.

       /proc/sys/net
              Ten  katalog  zawiera  rzeczy  związane  z  siecią.  Wyjaśnienia
              dotyczące  niektórych  plików  zawartych  w  tym  katalogu można
              znaleźć w tcp(7) i ip(7).

       /proc/sys/proc
              Ten katalog może być pusty.

       /proc/sys/sunrpc
              Ten katalog obsługuje Sunowskie zdalne wywoływanie procedur  dla
              sieciowego  systemu plikowego (NFS). W niektórych systemach może
              nie istnieć.

       /proc/sys/vm
              Ten  katalog  zawiera  pliki  sterujące  zarządzaniem  pamięcią,
              buforami i zarządzaniem cachem.

       /proc/sys/vm/drop_caches (od wersji Linuksa 2.6.16)
              Zapis  do  tego  pliki  powoduj  zwolnienie przez jądro czystych
              buforów, dentries ii-węzłów z pamięci, zwalniając tę pamięć.

              Aby  zwolnić  bufor  stronicowania,  należy  użyć   echo   1   >
              /proc/sys/vm/drop_caches; aby zwolnić dentries i i-węzły, należy
              użyć  echo  2  >  /proc/sys/vm/drop_caches;  aby  zwolnić  bufor
              stronicowania,   dentries  i  i-węzły,  należy  użyć  echo  3  >
              /proc/sys/vm/drop_caches.

              Ponieważ operacja ta nie jest destrukcyjna i brudne obiekty  nie
              są zwalniane, użytkownik powinien wcześniej uruchomić sync(8).

       /proc/sys/vm/legacy_va_layout (od wersji Linuksa 2.6.9)
              Wartość   niezerowa   oznacza   wyłączenie  nowego,  32-bitowego
              rozmieszczenia mapowania pamięci; jądro  będzie  używać  starego
              (2.4) rozmieszczenia dla wszystkich procesów.

       /proc/sys/vm/overcommit_memory
              Plik   zawiera   tryb   rozliczeń   pamięci   wirtualnej  jądra.
              Dopuszczalne wartości:
              0: heurystyczny overcommit (domyślnie)
              1: zawsze robi overcommit, nigdy nie sprawdza
              2: zawsze sprawdza, nigdy nie robi overcommitu
              W trybie 0 nie są sprawdzane wywołania mmap(2) z  MAP_NORESERVE,
              a  domyślne  sprawdzenia  są  bardzo  słabe, prowadząc do ryzyka
              zabicia  procesu   przez   "OOM-killera".   Pod   Linuksem   2.4
              jakakolwiek   wartość   niezerowa  oznacza  tryb  1.W  trybie  2
              (dostępnym  od  Linuksa  2.6),   całkowity   adres   przestrzeni
              wirtualnej  w  systemie  jest ograniczony do (SS + RAM*(r/100)),
              gdzie SS jest rozmiarem przestrzeni wymiany, RAM jest  rozmiarem
              fizycznej     pamięci,     a     r     -    zawartością    pliku
              /proc/sys/vm/overcommit_ratio.

       /proc/sys/vm/overcommit_ratio
              Zobacz opis /proc/sys/vm/overcommit_memory.

       /proc/sysvipc
              Podkatalog zawierający pseudopliki msg,  sem  i  shm.  Pliki  te
              zawierają  obiekty  komunikacji  międzyprocesowej  (Interprocess
              Communication   -   IPC)   Systemu   V   (odpowiednio:   kolejki
              komunikatów,  semafory  i  pamięć  wspólną) obecnie istniejące w
              systemie, udostępniając informacje podobne  do  tych,  które  są
              dostępne  poprzez  ipcs(1).  Pliki  te  zawierają  nagłówki i są
              sformatowane (jeden obiekt IPC w wierszu)  w  celu  łatwiejszego
              zrozumienia.  svipc(7)  podaje dodatkowe informacje o zawartości
              tych plików.

       /proc/tty
              Podkatalog zawierający  psuedopliki  i  podkatalogi  sterowników
              terminali   (tty)   oraz   protokołów   sterowania  linią  (line
              discipline).

       /proc/uptime
              Ten plik zawiera dwie liczby: czas pracy systemu (w sekundach) i
              ilość   czasu   spędzonego   na   wykonywaniu  procesu  idle  (w
              sekundach).

       /proc/version
              Ten napis określa wersję obecnie działającego jądra. Zawiera  on
              w   sobie   zawartość  /proc/sys/ostype,  /proc/sys/osrelease  i
              /proc/sys/version. Na przykład:
            Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994

       /proc/vmstat (od wersji Linuksa 2.6)
              Plik ten wyświetla różne statystyki pamięci wirtualnej.

       /proc/zoneinfo (od wersji Linuksa 2.6.13)
              Plik zawiera informacje o strefach pamięci. Może  być  przydatny
              podczas analizowania zachowania pamięci wirtualnej.

ZOBACZ TAKŻE

       cat(1), find(1), free(1), mount(1), ps(1), tr(1), uptime(1), chroot(2),
       mmap(2),  readlink(2),   syslog(2),   slabinfo(5),   hier(7),   arp(8),
       dmesg(8),   hdparm(8),   ifconfig(8),   init(8),   lsmod(8),  lspci(8),
       netstat(8), procinfo(8), route(8)
       /usr/src/linux/Documentation/filesystems/proc.txt

UWAGI

       Trzeba zauważyć, że wiele łańcuchów znakowych (np. środowisko czy linia
       poleceń) występuje w postaci wewnętrznej, z polami zakończonymi bajtami
       NUL ('\0'), więc jeśli do ich czytania użyje się od -c  lub  tr  "\000"
       "\n",  to  mogą być bardziej czytelne. Alternatywnie, echo `cat <file>`
       działa równie dobrze.

       Ta strona podręcznika jest niekompletna, prawdopodobnie  niedokładna  i
       należy do tych, które powinny być bardzo często poprawiane.

PODZIĘKOWANIA

       Material  dotyczący  /proc/sys/fs i /proc/sys/kernel jest ściśle oparty
       na plikach dokumentacji źródeł jądra napisanych przez Rika van Riela.

                                  2005-05-12                           PROC(5)