Kapitel 6. Das /proc Dateisystem

Inhaltsverzeichnis
6.1. Informationen über Prozesse
6.2. Hardware-Informationen
6.3. Das Unterverzeichnis /proc/sys

Das Dateisystem /proc ist eine Spezialität von Linux. Es ist ein virtuelles Dateisystem und verbraucht als solches keinen Platz auf Ihrer Festplatte. Es stellt einen einfachen Weg dar Systeminformationen abzufragen, zumal die meisten Dateien in diesem System lesbar sind (naja, mit etwas Übung). Viele Programme sammeln Informationen von Dateien aus /proc, formatieren diese Informationen nach ihren Wünschen und bilden sie ab. Dies trifft auf alle Programme zu, die Informationen über Prozesse wiedergeben. Einige von diesen haben Sie bereits kennengelernt (top, ps und andere). /proc stellt auch viele Informationen über Ihre Hardware bereit. Viele Programme die Ihnen Informationen darüber zur Verfügung stellen sind nur textbasierte oder grafische Schnittstellen, die proc-Dateien aufbereiten.

Es gibt ein besonderes Unterverzeichnis: /proc/sys. Dieses ermöglicht die Darstellung und Veränderung von Kern-Parametern im laufenden Betrieb.

6.1. Informationen über Prozesse

Im Verzeichnis /proc finden Sie viele Verzeichnisse, die lediglich mit Nummern bezeichnet sind. Diese Verzeichnisse enthalten sämtliche Informationen über alle gegenwärtig auf dem System laufenden Prozesse:

$ ls -d /proc/[0-9]*
/proc/1/    /proc/302/  /proc/451/  /proc/496/  /proc/556/  /proc/633/
/proc/127/  /proc/317/  /proc/452/  /proc/497/  /proc/557/  /proc/718/
/proc/2/    /proc/339/  /proc/453/  /proc/5/    /proc/558/  /proc/755/
/proc/250/  /proc/385/  /proc/454/  /proc/501/  /proc/559/  /proc/760/
/proc/260/  /proc/4/    /proc/455/  /proc/504/  /proc/565/  /proc/761/
/proc/275/  /proc/402/  /proc/463/  /proc/505/  /proc/569/  /proc/769/
/proc/290/  /proc/433/  /proc/487/  /proc/509/  /proc/594/  /proc/774/
/proc/3/    /proc/450/  /proc/491/  /proc/554/  /proc/595/

Als Benutzer können Sie (logischerweise) lediglich Auskünfte über Ihre eigenen Prozesse einholen. Melden Sie sich also als root an und schauen Sie beispielsweise, welche Informationen über den Prozess 127 erhältlich sind:

$ su
Password:
$ cd /proc/127
$ ls -l
total 0
-r--r--r--    1 root     root       0 Dez 14 19:53 cmdline
lrwx------    1 root     root       0 Dez 14 19:53 cwd -> //
-r--------    1 root     root       0 Dez 14 19:53 environ
lrwx------    1 root     root       0 Dez 14 19:53 exe -> /usr/sbin/apmd*
dr-x------    2 root     root       0 Dez 14 19:53 fd/
pr--r--r--    1 root     root       0 Dez 14 19:53 maps|
-rw-------    1 root     root       0 Dez 14 19:53 mem
lrwx------    1 root     root       0 Dez 14 19:53 root -> //
-r--r--r--    1 root     root       0 Dez 14 19:53 stat
-r--r--r--    1 root     root       0 Dez 14 19:53 statm
-r--r--r--    1 root     root       0 Dez 14 19:53 status
$

Jedes Verzeichnis enthält die selben Einträge. Es folgt eine kurze Beschreibung einiger:

Wenn Sie den Inhalt des Verzeichnisses fd auflisten, erhalten Sie dies:

$ ls -l fd
total 0
lrwx------    1 root     root           64 Dez 16 22:04 0 -> /dev/console
l-wx------    1 root     root           64 Dez 16 22:04 1 -> pipe:[128]
l-wx------    1 root     root           64 Dez 16 22:04 2 -> pipe:[129]
l-wx------    1 root     root           64 Dez 16 22:04 21 -> pipe:[130]
lrwx------    1 root     root           64 Dez 16 22:04 3 -> /dev/apm_bios
lr-x------    1 root     root           64 Dez 16 22:04 7 -> pipe:[130]
lrwx------    1 root     root           64 Dez 16 22:04 9 -> /dev/console
$

Dies ist die Liste der vom Prozess geöffneten Dateideskriptoren. Jeder geöffnete Deskriptor wird durch einen symbolischen Verweis, dessen Name die Deskriptor-Nummer ist, bezeichnet. Die Bezeichnung verweist auf die von diesem Deskriptor geöffnete Datei.[1] Achten Sie auf die Berechtigungen der Symbolischen Verweise: hier ist der einzige Platz, an dem sie wirklich Sinn machen, da sie die Berechtigungen aufzeigen, mit der die dem Deskriptor zugehörige Datei geöffnet wurde.

Fußnoten

[1]

Wenn Sie sich an die Sektion Ein- und Ausgabeumleitung erinnern, wissen Sie, für was die Deskriptoren 0, 1 und 2 stehen.


Tux on Star from MandrakeSoft Linux ist ein eingetragenes Warenzeichen von Linus Torvalds. Alle anderen Warenzeichen und Copyrights sind das Eigentum ihrer Inhaber.
Sofern nichts anderes Angaben ist, unterliegen die Inhalte der Seiten sowie alle Bilder dem Copyright von MandrakeSoft S.A. und MandrakeSoft Inc. 2000.
http://www.linux-mandrake.com/