Adresář /proc

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Podadresáře: Oprava příkladu na self)
(Adresář /proc: Zapsány souhrnné informace z celé kapitoly)
Řádka 5: Řádka 5:
 
* [http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/proc.html TLDP.org > Linux-Filesystem-Hierarchy > Proc]
 
* [http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/proc.html TLDP.org > Linux-Filesystem-Hierarchy > Proc]
  
== Adresář <tt>/proc</tt> ==
+
== Úvod ==
*Soubory jsou jen virtuální, ve skutečnosti neexistují.
+
; K čemu je <tt>/proc</tt>?
**Systém je vytváří za běhu, je-li vznesen požadavek.
+
* Nese informace o běžících procesech v operačním systému.
* Většina souborů jen pro čtení
+
* Informace o každém procesu jsou v jednom adresáři (podrobněji viz [[#Podadresáře|kapitola Podadresáře]]).
 +
* Dále jsou zde informace o hardware a software počítače (viz [[#Informace o HW|kapitola Informace o HW]]).
 +
 
 +
; Obvykle jen pro čtení
 +
* Většina souborů v adresáři <tt>/proc</tt> je jen pro čtení.
 
** Umožňují zjišťovat informace o systému a procesech:
 
** Umožňují zjišťovat informace o systému a procesech:
 
** Například: <tt>/proc/meminfo</tt>
 
** Například: <tt>/proc/meminfo</tt>
* Některé soubory jsou zapisovatelné
+
* Některé soubory ale jsou zapisovatelné
** umožňují modifikaci parametrů kernelu.
+
** umožňují modifikaci parametrů kernelu (jádra OS).
 
** Například povolení routování:  
 
** Například povolení routování:  
 
  echo 1 > /proc/sys/net/ipv4/ip_forward
 
  echo 1 > /proc/sys/net/ipv4/ip_forward
 +
 +
; <tt>/proc</tt> je virtuální adresář!
 +
* Soubory jsou jen virtuální, ve skutečnosti neexistují.
 +
* Informace se berou z operační paměti z tabulek procesů a dalších pomocných struktur operačního systému.
  
 
== Podadresáře ==
 
== Podadresáře ==

Verze z 27. 7. 2014, 06:24


Obsah

Zdroje

Úvod

K čemu je /proc?
Obvykle jen pro čtení
echo 1 > /proc/sys/net/ipv4/ip_forward
/proc je virtuální adresář!

Podadresáře

stat
status

Stručně čitelné pro člověka:

cmdline
cwd
environ
... a další

Příklad: informace o procesu a jeho zabití

  • Spusťte nekonečný proces na pozadí:
cp /dev/zero /dev/null &
  • Zjistěte číslo procesu ve druhém sloupečku:
ps
  • Vypište informace o procesu
cat /proc/<číslo procesu>/status
cat /proc/<číslo procesu>/environ
cat /proc/<číslo procesu>/cmdline
  • Pošlete procesu signál pro ukončení:
kill -s INT <číslo procesu>

Zkuste ze dvou různých příkazových procesů (třeba dvou terminálů) spustit:

cat /proc/self/status

Informace o hardware

Informace o discích
Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje