Provided by:
manpages-cs_0.18.20090209-2_all 
JMÉNO
proc - pseudo souborový systém informací o procesech
POPIS
Souborový systém proc je pseudo souborový systém, který je používán
jako interface k datovým strukturám jádra. Obvykle se připojuje do
/proc. Většina jeho obsahu je pouze ke čtení, ale některé soubory
umožňují změnit proměnné jadra.
Následující shrnutí rychle provede hierarchií /proc.
/proc/[pid]
Pro každý běžící proces existuje číselný podadresář pojmenovaný
podle ID procesu. Každý podadresář obsahuje následující
pseudosoubory a adresáře.
/proc/[pid]/auxv (od 2.6.0-test7)
Obsahuje informaci o ELF interpretu, která byla procesu při
spuštění předána. Její formát je jedno unsigned long ID a jedna
unsigned long hodnota pro každou položku. Poslední položka
obsahuje dvě nuly.
/proc/[pid]/cmdline
Obsahuje celou příkazovou řádku procesu, pokud tedy proces není
zombie. V takovém případě tento soubort neobsahuje nic, tj.
čtení tohoto souboru vrátí 0 znaků. Argumenty příkazové řádky
se v tomto souboru objevují jako sada řetězců oddělených pomocí
null, která je ukončena dalším bajtem null po posledním řetězci.
/proc/[pid]/coredump_filter (od jádra 2.6.23)
Viz core(5).
/proc/[pid]/cpuset (od jádra 2.6.12)
Viz cpuset(7).
/proc/[pid]/cwd
Toto je symbolický odkaz na aktuální pracovní adresář (current
working directory) procesu. Např. pro zjištění aktuálního
pracovního adresáře procesu 20 lze provést:
$ cd /proc/20/cwd; /bin/pwd
Prosím všimněte si, že příkaz pwd je často zabudovaným příkazem
shellu a nemusí fungovat správně. V bashi lze použít pwd -P.
V případě vícevláknového procesu, jehož hlavní vlákno již
skončilo (obvykle voláním pthread_exit(3)), již nebude obsah
tohoto symbolického odkazu dostupný.
/proc/[pid]/environ
Tento soubor obsahuje proměnné prostředí procesu. Jednotlivé
údaje jsou odděleny znakem null ('\0') a znaky null mohou být i
na konci. Takže pro vytištění proměnných prostředí procesu 1 se
provede:
$ (cat /proc/1/environ; echo) | tr '\000' '\n'
/proc/[pid]/exe
V Linuxu 2.2 a novějším je tento soubor symbolickým odkazem,
který obsahuje skutečnou cestu ke spuštěnému příkazu. Tento
symbolický odkaz lze normálně dereferencovat; při pokusu jej
otevřít je otevřen spustitelný soubor, na který odkazuje. Je
dokonce možné napsat /proc/[pid]/exe a spustit tak další kopii
stejného spustitelného souboru, který je již spuštěn procesem
[pid]. V případě vícevláknového procesu, jehož hlavní vlákno
již skončilo (obvykle voláním pthread_exit(3)), již nebude obsah
tohoto symbolického odkazu dostupný.
V Linuxu do verze 2.0 včetně byl soubor /proc/[pid]/exe
ukazatelem na spuštěný program a vypadal jako symbolický odkaz.
Volání readlink(2) na tento soubor v Linuxu 2.0 vracelo řetězec
ve tvaru:
[zařízení]:inoda
Například [0301]:1502 znamená inoda 1502 v zařízení s major
číšlem 03 (IDE, MFM, a jiné disky) a minor číslem 01 (první
oddíl prvního disku).
K nalezení souboru lze použít příkaz find(1) s volbou -inum.
/proc/[pid]/fd
Toto je podadresář, který obsahuje pro každý soubor, který
proces otevřel, jednu položku, pojmenovanou po jeho deskriptoru
souboru, který je zároveň symbolickým odkazem na onen soubor.
Tudíž 0 odpovídá standardnímu vstupu, 1 standardnímu výstupu, 2
standardnímu chybovému výstupu atd.
V případě vícevláknového procesu, jehož hlavní vlákno již
skončilo (obvykle voláním pthread_exit(3)), již nebude obsah
tohoto adresáře dostupný.
Programy, které vyžadují jméno souboru, ale nedokáží bez
zvláštní volby pracovat se standardním vstupem anebo ty, které
zapisují do souboru zadaného na příkazové řádce, ale pokud není
zadán, neposílají výstup na standardní výstup tak mohou být
přesvědčeny k použití standardního vstupu a/nebo výstupu pomocí
/proc/[pid]/fd. Např. pokud je -i přepínač označující vstupní
soubor a -o přepínač označující výstupní soubor:
$ foobar -i /proc/self/fd/0 -o /proc/self/fd/1 ...
a máte funkční filtr.
/proc/self/fd/N je v některých UNIXových a UNIX-like systémech
zhruba to samé jako /dev/fd/N. Většina Linuxových MAKEDEV
skriptů ve skutečnosti vytváří /dev/fd jako symbolický odkaz na
/proc/self/fd.
Většina systémů poskytuje symbolické odkazy /dev/stdin,
/dev/stdout a /dev/stderr, které ukazují na soubory 0, 1 a 2 v
/proc/self/fd. Tudíž výše uvedený příklad lze zapsat i jako:
$ foobar -i /dev/stdin -o /dev/stdout ...
/proc/[pid]/fdinfo/ (od jádra 2.6.22)
Toto je podadresář, který obsahuje pro každý soubor, který
proces otevřel, jednu položku, pojmenovanou po svém popisovači
souboru. Obsah každého souboru lze číst pro získání informací o
příslušném popisovači souboru, např.:
$ cat /proc/12015/fdinfo/4
pos: 1000
flags: 01002002
Pole pos je desítkové číslo ukazující aktuální offset souboru.
Pole flags je osmičkové číslo ukazující přístupová práva souboru
a stavové vlajky souboru (viz open(2)).
Soubory v tomto adresáři jsou čitelné pouze vlastníkem procesu.
/proc/[pid]/limits (od jádra 2.6.24)
tento soubor ukazuje soft limit, hard limit a jednotky měření
každého limitu zdrojů procesu (viz getrlimit(2)). Soubor je
chráněn, aby jej mohlo číst pouze skutečné UID procesu.
/proc/[pid]/maps
Soubor obsahující aktuálně namapované oblasti paměti a jejich
přístupová práva.
Jeho formát je:
adresa práva ofset dev inoda cesta
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
kde adresa je obsazený adresový prostor v procesu, práva jsou
sada práv:
r = čtení (read)
w = zápis (write)
x = spuštění (execute)
s = sdílení (shared)
p = soukromý (private) (copy on write)
ofset znamená ofset v souboru/kdekoliv, dev je zařízení
(major:minor) a inoda je inoda v tomto zařízení. 0 znamená, že s
oblastí paměti není asociována žádná inoda, což je třeba v
případě BSS (neinicializovaná data).
V Linuxu 2.0 žádné pole pro cestu neexistuje.
/proc/[pid]/mem
tento soubor může být použit pro přístup je stránkám paměti
procesu pomocí open(2), read(2), a lseek(2).
/proc/[pid]/mountinfo (od jádra 2.6.26)
Tento soubor obsahuje informace o přípojných bodech. Obsahuje
řádky ve tvaru:
36 35 98:0 /mnt1 /mnt2 rw,noatime master:1 - ext3 /dev/root rw,errors=continue
(1)(2)(3) (4) (5) (6) (7) (8) (9) (10) (11)
Čísla v závorkách jsou značky pro níže uvedené popisky:
(1) mount ID: unikátní identifikátor připojení (po umount(2)
může být znovu použit).
(2) parent ID: ID rodičovského připojení (nebo vlastní v
případě, že se jedná o vrchol připojovacího stromu).
(3) major:minor: hodnota st_dev pro soubory v systému souborů
(viz stat(2)).
(4) root: kořen připojení v rámci systému souborů.
(5) mount point: přípojný bod relativní ke kořeni procesu.
(6) mount options: volby specifické pro připojení.
(7) volitelné položky: nula nebo véce položek ve tvaru
"tag[:hodota]".
(8) oddělovač: označuje konec volitelných položek.
(9) typ systému souborů: jméno systému souborů ve tvaru
"typ[.podtyp]".
(10) mount source: informace specifická pro systém souborů nebo
"none".
(11) super options: volby pro superblok.
Parsery by měly ignorovat všechny nerozeznané volitelné položky.
V současnosti jsou možné tyto volitelné položky:
shared:X připojení je sdílené skupinou X
master:X skupina X je master-em připojení
propagate_from:X připojení je slave a dědí nastavení
(FIXME - ověřit překlad) ze skupiny X (*)
unbindable mount is unbindable
(*) X je nejbližší dominantní skupina pod kořenem procesu. Pokud
je X bezprostředním master-em připojení nebo pokud pod kořenem
procesu není žádná dominantní skupina, pak je přítomna pouze
položka "master:X" a nikoliv "propagate_from:X".
Více informací o dědění připojení je uvedeno v:
Documentation/filesystems/sharedsubtree.txt ve zdrojovém kódu
jádra.
/proc/[pid]/mounts (od jádra 2.4.19)
Toto je seznam všech souborových systémů aktuálně připojených ve
jmenném prostory procesu. Formát tohoto souboru je dokumentován
v fstab(5). Od verze jádra 2.6.15 je tento soubor pollable: po
otevření souboru ke čtení způsobí změna v tomto souboru (např.
připojení nebo odpojení souborového systému), že select(2)
označí deskriptor souboru jako čitelný a volání poll(2) a
epoll_wait(2) označí soubor jako mající chybovou podmínku.
(pozn. překl. pokud to někdo dokážete přeložit lépe, pošlete
opravu)
/proc/[pid]/mountstats (od jádra 2.6.17)
Tento soubor zpřístupňuje informace (statistiky, informace o
konfiguraci) o přípojných bodech ve jmenném prostoru procesu.
Obsahuje řádky ve tvaru:
device /dev/sda7 mounted on /home with fstype ext3 [statistics]
( 1 ) ( 2 ) (3 ) (4)
Položky v každém řádku jsou:
(1) Jméno připojeného zařízení (nebo "nodevice", pokud není
žádné odpovídající zařízení).
(2) Bod připojení v rámci stromu systému souborů.
(3) Typ systému souborů.
(4) Volitelné statistiky a informace o konfiguraci. Aktuálně
(jádro 2.6.26), používá tuto položku jen sytém souborů NFS.
Tento soubor je čitelný pouze vlastníkem procesu.
/proc/[pid]/numa_maps (od jádra 2.6.14)
viz numa(7).
/proc/[pid]/oom_adj (od jádra 2.6.11)
Tento soubor se používá k upravení skóre použitého pro určení
procesu, který má být zabit v případě, že dojde paměť
(out-of-memory (OOM)). Jádro použije tuto hodnotu k bitovému
posunu hodnoty oom_score procesu: platné hodnoty jsou v rozsahu
-16 až +15, plus speciální hodnota -17, která OOM-zabití tohoto
procesu zakáže. Kladné skóre zvyšuje pravděpodobnost zabití
procesu OOM-zabijákem, negativní skóre ji snižuje. Výchozí
hodnotou pro tento soubor je 0; nový proces dědí nastavení
oom_adj svého rodiče. Proces musí být privilegovaný
(CAP_SYS_RESOURCE), aby mohl tento soubor měnit.
/proc/[pid]/oom_score (od jádra 2.6.11)
tento soubor ukazuje aktuální skóre přidělené procesu jádrem za
účelem výběru procesu pro OOM-zabijáka. Vyšší skóre znamená
vyšší pravděpodobnost zabití OOM-zabijákem. Základem pro toto
skóre je množství paměti zabrané procesem; skóre se zvyšuje (+)
nebo snižuje (-) v závislosti na faktorech zahrnujících:
* jestli proces vytváří mnoho potomků pomocí fork(2) (+);
* jestli proces běží dlouhou dobu nebo zabíral hodně času CPU
(-);
* jestli má proces nízkou hodnotu nice (tj. > 0) (+);
* jestli je proces privilegovaný (-); a
* jestli proces provádí přímý přístup k hardware (-).
oom_score také odráží bitový posun určený hodnotou oom_adj
procesu.
/proc/[pid]/root
Unix a Linux podporují ideu vlastního kořenového adresáře
souborového systému pro každý proces, nastaveného systémovým
voláním chroot(2). Tento soubor je symbolickým odkazem na
kořenový adresář procesu a chová se stejně jako exe, fd/*, atd.
V případě vícevláknového procesu, jehož hlavní vlákno již
skončilo (obvykle voláním pthread_exit(3)), již nebude obsah
tohoto symbolického odkazu dostupný.
/proc/[pid]/smaps (od jádra 2.6.14)
Tento soubor obsahuje spotřebu paměti pro každé namapování
procesu. Pro každé namapování jsou přítomny řádky jako:
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
První řádek ukazuje stejnou informaci jako je uvedená v
namapování v /proc/[pid]/maps. Zbývající řádky ukazují velikost
tohoto namapování, velikost namapování, které je aktuálně
rezidentní v RAM, počet clean a dirty sdílených stránek v
namapování a počet clean a dirty privátních stránek v
namapování.
Tento soubor je přítomen pouze pokud je zapnuta konfigurační
volba jádra CONFIG_MMU.
/proc/[pid]/stat
Stavová informace o procesu. Používá ji ps(1). Je definována v
/usr/src/linux/fs/proc/array.c.
Její položky, v pořadí a formátu určeném ve scanf(3) jsou:
pid %d ID procesu.
comm %s Jméno spuštěného souboru, v závorkách. Je viditelné
i pokud je spuštěný soubor odswapován.
stav %c Jeden ze znaků "RSDZTW", kde R znamená běžící
(running), S je přerušitelně spící (sleeping), D
znamená čekající v nepřerušitelném diskovém spánku,
Z je zombie, T znamená trasovaný (traced) nebo
zastavený (signálem) a W znamená swapovaný (paging).
ppid %d ID rodičovského procesu.
pgrp %d ID skupiny procesu daného procesu.
session %d Session ID procesu.
tty_nr %d Ovládací terminál procesu. (minor číslo zařízení je
obsaženo v bitech 31 až 20 a 7 až 0; major číslo
zařízení je v bitech 15 až 8.)
tpgid %d The ID of the foreground process group of the
controlling terminal of the process.
flags %u (%lu před jádrem 2.6.22)
Slovo obsahující příznaky jádra (flags) procesu.
Významy jednotlivých bitů jsou uvedeny v definicích
PF_* v <linux/sched.h>. Podrobnosti závisí na verzi
jádra.
minflt %lu Počet méně závažných chyb, kterých se proces
dopustil, a které si nevyžádaly načtení stránky
paměti z disku.
cminflt %lu Počet méně závažných chyb, které provedli potomci
procesu, na které proces čekal.
majflt %lu Počet závažných chyb, kterých se proces dopustil, a
které si vyžádaly načtení stránky paměti z disku.
cmajflt %lu Počet závažných chyb, které provedli potomci
procesu, na které proces čekal.
utime %lu Množství času, který proces strávil v uživatelském
režimu, měřené v clock ticks (nutno vydělit hodnotou
sysconf(_SC_CLK_TCK). To zahrnuje guest time,
guest_time (čas strávený během virtuálního CPU, viz
níže), takže aplikace, které nepočítají s položkou
guest time zahrnou tento čas do svých výpočtů.
stime %lu Množství času, které proces strávil v jaderném
režimu, měřené v clock ticks (nutno vydělit hodnotou
sysconf(_SC_CLK_TCK).
cutime %ld Množství času, strávené potomky, na které proces
čekal, v uživatelském režimu, měřené v clock ticks
(nutno vydělit hodnotou sysconf(_SC_CLK_TCK). (Viz
též times(2).) To zahrnuje guest time, cguest_time
(čas strávený během virtuálního CPU, viz níže).
cstime %ld Množství času, strávené potomky, na které proces
čekal, v jaderném režimu, měřené v clock ticks
(nutno vydělit hodnotou sysconf(_SC_CLK_TCK).
priority %ld
(Vysvětlení pro Linux 2.6) Pro procesy s real-time
plánovací politikou (policy níže; viz
sched_setscheduler(2)) je toto negovaná plánovací
priorita mínus jedna - tj. číslo od -2 do -100,
odpovídající real-time prioritiám 1 až 99. Pro
procesy s ne-rel-time plánovací politikou je toto
surová hodnota nice (setpriority(2)) tak, jak je
reprezentovaná v jádru. Jádro skladuje hodnoty nice
jako čísla v rozsahu 0 (vysoká) až 39 (nízká),
odpovádající rozsahu -20 až 19, která je prezentován
uživateli.
Před jádrem 2.6 to byla hodnota založená na váze
přidělené procesu plánovačem.
nice %ld Hodnota nice (viz setpriority(2)), hodnota v rozsahu
19 (nízká priorita) až -20 (vysoká priorita).
num_threads %ld
Počet vláken v tomto procesu (od jádra 2.6). Před
jádrem 2.6 bylo toto pole pevně dané jako 0 jako
zástupce dříve odstraněného pole.
itrealvalue %ld
Čas v jednotkách jiffies před odesláním dalšího
SIGALRM procesu, na základě intervalového časovače.
Od jádra 2.6.17 není toto pole udržováno a je pevně
dáno jako 0.
starttime %llu (bylo %lu před jádrem 2.6)
Čas v jednotkách jiffies kdy byl proces po spuštění
systému spuštěn.
vsize %lu Velikost virtuální paměti v bajtech.
rss %ld Resident Set Size: počet stránek, které má proces ve
fyzické paměti. Toto jsou pouze stránky obsahující
text, data nebo stack. Nejsou zahrnuty stránky,
které byly načteny na základě požadavku nebo
odswapované stránky.
rsslim %lu Aktuální soft limit na rss procesu v bajtech. Viz
popis RLIMIT_RSS v getpriority(2).
startcode %lu
Adresa, nad kterou může text programu běžet.
endcode %lu Adresa, pod kterou může text programu běžet.
startstack %lu
Adresa začátku (tj. spodku) zásobníku.
kstkesp %lu Aktuální hodnota ESP (stack pointer), jak je uvedena
ve stránce s jaderným zásobníkem pro proces.
kstkeip %lu Aktuální EIP (instruction pointer).
signal %lu Bitmapa nezpracovaných signálů, zobrazená jako
desítkové číslo. Zastaralé, protože neposkytuje
informaci o real-time signálech; použijte raději
/proc/[pid]/status.
blocked %lu Bitmapa blokovaných signálů, zobrazená jako
desítkové číslo. Zastaralé, protože neposkytuje
informaci o real-time signálech; použijte raději
/proc/[pid]/status.
sigignore %lu
Bitmapa ignorovaných signálů, zobrazená jako
desítkové číslo. Zastaralé, protože neposkytuje
informaci o real-time signálech; použijte raději
/proc/[pid]/status.
sigcatch %lu
Bitmapa zachycených signálů, zobrazená jako
desítkové číslo. Zastaralé, protože neposkytuje
informaci o real-time signálech; použijte raději
/proc/[pid]/status.
wchan %lu Toto je "kanál" ("channel"), ve kterém proces čeká.
Je to adresa systémového volání a může být nalezena
v seznamu názvů, pokud je její textový název
potřeba. (Pokud máte aktuální /etc/psdatabase, tak
zkuste ps -l a uvidíte položku WCHAN v akci.)
nswap %lu Počet odswapovaných stránek (not maintained).
cnswap %lu Kumulativní nswap pro procesy potomků (not
maintained).
exit_signal %d (od jádra 2.1.22)
Signál, který se pošle rodiči, když proces zemře.
processor %d (od jádra 2.2.8)
Číslo procesoru na kterém byl naposledy spuštěn.
rt_priority %u (od jádra 2.5.19; bylo %lu před jádrem 2.6.22)
Real-time plánovací priorita, číslo v rozsahu 1 až
99 pro procesy plánované real-time politikou, nebo
0, pro ne-real-time procesy (viz
sched_setscheduler(2)).
policy %u (od jádra 2.5.19; bylo %lu před jádrem 2.6.22)
Plánovací politika (viz sched_setscheduler(2)).
Dekódujte pomocí konstant SCHED_* v linux/sched.h.
delayacct_blkio_ticks %llu (od jádra 2.6.18)
Agregovaná zpoždění blokových I/O (měřená v clock
ticks (setiny vteřiny)).
guest_time %lu (od jádra 2.6.24)
Guest time procesu (množství času, strávené během
virtuálního CPU pro hostovaný operační systém),
měřené v clock ticks (nutno vydělit hodnotou
sysconf(_SC_CLK_TCK).
cguest_time %ld (od jádra 2.6.24)
Guest time potomků procesu, měřené v clock ticks
(nutno vydělit hodnotou sysconf(_SC_CLK_TCK).
/proc/[pid]/statm
Poskytuje informaci o využití paměti, měřeno ve stránkách.
Sloupce jsou:
size celková velikost programu (stejné jako VmSize v /proc/[pid]/status)
resident resident set size (stejné jako VmSize v /proc/[pid]/status)
share sdílené stránky (from shared mapping)
text text (kód)
lib knihovna (v jádře 2.6 se nepoužívá)
data data +stack
dt dirty pages (v jádře 2.6 se nepoužívá)
/proc/[pid]/status
Poskytuje většinu informací z /proc/[pid]/stat a
/proc/[pid]/statm v lidštějším formátu. Příklad:
$ cat /proc/$$/status
Name: bash
State: S (sleeping)
Tgid: 3515
Pid: 3515
PPid: 3452
TracerPid: 0
Uid: 1000 1000 1000 1000
Gid: 100 100 100 100
FDSize: 256
Groups: 16 33 100
VmPeak: 9136 kB
VmSize: 7896 kB
VmLck: 0 kB
VmHWM: 7572 kB
VmRSS: 6316 kB
VmData: 5224 kB
VmStk: 88 kB
VmExe: 572 kB
VmLib: 1708 kB
VmPTE: 20 kB
Threads: 1
SigQ: 0/3067
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000010000
SigIgn: 0000000000384004
SigCgt: 000000004b813efb
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: ffffffffffffffff
Cpus_allowed: 00000001
Cpus_allowed_list: 0
Mems_allowed: 1
Mems_allowed_list: 0
voluntary_ctxt_switches: 150
nonvoluntary_ctxt_switches: 545
Položky jsou:
* Name: Příkazy spuštěné tímto procesem.
* State: Aktuální stav procesu. Jeden ze znaků "RSDTZX", kde R
znamená běžící (running), S je přerušitelně spící (sleeping),
D znamená čekající v nepřerušitelném diskovém spánku, T
znamená trasovaný (traced) nebo zastavený (signálem), Z je
zombie a X znamená mrtvý.
* Tgid: ID skupiny vláken (tj. ID procesu).
* Pid: ID vlákna (viz gettid(2)).
* TracerPid: PID procesu kterým je tento proces trasuován (0
pokud není trasován).
* Uid, Gid: Real, effective, saved set, and file system UIDs
(GIDs).
* FDSize: Počet aktuálně alokovaných slotů popisovače souboru.
* Groups: Doplňkový seznam skupin.
* VmPeak: Maximální velikost virtuální paměti.
* VmSize: Velikost virtuální paměti.
* VmLck: Velikost Locked memory.
* VmHWM: Maximální resident set size ("high water mark").
* VmRSS: Resident set size.
* VmData, VmStk, VmExe: Size of data, stack, and text segments.
* VmLib: Shared library code size.
* VmPTE: Page table entries size (od jádra 2.6.10).
* Threads: Počet vláken v procesu obsahujícím toto vlákno.
* SigPnd, ShdPnd: Počet nezpracovaných signálů pro vlákno a pro
celý proces (viz pthreads(7) a signal(7)).
* SigBlk, SigIgn, SigCgt: Masky udávající blokované, ignorované
a zachytávané signály (viz signal(7)).
* CapInh, CapPrm, CapEff: Masks of capabilities enabled in
inheritable, permitted, and effective sets (see
capabilities(7)).
* CapBnd: Capability Bounding set (since kernel 2.6.26, see
capabilities(7)).
* Cpus_allowed: Mask of CPUs on which this process may run
(since Linux 2.6.24, see cpuset(7)).
* Cpus_allowed_list: Same as previous, but in "list format"
(since Linux 2.6.26, see cpuset(7)).
* Mems_allowed: Mask of memory nodes allowed to this process
(since Linux 2.6.24, see cpuset(7)).
* Mems_allowed_list: Same as previous, but in "list format"
(since Linux 2.6.26, see cpuset(7)).
* voluntary_context_switches, nonvoluntary_context_switches:
Number of voluntary and involuntary context switches (since
Linux 2.6.23).
/proc/[pid]/task (od jádra 2.6.0-test6)
Adresář obsahující pro každé vlákno procesu jeden podadresář.
Jména podadresářů jsou číselná ID vlákna([tid]) (viz gettid(2)).
V každém z těchto podadresářů je sada souborů s názvy a obsahem
jako u adresářů /proc/[pid]. Pro atributy společné všem vláknům
jsou obsahy všech souborů v podadresářích task/[tid] stejné jako
v odpovídajícím souboru rodičovského adresáře /proc/[pid] (např.
u vícevláknového procesu obsahují všchny soubory task/[tid]/cwd
stejnou hodnotu jako soubor /proc/[pid]/cwd v nadřazeném
adresáři, jelikož všechna vlákna v procesu mají stejný pracovní
adresář). U atributů, které se pro každé vlákno liší, mohou
odpovídající soubory v task/[tid] obsahovat různé hodnoty (např.
položky v souborech task/[tid]/status se mohou pro každé vlákno
lišit).
V případě vícevláknového procesu, jehož hlavní vlákno již
skončilo (obvykle voláním pthread_exit(3)), již nebude obsah
adresáře /proc/[pid]/task dostupný.
/proc/apm
Pokud bylo při kompilaci jádra definováno CONFIG_APM, obsahuje
číslo verze Advanced power managementu a informace o baterii.
/proc/bus
Obsahuje podadresáře pro instalované sběrnice.
/proc/bus/pccard
Podadresář pro pcmcia zařízení, pokud bylo při kompilaci jádra
nastaveno CONFIG_PCMCIA.
/proc/bus/pccard/drivers
/proc/bus/pci
Obsahuje různé podadresáře sběrnic a pseudo-soubory obsahující
informace o sběrnicích pci, instalovaných zařízeních a
ovladačích zařízení. Některé z těchto souborů nejsou textové.
/proc/bus/pci/devices
Informace o pci zařízeních. Lze k nim přistupovat pomocí
lspci(8) a setpci(8).
/proc/cmdline
Argumenty předané linuxovému jádru při jeho zavedení, často
pomocí zaváděcího programu jako je třeba lilo(8) nebo grub(8).
/proc/config.gz (od jádra 2.6)
This file exposes the configuration options that were used to
build the currently running kernel, in the same format as they
would be shown in the .config file that resulted when
configuring the kernel (using make xconfig, make config, or
similar). The file contents are compressed; view or search them
using zcat(1), zgrep(1), etc. As long as no changes have been
made to the following file, the contents of /proc/config.gz are
the same as those provided by :
cat /lib/modules/$(uname -r)/build/.config
/proc/config.gz is only provided if the kernel is configured
with CONFIG_IKCONFIG_PROC.
/proc/cpuinfo
Toto je sbírka údajů závislých na CPU a systémové architektuře,
každá podporovaná architektura obsahuje jiné položky. Obvyklými
položkami jsou processor, který udává počet CPU a bogomips, což
je systémová konstanta vypočtená při inicializaci jádra. Stroje
s více jádry (SMP) mají údaje pro každé CPU.
/proc/devices
textový seznam hlavních čísel a skupin zařízení. Může být použit
skripty MAKEDEV pro konzistenci s jádrem.
/proc/diskstats (od jádra 2.5.69)
tento soubor obsahuje vstupně-výstupní statistiky pro každé
diskové zařízení. Další informace jsou uvedeny ve zdrojovém
souboru jádra Documentation/iostats.txt.
/proc/dma
Seznam registrovaných ISA DMA (direct memory access) kanálů,
které jsou používány.
/proc/driver
Prázdný podadresář.
/proc/execdomains
List of the execution domains (ABI personalities).
/proc/fb
Informace frame bufferu, pokud bylo při kompilaci jádra
definováno CONFIG_FB.
/proc/filesystems
Textový seznam souborových systémů podporovaných jádrem, tj.
zakompilovaných do jádra nebo jejichž jaderné moduly jsou právě
načteny (Viz též filesystems(5).) Pokud je souborový systém
označen "nodev", znamená to, že nevyžaduje, aby bylo připojeno
blokové zařízení (např. virtuální souborový systém, síťový
souborový systém).
Shodou okolností může být používán programem mount(8), pokud
nebyl zadán žádný souborový systém a nepodařilo se mu určit druh
souborového systému. V tom případě zkouší souborové systémy
obsažené v tomto souboru (s výjimkou těch označených "nodev").
/proc/fs
Prázdný podadresář.
/proc/ide
Tento adresář je přítomen v systémech se sběrnicí ide. Pro každý
ide kanál a připojené zařízení existuje adresář. Soubory jsou:
cache velikost vyrovnávací paměti v KB
capacity počet sektorů
driver verze ovladače
geometry fyzická a logická geometrie
identify v šestnáctkové soustavě
media druh média
model číslo modelu výrobce
settings nastavení jednotky
smart_thresholds v šestnáctkové soustavě
smart_values v šestnáctkové soustavě
Příkaz hdparm(8) poskytuje přístup k těmto informacím v
přístupnějším formátu.
/proc/interrupts
This is used to record the number of interrupts per CPU per IO
device. Since Linux 2.6.24, for the i386 and x86_64
architectures, at least, this also includes interrupts internal
to the system (that is, not associated with a device as such),
such as NMI (nonmaskable interrupt), LOC (local timer
interrupt), and for SMP systems, TLB (TLB flush interrupt), RES
(rescheduling interrupt), CAL (remote function call interrupt),
and possibly others. Very easy to read formatting, done in
ASCII.
/proc/iomem
I/O mapa paměti v Linuxu 2.4.
/proc/ioports
Seznam aktuálně registrovaných oblastí I/O portů, které jsou
používány.
/proc/kallsyms (od jádra 2.5.71)
Obsahuje exportované definice symbolů jádra používané nástroji
modules(X) k dynamickému odkazování a vázání načítaných modulů.
V jádře 2.5.47 a dřívějších se podobný soubor s lehce odlišnou
syntaxí jmenoval ksyms.
/proc/kcore
Tento soubor reprezentuje fyzickou paměť systému a je uložen ve
formátu ELF core. S tímto pseudo-souborem a nestripovaným
jádrem (/usr/src/linux/vmlinux) může být GDB použit ke zkoumání
aktuálního stavu jakékoliv datové struktury jádra.
Celková velikost souboru je rovna velikosti fyzické paměti (RAM)
plus 4KB.
/proc/kmsg
Tento soubor může být použit místo systémového volání syslog(2)
ke čtení zpráv jádra. Proces, který chce číst tento soubor, musí
mít práva superuživatele a tento soubor by měl být čten pouze
jedním procesem. Tento soubor by neměl být čten, pokud je
spuštěn proces syslog, který používá systémové volání syslog(2)
k zaznamenávání zpráv jádra.
Informace z tohoto souboru získává program dmesg(8).
/proc/ksyms (Linux 1.1.23-2.5.47)
Viz /proc/kallsyms.
/proc/loadavg
První tři položky v tomto souboru jsou hodnoty průměrné zátěže
(load average) udávající počet úkolů (jobs) čekajících ve
frontě na spuštění (stav R) nebo čekajících na čtení/zápis
disku (stav D), zprůměrované po 1, 5 a 15 minutách. Jsou to
stejné hodnoty, jako poskytuje uptime(1) a další programy.
Čtvrté pole se skládá ze dvou čísel oddělených lomítkem (/).
První představuje počet současně vykonávaných entit plánovače
jádra (procesů, vláken); bude menší nebo rovno počtu CPU.
Hodnota za lomítkem je počet entit plánovače jádra, aktuálně
přítomných v systému. Páté pole je PID systémem naposledy
vytvořeného procesu.
/proc/locks
Tento soubor ukazuje aktuální zámky souborů (file locks)
(flock(2) a fcntl(2)) a leases (fcntl(2)).
/proc/malloc (pouze do jádra 2.2 včetně)
Tento soubor je přítomen pouze pokud bylo při kompilaci
definováno CONFIG_DEBUG_MALLOC.
/proc/meminfo
Tento soubor udává statistiky o využití paměti v systému.
Používá jej free(1) pro informaci o velikosti volné a používané
paměti (fyzické i swapu) v systému, stejně jako sdílené paměti a
vyrovnávacích pamětí jádra.
/proc/mounts
Před uvedením jádra 2.4.19 obsahoval tento soubor seznam všech
souborových systémů aktuálně připojených v systému. Se zavedením
jmenných prostorů připojení pro každý proces v jádře 2.4.19 se
tento soubor stal odkazem na /proc/self/mounts, který obsahuje
přípojné body jmenného prostoru připojení procesu. Formát tohoto
souboru je dokumentován v fstab(5).
/proc/modules
Textový seznam modulů nahraných systémem. Viz též lsmod(8).
/proc/mtrr
Memory Type Range Registers. Podrobnosti jsou uvedeny v
Documentation/mtrr.txt.
/proc/net
různé pseudo-soubory, které udávají stav některé části síťové
vrstvy. Tyto soubory obsahují ASCII struktury, a proto je možné
je číst příkazem cat(1). Nicméně standardní příkaz netstat(8)
poskytuje k těmto souborům čistší přístup.
/proc/net/arp
Obsahuje textový výpis ARP tabulky jádra, používané pro překlad
adres. Obsahuje dynamicky zjištěné i předprogramované ARP
položky. Jeho formát je:
IP adresa Druh HW Příznaky HW adresa Maska Zařízení
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
"IP adresa" je IPv4 adresa počítače a "Druh HW" je druh
hardwarové adresy podle RFC 826. Příznaky jsou interními
příznaky ARP struktur (tak, jak jsou definovány v
/usr/include/linux/if_arp.h) a "HW adresa" je namapování datové
vrstvy pro danou IP adresu, pokud je známo.
/proc/net/dev
Pseudo-soubor dev obsahuje stavové informace síťových zařízení -
počet přijatých a odeslaných paketů, počet chyb a kolizí a další
základní statistiky. Používá je program ifconfig(8) pro uvádění
stavu zařízení. Jeho formát je:
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
Je definován v /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
Internet Group Management Protocol. Je definován v
/usr/src/linux/net/core/igmp.c.
/proc/net/rarp
Tento soubor používá stejný formát jako soubor arp a obsahuje
aktuální databázi zpětného mapování, užívanou programem rarp(8)
k reverznímu vyhledávání adres. Pokud není RARP nakonfigurován v
jádře, není tento soubor přítomen.
/proc/net/raw
Obsahuje výpis tabulky RAW socketů. Většina informací má význam
pouze pro ladění. Hodnota "sl" je kernel hash slot pro socket,
"local_address" je lokální adresa a číslo protokolu. "St"
znamená interní stav socketu. "tx_queue" a "rx_queue" jsou
příchozí a odchozí fronty dat vyjádřené jako využití paměti
jádrem. Pole "tr", "tm->when" a "rexmits" nejsou v RAW
používána. Pole "uid" obsahuje platný UID tvůrce socketu.
/proc/net/snmp
Tento soubor obsahuje ASCII data potřebná pro řízení informací o
IP, ICMP, TCP a UDP pro SNMP agenta.
/proc/net/tcp
Obsahuje výpis z tabulky TCP socketů. Většina informací má
význam pouze pro ladění. Hodnota "sl" je kernel hash slot pro
socket, "local_address" je lokální adresa a číslo protokolu.
"rem_address" je vzdálená adresa a číslo portu (pokud je
připojen). "St" znamená interní stav socketu. "tx_queue" a
"rx_queue" jsou příchozí a odchozí fronty dat vyjádřené jako
využití paměti jádrem. Pole "tr", "tm->when" a "rexmits"
obsahují interní informace o stavech socketů jádra a mají význam
pouze pro ladění. Pole "uid" obsahuje platný UID tvůrce
socketu.
/proc/net/udp
Obsahuje výpis z tabulky UDP socketů. Většina informací má
význam pouze pro ladění. Hodnota 'sl' je kernel hash slot pro
socket, 'local_address' je lokální adresa a číslo portu.
"rem_address" je vzdálená adresa a číslo portu (pokud je
připojen). "St" znamená interní stav socketu. "tx_queue" a
"rx_queue" jsou příchozí a odchozí fronty dat vyjádřené jako
využití paměti jádrem. Pole "tr", "tm->when" a "rexmits" nejsou
RAW používána. Pole "uid" obsahuje platný UID tvůrce socketu.
Jeho formát je:
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
Obsahuje seznam UNIX domain socketů přítomných v systému a
jejich status. Jeho formát je:
Num RefCount Protocol Flags Type St Path
0: 00000002 00000000 00000000 0001 03
1: 00000001 00000000 00010000 0001 01 /dev/printer
"Num" znamená číslo slotu v tabulce jádra, "RefCount" je počet
uživatelů socketu, "Protocol" je v současnosti vždycky 0,
"Flags" ukazuje interní vlajky jádra, které vyjadřují stav
socketu. V současnosti je "Type" vždycky "1" (sockety pro
Unixové doménové datagramy ještě jádro nepodporuje). "St" je
interní stav socketu a "Path" je cesta přidělená socketu (pokud
je) (bound path).
/proc/partitions
Obsahuje hlavní a vedlejší čísla každého oddílu, počet bloků a
název oddílu.
/proc/pci
Výpis všech PCI zařízení nalezených během inicializace jádra,
spolu s jejich konfigurací.
Tento soubor byl označen jako zastaralý ve prospěch nového /proc
rozhraní pro PCI (/proc/bus/pci). Stal se voliteným v jádře 2.2
(dostupný s volbou CONFIG_PCI_OLD_PROC nastavenou při kompilaci
jádra). Byl nevolitelně povolen v jádře 2.4. Poté byl v jádře
2.6 označen jako zastaralý (stále dostupný s volbou
CONFIG_PCI_LEGACY_PROC) a konečně úplně odstraněn od jádra
2.6.17.
/proc/scsi
Adresář se středněúrovňovým pseudo-souborem scsi a různými
adresáři nízkoúrovňových SCSI ovladačů, které obsahují jeden
soubor pro každé SCSI zařízení přítomné v systému; všechny
obsahují status nějaké části SCSI IO subsystému. Tyto soubory
obsahují ACSII struktury a pro jejich čtení je tedy možné použít
cat(1).
Do některých těchto souborů je také možné zapisovat a
překonfigurovat tak daný subsystém či vypnout a zapnout některé
vlastnosti.
/proc/scsi/scsi
Výpis všech SCSI zařízení, o kterých jádro ví. Je podobný výpisu
při zavádění systému. scsi momentálně podporuje pouze příkaz
add-single-device, který umožňuje uživateli root přidat zařízení
připojené za chodu do seznamu známých zařízení.
Příkaz
echo 'scsi add-single-device 1 0 5 0' > /proc/scsi/scsi
způsobí, že hostitel scsi1 bude v SCSI kanálu 0 hledat zařízení
s ID 5 LUN 0. Pokud je již na této adrese známé zařízení nebo
adresa není platná, je vrácena chyba.
/proc/scsi/[nzev_ovladae]
[nzev_ovladae] může být momentálně NCR53c7xx, aha152x,
aha1542, aha1740, aic7xxx, buslogic, eata_dma, eata_pio,
fdomain, in2000, pas16, qlogic, scsi_debug, seagate, t128,
u15-24f, ultrastore nebo wd7000. Tyto adresáře se objeví pro
každý ovladač, který zaregistroval alespoň jeden SCSI HBA. Každý
adresář obsahuje jeden soubor pro každého zaregistrovaného
hostitele. Každý tento soubor je pojmenován po číslu, které bylo
hostiteli přiděleno během inicializace.
Čtením těchto souborů se obvykle zjistí konfigurace ovladače a
hostitele, statistiky atd.
Zápis do těchto souborů umožňuje u různých hostitelů různé věci.
Například příkazy latency a nolatency může root zapnout a
vypnout kód pro měření latence příkazů v ovladači eata_dma.
Příkazy lockup a unlock může root ovládat zaseknutí (lockups)
sběrnice simulované ovladačem scsi_debug.
/proc/self
Tento adresář odkazuje na proces, který přistupuje k souborovému
systému /proc a je shodný s adresářem v /proc pojmenovaném po ID
tohoto procesu.
/proc/slabinfo
Informace o vyrovnávacích pamětech jádra. Od jádra 2.6.16 je
tento soubor přítomen pouze pokud je zapnuta volba CONFIG_SLAB.
Sloupce v /proc/slabinfo jsou:
cache-name
num-active-objs
total-objs
object-size
num-active-slabs
total-slabs
num-pages-per-slab
Viz slabinfo(5) pro další informace.
/proc/stat
statistiky jádra/systému. Liší se podle architektury. Obvyklé
záznamy zahrnují:
cpu 3357 0 4313 1362393
Doba, měřená v jednotkách USER_HZ (1/100 vteřiny na
většině architektur, použijte sysconf(_SC_CLK_TCK) pro
aktuální hodnotu), kterou systém strávil v uživatelském
režimu, uživatelském režimu s nízkou prioritou (nice),
systémovém režimu a nečinně. Poslední hodnota by se měla
rovnat USER_HZ krát druhá hodnota v pseudo-souboru
uptime.
V Linuxu 2.6 obsahuje tato řádka tři další sloupce:
iowait - čas strávený čekáním na dokončení I/O (od
2.5.41); irq - čas strávený obsluhou přerušení (od
2.6.0-test4); softirq - čas strávený obsluhou softirqs
(od 2.6.0-test4).
Od jádra 2.6.11 existuje osmý sloupec steal - ukradený
čas, což je čas strávený v jiném operačním systému v
případě běhu ve virtualizovaném prostředí.
Od jádra 2.6.24 existuje devátý sloupec, guest, což je
čas strávený během virtuálního CPU pro operační systémy
hostované linuxovým jádrem.
page 5741 1808
Počet stránek, které systém odstránkoval na disk a z
disku.
swap 1 0
Počet stránek swapu, které have been brought in and out.
intr 1462898
Tato řádka obsahuje počty přerušení obsloužených od
zavedení systému pro všechna možná systémová přerušení.
První sloupec je celkový počet obsloužených přerušení;
každý další sloupec znamená celkový počet pro určité
přerušení.
disk_io: (2,0):(31,30,5764,1,2) (3,0):...
(major,disk_idx):(noinfo, read_io_ops, blks_read,
write_io_ops, blks_written)
(jen pro Linux 2.4)
ctxt 115315
Počet změn kontextu, které systém prodělal.
btime 769041601
Čas, kdy byl zaveden systém; v sekundách od začátku
Epochy (1.leden 1970).
processes 86031
Počet forků od zavedení systému.
procs_running 6
Počet procesů v runnable state. (Od Linuxu 2.5.45)
procs_blocked 2
Počet zablokovaných procesů, které čekají na dokončení
I/O. (Od Linuxu 2.5.45)
/proc/swaps
Využívané oblasti swapu. Viz též swapon(8).
/proc/sys
Tento adresář (přítomen od 1.3.57) obsahuje množství souborů a
podadresářů, které odpovídají proměnným jádra. Tyto proměnné lze
číst a někdy i měnit prostřednictvím souborového systému proc, a
deprecated systémového volání sysctl(2). V současnosti obsahuje
podadresáře abi, debug, dev, fs, kernel, net, proc, rxrpc,
sunrpc a vm které obsahují další soubory a podadresáře.
/proc/sys/abi (od jádra 2.4.10)
Tento adresář může obsahovat soubory s binárními informacemi
aplikací. Podrobnosti jsou uvedeny v souboru
Documentation/sysctl/abi.txt ve zdrojovém kódu jádra.
/proc/sys/debug
Tento adresář může být prázdný.
/proc/sys/dev
Tento adresář obsahuje informace specifické pro zařízení (např.
dev/cdrom/info). V některých systémech může být prázdný.
/proc/sys/fs
Obsahuje podadresáře binfmt_misc, epoll, inotify a mqueue a
soubory 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 a super-nr.
/proc/sys/fs/binfmt_misc
Dokumentace k souborům v tomto adresáři je ve zdrojových kódech
jádra v Documentation/binfmt_misc.txt.
/proc/sys/fs/dentry-state (since Linux 2.2)
This file contains information about the status of the directory
cache (dcache). The file contains six numbers, nr_dentry,
nr_unused, age_limit (age in seconds), want_pages (pages
requested by system) and two dummy values.
* nr_dentry is the number of allocated dentries (dcache
entries). This field is unused in Linux 2.2.
* nr_unused is the number of unused dentries.
* age_limit is the age in seconds after which dcache entries can
be reclaimed when memory is short.
* want_pages is non-zero when the kernel has called
shrink_dcache_pages() and the dcache isn't pruned yet.
/proc/sys/fs/dir-notify-enable
Tento soubor může být použit pro zakázání nebo povolení rozhraní
dnotify popsaného v fcntl(2), na celosystémové úrovni. Hodnota
0 v tomto souboru rozhraní zakáže, hodnota 1 jej povolí.
/proc/sys/fs/dquot-max
Tento soubor ukazuje maximální počet cached disk quota entries.
V některých systémech (2.4) není přítomen. Pokud je počet
volných cached disk quota entries velmi nízký a v systému je
najednou přítomno ohromné množství uživatelů, může být vhodné
tento limit zvýšit.
/proc/sys/fs/dquot-nr
Tento soubor ukazuje počet alokovaných disk quota entries a
počet volných disk quota entries.
/proc/sys/fs/epoll (od Linuxu 2.6.28)
Tento adresář obsahuje soubory max_user_instances a
max_user_watches, které je možno použít k omezení paměti jádra
využité rozhraním epoll. Více informací viz inotify(7).
/proc/sys/fs/file-max
Tento soubor definuje celosystémový limit počtu otevřených
souborů pro všechny procesy. (Viz též setrlimit(2), který může
být použit procesem k nastavení limitu na proces, RLIMIT_NOFILE,
na počet souborů, které může otevřít.) Pokud se objeví spousta
chybových hlášení, že dochází file handles, zkuste tuto hodnotu
zvýšit:
echo 100000 > /proc/sys/fs/file-max
Konstanta jádra NR_OPEN stanovuje horní limit pro hodnotu,
kterou je možné vložit do file-max.
Pokud zvýšíte /proc/sys/fs/file-max, zvyšte také
/proc/sys/fs/inode-max na 3-4 násobek nové hodnoty
/proc/sys/fs/file-max, nebo dojdou inody.
/proc/sys/fs/file-nr
Tento soubor (jen ke čtení) udává počet souborů, které jsou
momentálně otevřeny. Obssahuje tři čísla: počet alokovaných
file handles, počet volných file handles a maximální počet file
handles. Jádro alokuje file handles dynamicky, ale potom je již
neuvolňuje. Pokud je počet alokovaných souborů blízký maximu,
mělo by být maximum zvýšeno. Pokud je počet volných file handles
velký, jednalo se o špičku ve využití file handles a
pravděpodobně není potřeba maximum zvyšovat.
/proc/sys/fs/inode-max
Tento soubor obsahuje maximální počet in-memory inodes. V
některých (2.4) systémech nemusí být přítomen. Tato hodnota by
měla být 3-4 krát větší než hodnota ve file-max, protože stdin,
stdout a síťové sockety také vyžadují inody pro své ovládání.
Pokud často docházejí inody, je potřeba tuto hodnotu zvýšit.
/proc/sys/fs/inode-nr
Tento soubor obsahuje první dvě hodnoty z inode-state.
/proc/sys/fs/inode-state
Tento soubor obsahuje sedm čísel: nr_inodes, nr_free_inodes,
preshrink a čtyři dummy hodnoty. nr_inodes je počet inodů,
které jsou alokovány systémem. Může být lehce vyšší než
inode-max, protože Linux je alokuje po celých stránkách.
nr_free_inodes reprezentuje počet volných inodů. preshrink je
nenulová hodnota, když nr_inodes > inode-max a systém potřebuje
vyčistit seznam inodů namísto alokování dalších.
/proc/sys/fs/inotify (od Linuxu 2.6.13)
Tento adresář obsahuje soubory max_queued_events,
max_user_instances a max_user_watches, které je možno použít k
omezení paměti jádra využité rozhraním inotify. Více informací
viz inotify(7).
/proc/sys/fs/lease-break-time
Tento soubor určuje oddechový čas, který dává jádro procesu,
který holding a file lease (fcntl(2)), poté co mu poslalo
signál, kterým jej upozorňuje, že další proces čeká na otevření
souboru. Pokud lease holder does not remove or downgrade the
lease během tohoto oddechového času, jádro forcibly breaks the
lease.
/proc/sys/fs/leases-enable
Tento soubor je možné použít k povolení nebo zakázání file
leases (fcntl(2)) na celosystémové úrovni. Pokud tento soubor
obsahuje hodnotu 0, jsou leases zakázány. Nenulová hodnota
leases povolí.
/proc/sys/fs/mqueue (od Linuxu 2.6.6)
Tento adresář obsahuje soubory msg_max, msgsize_max a
queues_max, které kontrolují zdroje používané POSIXovými
frontami zpráv. Více informací viz mq_overview(7).
/proc/sys/fs/overflowgid a /proc/sys/fs/overflowuid
Tyto soubory umožňují změnit hodnotu pevně daných UID a GID.
Výchozí hodnota 65534. Některé souborové systémy podporují poze
16 bitové UID a GID, ačkoliv UID a GID v Linuxu jsou 32 bitové.
Když je jeden z těchto souborových systémů připojen jako
zapisovatelný, je každé UID nebo GID, které by překročilo 65535,
před zápisem na disk přeloženo na stanovenou hodnotu přetečení.
/proc/sys/fs/suid_dumpable (od Linuxu 2.6.13)
Hodnota v tomto souboru určuje, zda jsou soubory core dump
vytvářeny i pro set-user-ID nebo jinak chráněné/poskvrněné
binárky. Je možné použít tři různé integer hodnoty:
0 (vchoz) Tradiční (před verzí 2.6.13) chování. Core dump se
nevytváří pro soubor s pozměněnými vlastnosti (voláním
seteuid(2), setgid(2), apod., nebo spuštěním programu s
set-user-ID nebo set-group-ID) nebo jehož binárka nemá povolena
práva ke čtení.
1 ("debug") Core dump je vytvářen u všech souborů, kdykoliv je
to možné. Vlastníkem souboru core dump je ID uživatele
vypisovaného procesu a neaplikují se žádná bezpečnostní
opatření. Mělo by se používat jen pro ladění systému. Ptrace
není kontrolován.
2 ("suidsafe") Jakákoliv binárka, která by za normálních
okolností nebyla vypsána (viz 0 výše), je vypsána s čitelností
pouze pro uživatele root. To umožňuje uživateli soubor core
dump odstranit, ale nikoliv číst. Z důvodu bezpečnosti se v
tomto režimu soubory core dump vzájemně nepřepisují ani
nepřepisují jiné soubory. tento režim je vhodný pro
administrátory pokoušející se ladit problémy v normálním
prostředí.
/proc/sys/fs/super-max
Tento soubor ovládá maximální počet superbloků a tím i maximální
počet souborových systémů, které může jádro připojit. super-max
je nutné zvýšit pouze v případě, že je potřeba připojit více
souborových systémů, než aktuální hodnota v super-max umožňuje.
/proc/sys/fs/super-nr
Tento soubor obsahuje počet právě připojených souborových
systémů.
/proc/sys/kernel
Tento adresář obsahuje soubory řídící mnoho parametrů jádra.
Jejich popis následuje.
/proc/sys/kernel/acct
Tento soubor obsahuje tři čísla: highwater, lowwater a
frequency. Pokud je zapnuto BSD-style process accounting, je
jeho chování těmito hodnotami ovládáno. Pokud se volné místo na
souborovém systému, kde sídlí log, sníží pod procento určené
hodnotou lowwater, accounting se pozastaví. Pokud se volné místo
dostane nad procento určené hodnotou highwater, accounting se
obnoví. Frequency určuje, jak často má jádro kontrolovat volné
místo (v sekundách). Výchozí hodnoty jsou 4, 2 a 30. To znamená
pozastavit accounting, pokud volné místo představuje <= 2%;
obnovit jej, pokud volné místo dosáhne >= 4%; informaci o volném
místě považovat za platnou po 30 sekund.
/proc/sys/kernel/cap-bound (od jádra 2.2 do 2.6.24)
Tento soubor obsahuje hodnotu jádra capability bounding set
(vyjádřeno jako číslo v desítkové soustavě se znaménkem). Tato
sada je ANDována s capabilities povolenými procesu při
execve(2). Od jádra 2.6.25 celosystémový capability bounding set
zmizel a byl nahrazen per-thread bounding setem; viz
capabilities(7).
/proc/sys/kernel/core_pattern
Viz core(5).
/proc/sys/kernel/core_uses_pid
Viz core(5).
/proc/sys/kernel/ctrl-alt-del
Tento soubor řídí zpracování Ctrl-Alt-Del z klávesnice. Pokud
je hodnota v tomto souboru 0, Ctrl-Alt-Del je odchyceno a
posláno programu init(8) program k provedení elegantního
restartu. Pokud je tato hodnota větší než 0, reakce Linuxu bude
okamžitý reboot, nebude ani provedena synchronizace bufferů.
Poznámka: když má program (jako třeba dosemu) klávesnici v "raw"
režimu, je ctrl-alt-del odchyceno programem ještě dříve než
dosáhne tty úrovně jádra a je na programu, jak s ním naloží.
/proc/sys/kernel/hotplug
Tento soubor obsahuje cestu pro hotplug policy agent. Výchozí
hodnota v tomto souboru je /sbin/hotplug.
/proc/sys/kernel/domainname a /proc/sys/kernel/hostname
mohou být použity pro nastavení NIS/YP domainname a hostname
počítače naprosto stejným způsobem jako příkazy domainname(1)
an hostname(1), tj.:
# echo 'darkstar' > /proc/sys/kernel/hostname
# echo 'mydomain' > /proc/sys/kernel/domainname
má stejný efekt jako
# hostname 'darkstar'
# domainname 'mydomain'
Všimněte si ale, že darkstar.frop.org má hostname "darkstar" a
DNS (Internet Domain Name Server) domainname "frop.org", které
nesmí být zaměňováno s NIS (Network Information Service) nebo YP
(Yellow Pages) domainname. Tato doménová jména jsou zcela
odlišná. Podrobná diskuze je uvedena v manuálové stránce
hostname(1).
/proc/sys/kernel/htab-reclaim
(jen pro PowerPC) Pokud tento soubor obsahuje nenulovou hodnotu,
je PowerPC htab (viz soubor jádra
Documentation/powerpc/ppc_htab.txt) vyčištěno pokaždé, když
systém narazí na nečinnou smyčku.
/proc/sys/kernel/l2cr
(jen pro PowerPC) Tento soubor obsahuje vlajku, která řídí L2
vyrovnávací paměť desek pro procesor G3. Pokud je 0, je
vyrovnávací paměť vypnuta. Pokud je nenulová, je zapnuta.
/proc/sys/kernel/modprobe
Tento soubor obsahuje cestu k zavaděči modulů jádra Výchozí
hodnotou je /sbin/modprobe. Tento soubor je přítomen pouze
pokud je jádro sestaveno s volbou CONFIG_KMOD. It is described
by the kernel source file Documentation/kmod.txt (only present
in kernel 2.4 and earlier).
/proc/sys/kernel/msgmax
Tento soubor definuje celosystémový limit na maximální počet
bajtů v jediné zprávě zapsané do System V fronty zpráv.
/proc/sys/kernel/msgmni
Tento soubor definuje celosystémový limit počtu identifikátorů
fronty zpráv. (Tento soubor je přítomen od Linuxu 2.4)
/proc/sys/kernel/msgmnb
Tento soubor definuje celosystémový parametr používaný pro
inicializaci hodnoty msg_qbytes pro následně vytvořené fronty
zpráv. Hodnota msg_qbytes určuje maximální počet bajtů, které
mohou být zapsány do fronty zpráv.
/proc/sys/kernel/ostype a /proc/sys/kernel/osrelease
Tyto soubory obsahují části řetězců z /proc/version.
/proc/sys/kernel/overflowgid a /proc/sys/kernel/overflowuid
Tyto soubory duplikují soubory /proc/sys/fs/overflowgid a
/proc/sys/fs/overflowuid.
/proc/sys/kernel/panic
Tento soubor umožňuje čtení/zápis proměnné jádra panic_timeout.
Pokud je nulová, bude jádro při panice ve smyčce; pokud je
nenulová, znamená počet sekund po kterých by jádro mělo samo
rebootovat. Pokud je použit software watchdog device driver,
doporučuje se hodnota 60.
/proc/sys/kernel/panic_on_oops (od jádra 2.5.68)
Tento soubor řídí chování jádra, pokud dojde k oops nebo chybě.
Pokud tento soubor obsahuje 0, pokusí se systém pokračovat.
Pokud obsahuje 1, počká systém několik sekund (aby měl klogd čas
zaznamenat výstup oops) a pak zpanikaří. Pokud soubor
/proc/sys/kernel/panic také obsahuje nenulovou hodnotu, bude
počítač rebootován.
/proc/sys/kernel/pid_max (od jádra 2.5.34)
Tento soubor určuje hodnotu, při které se PID přetočí (tj.
hodnota v tomto souboru je o jedna větší než nejvyšší PID).
Výchozí hodnota pro tento soubor, 32768, má za následek stejný
rozsah PID jako v předchozích jádrech. Na 32 bitových systémech
je 32768 maximální hodnotou pid_max. Na 64 bitových systémech
může být pid_max nastaven na jakoukoliv hodnotu až do 2^22
(PID_MAX_LIMIT, zhruba 4 milióny).
/proc/sys/kernel/powersave-nap (pouze pro PowerPC)
Tento soubor obsahuje vlajku. Pokud je nastavena, Linux-PPC
použije režim šetření energií "nap", jinak bude použit režim
"doze".
/proc/sys/kernel/printk
Čtyři hodnoty v tomto souboru jsou console_loglevel,
default_message_loglevel, minimum_console_level a
default_console_loglevel. Tyto hodnoty ovlivňují chování
printk() při tisku nebo záznamu zpráv o chybách. Více informací
o různých úrovních logování uvádí syslog(2). Zprávy s prioritou
vyšší než console_loglevel budou vytisknuty do konsoly. Zprávy
bez zadané priority budou vytisknuty s prioritou
default_message_level. minimum_console_loglevel je minimální
(nejvyšší) hodnota, na kterou může být console_loglevel
nastavena. default_console_loglevel je výchozí hodnota pro
console_loglevel.
/proc/sys/kernel/pty (od Linuxu 2.6.4)
Tento adresář obsahuje dva soubory, která se vztahují k počtu
pseudoterminálů typu Unix 98 (viz pts(4)) v systému.
/proc/sys/kernel/pty/max
Tento soubor definuje maximální počet pseudoterminálů.
/proc/sys/kernel/pty/nr
Tento read-only soubor ukazuje, kolik pseudoterminálů je právě
užíváno.
/proc/sys/kernel/random
Tento adresář obsahuje různé parametry pro řízení činnosti
souboru /dev/random. Více informací uvádí random(4).
/proc/sys/kernel/real-root-dev
Tento soubor je dokumentován ve zdrojovém souboru jádra
Documentation/initrd.txt.
/proc/sys/kernel/reboot-cmd (jen Sparc)
Tento soubor je zřejmě určen pro předání parametru zavaděči
SPARC ROM/Flash. Možná mu říká, co dělat po rebootování?
/proc/sys/kernel/rtsig-max
(Pouze v jádrech do 2.6.7 včetně; viz setrlimit(2)) Tento
soubor může být použit k nastavení maximálního počtu POSIXových
realtime signálů (ve frontě), které mohou v systému zbývat.
/proc/sys/kernel/rtsig-nr
(Pouze v jádrech do 2.6.7 včetně) Tento soubor ukazuje počet
POSIXových realtime signálů, které jsou právě ve frontě.
/proc/sys/kernel/sem (od Linuxu 2.4)
Tento soubor obsahuje 4 čísla, která definují limity pro System
V IPC semafory. Tyto položky jsou, popořadě:
SEMMSL Maximální počet semaforů v sadě semaforů.
SEMMNS Celosystémový limit na počet semaforů ve všech sadách
semaforů.
SEMOPM Maximální počet operací, které mohou být určeny voláním
semop(2).
SEMMNI Celosystémový limit na maximální počet identifikátorů
semaforů.
/proc/sys/kernel/sg-big-buff
Tento soubor ukazuje velikost bufferu obecného SCSI zařízení
(sg). Zatím není možné jej měnit za chodu, ale je možné jej
měnit při kompilaci úpravou include/scsi/sg.h a změnou hodnoty
SG_BIG_BUFF. Nicméně nemělo by být nutné tuto hodnotu měnit.
/proc/sys/kernel/shmall
Tento soubor obsahuje celosystémový limit na celkový počet
stránek sdílené paměti System V.
/proc/sys/kernel/shmmax
Tento soubor je možné použít pro zjištění a nastavení limitu na
maximální (System V IPC) velikost segmentu sdílené paměti,
který může být vytvořen. Jádro nyní podporuje segmenty sdílené
paměťi až do 1GB. Výchozí hodnota je SHMMAX.
/proc/sys/kernel/shmmni
(od Linuxu 2.4 dál) Tento soubor určuje celosystémový maximální
počet segmentů sdílené paměti System V, které mohou být
vytvořeny.
/proc/sys/kernel/version
Tento soubor obsahuje řetězec ve tvaru:
#5 Wed Feb 25 21:49:24 MET 1998
"#5" znamená, že se jedná o páté jádro sestavené z těchto
zdrojových souborů a datum za ním je čas, kdy bylo sestaveno.
/proc/sys/kernel/threads-max (od jádra 2.3.11)
Tento soubor určuje globální limit pro počet vláken (úloh),
která mohou být v systému vytvořena.
/proc/sys/kernel/zero-paged (pouze pro PowerPC)
Tento soubor obsahuje vlajku. Pokud je nastavena (nenulová),
Linux-PPC will pre-zero pages in the idle loop, possibly
speeding up get_free_pages.
/proc/sys/net
Tento adresář obsahuje síťové položky. Vysvětlení k některým
souborům v tomto adresáři je uvedeno v tcp(7) a ip(7).
/proc/sys/net/core/somaxconn
Tento soubor definuje maximální hodnotu pro parametr backlog
volání listen(2); viz manuálová stránka listen(2).
/proc/sys/proc
Tento adresář může být prázdný.
/proc/sys/sunrpc
Tento adresář podporuje remote procedure call Sunu pro network
file system (NFS). V některých systémech není přítomen.
/proc/sys/vm
Tento adresář obsahuje soubory pro ladění memory managementu,
buffer a cache managementu.
/proc/sys/vm/drop_caches (od Linuxu 2.6.16)
Zápis do tohoto souboru způsobí, že jádro vyhodí prázdné
vyrovnávací paměti, dentries a inody z paměti, čímž se paměť
uvolní.
K uvolnění pagecache se použije echo 1 >
/proc/sys/vm/drop_caches; k uvolnění dentries a inodů se použije
echo 2 > /proc/sys/vm/drop_caches; k uvolnění pagecache,
dentries a inodů se použije echo 3 > /proc/sys/vm/drop_caches.
Protože toto je nedestruktivní operace a dirty objekty není
možné uvolnit, měl by uživatel nejprve spustit sync(8).
/proc/sys/vm/legacy_va_layout (od Linuxu 2.6.9)
Pokud je nenulový, vypne nový 32 bitový memory-mapping layout;
jádro použije pro všechny procesy původní (2.4) layout.
/proc/sys/vm/oom_dump_tasks (od jádra 2.6.25)
Enables a system-wide task dump (excluding kernel threads) to be
produced when the kernel performs an OOM-killing. The dump
includes the following information for each task (thread,
process): thread ID, real user ID, thread group ID (process ID),
virtual memory size, resident set size, the CPU that the task is
scheduled on, oom_adj score (see the description of
/proc/[pid]/oom_adj), and command name. This is helpful to
determine why the OOM-killer was invoked and to identify the
rogue task that caused it.
If this contains the value zero, this information is suppressed.
On very large systems with thousands of tasks, it may not be
feasible to dump the memory state information for each one.
Such systems should not be forced to incur a performance penalty
in OOM situations when the information may not be desired.
If this is set to non-zero, this information is shown whenever
the OOM-killer actually kills a memory-hogging task.
Výchozí hodnota je 0.
/proc/sys/vm/oom_kill_allocating_task (od jádra 2.6.24)
This enables or disables killing the OOM-triggering task in
out-of-memory situations.
If this is set to zero, the OOM-killer will scan through the
entire tasklist and select a task based on heuristics to kill.
This normally selects a rogue memory-hogging task that frees up
a large amount of memory when killed.
If this is set to non-zero, the OOM-killer simply kills the task
that triggered the out-of-memory condition. This avoids a
possibly expensive tasklist scan.
If /proc/sys/vm/panic_on_oom is non-zero, it takes precedence
over whatever value is used in
/proc/sys/vm/oom_kill_allocating_task.
Výchozí hodnota je 0.
/proc/sys/vm/overcommit_memory
Tento soubor obsahuje režim kernel virtual memory accounting.
Hodnoty jsou:
0: heuristic overcommit (výchozí)
1: always overcommit, never check
2: always check, never overcommit
V režimu 0 nejsou volání mmap(2) s MAP_NORESERVE kontrolována
nikdy a výchozí kontrola je velmi slabá, což způsobuje riziko,
že bude proces "OOM-zabit". V Linuxu 2.4 jakákoliv nenulová
hodnota implikuje režim 1. V režimu 2 (dostupný od Linuxu 2.6)
je celkový virtuální adresní prostor systému omezen na (SS +
RAM*(r/100)), kde SS je velikost odkládacího prostoru, RAM je
velikost fyzické paměti a r je obsah souboru
/proc/sys/vm/overcommit_ratio.
/proc/sys/vm/overcommit_ratio
Viz popis /proc/sys/vm/overcommit_memory.
/proc/sys/vm/panic_on_oom (od jádra 2.6.18)
This enables or disables a kernel panic in an out-of-memory
situation.
If this file is set to the value 0, the kernel's OOM-killer will
kill some rogue process. Usually, the OOM-killer is able to
kill a rogue process and the system will survive.
If this file is set to the value 1, then the kernel normally
panics when out-of-memory happens. However, if a process limits
allocations to certain nodes using memory policies (mbind(2)
MPOL_BIND) or cpusets (cpuset(7)) and those nodes reach memory
exhaustion status, one process may be killed by the OOM-killer.
No panic occurs in this case: because other nodes' memory may be
free, this means the system as a whole may not have reached an
out-of-memory situation yet.
If this file is set to the value 2, the kernel always panics
when an out-of-memory condition occurs.
The default value is 0. 1 and 2 are for failover of clustering.
Select either according to your policy of failover.
/proc/sysvipc
Podadresář obsahující pseudosoubory msg, sem a shm. Tyto
soubory obsahují seznam objektů System V Interprocess
Communication (IPC) (fronty zpráv, semafory a sdílená paměť),
které jsou aktuálně v systému přítomny, poskytují podobnou
informaci jako ipcs(1). Tyto soubory mají záhlaví a jsou
formátovány (jeden IPC objekt na řádek) pro lepší přehled.
svipc(7) poskytuje další detaily pro informace obsažené v
těchto souborech.
/proc/tty
Podadresář obsahující pseudosoubory a podadresáře pro ovladače
tty a line disciplines.
/proc/uptime
Tento soubor obsahuje dvě čísla: uptime systému (sekundy) a čas
strávený nečinností (sekundy).
/proc/version
Řetězec identifikující verzi jádra, které právě běží. Zahrnuje
obsah /proc/sys/kernel/ostype, /proc/sys/kernel/osrelease a
/proc/sys/kernel/version. Například:
Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994
/proc/vmstat (od Linuxu 2.6)
Tento soubor zobrazuje různé statistiky virtuální paměti.
/proc/zoneinfo (od Linuxu 2.6.13)
Tento soubor obsahuje informace o paměťových zónách. Hodí se
při analyzování chování virtuální paměti.
POZNÁMKY
Mnoho řetězců (např. proměnné prostředí a příkazový řádek) je ve
vnitřním formátu s podpoložkami oddělenými NULL bajty ('\0'), takže
mohou být lépe čitelné s užitím od -c nebo tr "\000" "\n". Jako další
možnost poslouží dobře i echo `cat <file>`.
Tato manuálová stránka není úplná, může být nepřesná a potřebuje být
často doplňována.
DALŠÍ INFORMACE
cat(1), find(1), free(1), ps(1), tr(1), uptime(1), chroot(2), mmap(2),
readlink(2), syslog(2), slabinfo(5), hier(7), time(7), arp(8),
dmesg(8), hdparm(8), ifconfig(8), init(8), lsmod(8), lspci(8),
mount(8), netstat(8), procinfo(8), route(8)
Soubory zdrojového kódu jádra: Documentation/filesystems/proc.txt,
Documentation/sysctl/vm.txt
TIRÁŽ
Tato stránka je součástí projektu Linux man-pages. Popis projektu a
informace o hlášení chyb najdete na
http://www.kernel.org/doc/man-pages/.