A. Willemer Wie werde ich UNIX-Guru
| | I ANWENDUNG |
Know-How für Unix/Linux-User: Einführung, Shell, Befehle, Hilfe, Arbeit mit Dateien, Editoren, Reguläre Ausdrücke, nützliche Tools, Hardware.
|
II ADMINISTRATION |
Tools, Systemstart, Benutzer verwalten, Hardware konfigurieren, Software installieren, Datensicherung, Tuning, Kernel
|
III NETZWERK |
Client/Server Systeme, TCP/IP, Routing, IPv6, Internet-Dienste, DHCP, Webserver, Firewalls
|
IV DAS X-WINDOW SYSTEM |
Die grafische Oberfläche von UNIX einrichten und nutzen
|
V PROGRAMMIERUNG VON SHELLSKRIPTEN |
Automatisieren von Tasks durch Shell-Skripte.
|
VI PERL |
Interpreter, Syntax, Variablen, Steuerung, Funktionen, UNIX-Aufrufe, GUIs mit Tk
|
VII PROGRAMMIERWERKZEUGE |
C-Compiler, Analyse-Tools, CVS, yacc, diff
|
VIII UNIX-SYSTEMAUFRUFE |
UNIX-Befehle in eigenen Programmen nutzen
|
IX LITERATUR |
Weiterführende Literatur zu UNIX und LINUX
|
| |
Der Befehl ps zeigt eine Prozessliste. Ohne Parameter zeigt er die
Liste der
eigenen Prozesse der aktuellen Sitzung. Das sind im Allgemeinen die Shell und
ps selbst. Wurden in der Sitzung Prozesse in den Hintergrund
gestellt, die
noch laufen, erscheinen diese auch. Interessant an dieser Liste ist die PID.
Das ist die
Prozess-ID, die für jeden Prozess eindeutig ist. Verwendet man für ps den Parameter -l,
dann sieht man diverse Informationen mehr über die Prozesse. Dabei gibt es
eine PPID (Parent Process ID), die die PID des Elternprozesses ist.
Der Vaterprozess ist derjenige Prozess, von dem ein Prozess gestartet wurde.
Man kann erkennen, dass der
Vater des ps die Shell ist. Es gibt einen Baum von Prozessen, der mit dem
init-Prozess beginnt. Dieser hat immer die PID 1.
gaston> ps -l
UID PID PPID PRI NI ADDR SZ WCHAN TTY TIME CMD
501 1292 1291 69 0 - 711 wait4 pts/0 00:00:00 bash
501 3578 1292 69 0 - 931 do_sel pts/0 00:00:03 vi
501 3598 3597 70 0 - 712 wait4 pts/2 00:00:00 bash
501 3634 3598 69 0 - 1984 do_pol pts/2 00:00:02 ggv
501 3658 3634 69 0 - 2770 do_sel pts/2 00:00:03 gs
501 3807 3598 77 0 - 749 - pts/2 00:00:00 ps
gaston>
In der Prozessliste ist zweimal die Shell bash zu erkennen, einmal
mit der PID 1292, das andere Mal mit der PID 3598. Die erste Sitzung ist der
Vater eines vi . Die zweite Sitzung ist einmal der Vater von
ggv , der selbst wieder Vater von gs ist, und dann der Vater
des ps . Man kann daraus schließen, dass ggv vor dem Aufruf
des ps im Hintergrund gestartet wurde.
Man kann noch sehr viel mehr Details erkennen, wie die CPU-Zeit,
die der
Prozess bereits verbraucht hat, das Kommando, das ausgeführt wurde,
von welchem Terminal der Prozess gestartet wurde und einige Dinge mehr.
Dies ist der Grund, warum man unter UNIX niemals ein Passwort oder etwas
Geheimes als Kommando absetzen darf. Durch ps kann jeder andere Benutzer
der Maschine den vollständigen Befehl lesen.
Neben den eigenen Prozessen kann man auch die Prozesse anderer Benutzer
sehen. Dazu gibt man -alx oder -elf an. Je nach System funktioniert der eine
oder der andere Parameter. Danach rauschen alle Prozesse des Systems auf dem
Bildschirms vorüber, was man durch eine Pipe nach more natürlich
verhindern kann. Wichtig zu
wissen ist, dass man auf einem UNIX-System jede Aktivität beobachten kann.
Dadurch sind ein Fehlverhalten des Systems sowie
Amok laufende Prozesse und Prozesse unbekannter Herkunft leicht identifizierbar.
Mit der Option -u wie User wird zusätzlich auch noch der
Eigentümer des jeweiligen Prozesse angezeigt.
Die Option -w (w wie wrap) bricht die einzelnen Zeilen der Prozessliste am
Zeilenende um. Das normale Verhalten von ps ist es, die Ausgabe am
rechten Bildschirmrand abzuschneiden. So verliert man aber leicht die Informationen, die über den rechten Rand hinausragen.
| |
|
|
Ihre Meinung? |
|
|
|
|
| |
| |
Shopping |
|
Versandkostenfrei bestellen in Deutschland und Österreich Info
|
|
| |
| |
|