Inhaltsverzeichnis
/proc DateisystemZusammenfassung
In diesem Kapitel werden verschiedenen Programme und Mechanismen vorgestellt, mit denen Sie den Zustand Ihres Systems untersuchen können. Weiterhin werden einige für die tägliche Arbeit nützliche Utilities mit ihren wichtigsten Optionen beschrieben.
Für die vorgestellten Kommandos werden jeweils beispielhafte
Ausgaben dargestellt. Darin ist die erste Zeile das Kommando
selbst (nach einem Dollarzeichen als Prompt).
Auslassungen werden durch [...] angedeutet
und lange Zeilen, soweit notwendig, umgebrochen.
Umbrüche langer Zeilen sind durch einen Backslash (\)
angedeutet:
$ command -x -y
output line 1
output line 2
output line 3 is annoyingly long, so long that \
we have to break it
output line 3
[...]
output line 98
output line 99
Damit möglichst viele Utilities erwähnt werden können, ist die Darstellung
kurz gehalten. Zu allen Kommandos finden Sie mehr Information in den
jeweiligen Manualpages. Die meisten Kommandos verstehen auch die Option
--help, damit erhält man eine knappe Auflistung der
möglichen Optionen.
Um die Liste alles Dateien anzuzeigen, die der Prozess mit der Prozess-ID
PID geöffnet hält, benutzt man die Option
-p. Beispielsweise, um alle von der laufenden Shell
benutzten Dateien anzuzeigen:
$ lsof -p $$ COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME zsh 4694 jj cwd DIR 0,18 144 25487368 /suse/jj/t (totan:/real-home/jj) zsh 4694 jj rtd DIR 3,2 608 2 / zsh 4694 jj txt REG 3,2 441296 20414 /bin/zsh zsh 4694 jj mem REG 3,2 104484 10882 /lib/ld-2.3.3.so zsh 4694 jj mem REG 3,2 11648 20610 /usr/lib/zsh/4.2.0/zsh/rlimits.so [...] zsh 4694 jj mem REG 3,2 13647 10891 /lib/libdl.so.2 zsh 4694 jj mem REG 3,2 88036 10894 /lib/libnsl.so.1 zsh 4694 jj mem REG 3,2 316410 147725 /lib/libncurses.so.5.4 zsh 4694 jj mem REG 3,2 170563 10909 /lib/tls/libm.so.6 zsh 4694 jj mem REG 3,2 1349081 10908 /lib/tls/libc.so.6 zsh 4694 jj mem REG 3,2 56 12410 /usr/lib/locale/de_DE.utf8/LC_TELEPHONE [...] zsh 4694 jj mem REG 3,2 59 14393 /usr/lib/locale/en_US/LC_NUMERIC zsh 4694 jj mem REG 3,2 178476 14565 /usr/lib/locale/en_US/LC_CTYPE zsh 4694 jj mem REG 3,2 56444 20598 /usr/lib/zsh/4.2.0/zsh/computil.so zsh 4694 jj 0u CHR 136,48 50 /dev/pts/48 zsh 4694 jj 1u CHR 136,48 50 /dev/pts/48 zsh 4694 jj 2u CHR 136,48 50 /dev/pts/48 zsh 4694 jj 10u CHR 136,48 50 /dev/pts/48
Es wurde die spezielle Shell-Variable $$ benutzt, die als
Wert die Prozess-ID der Shell hat.
Ohne Option listet lsof alle momentan geöffneten Dateien, in der Regel sind dies recht viele. Das es oft tausende von geöffneten Dateien gibt, ist eine Liste aller Dateien selten brauchbar. Die Liste aller Dateien kann jedoch mit Suchfunktionen kombiniert werden, um sinnvolle Listen zu generieren. Das folgende Beispiel zeigt eine Liste aller verwendeten Character-Devices:
$ lsof | grep CHR sshd 4685 root mem CHR 1,5 45833 /dev/zero sshd 4685 root mem CHR 1,5 45833 /dev/zero sshd 4693 jj mem CHR 1,5 45833 /dev/zero sshd 4693 jj mem CHR 1,5 45833 /dev/zero zsh 4694 jj 0u CHR 136,48 50 /dev/pts/48 zsh 4694 jj 1u CHR 136,48 50 /dev/pts/48 zsh 4694 jj 2u CHR 136,48 50 /dev/pts/48 zsh 4694 jj 10u CHR 136,48 50 /dev/pts/48 X 6476 root mem CHR 1,1 38042 /dev/mem lsof 13478 jj 0u CHR 136,48 50 /dev/pts/48 lsof 13478 jj 2u CHR 136,48 50 /dev/pts/48 grep 13480 jj 1u CHR 136,48 50 /dev/pts/48 grep 13480 jj 2u CHR 136,48 50 /dev/pts/48