In diesem Artikel geht es um Prozesse und es werden einige Terminalbefehle vorgestellt, um die Prozesse zu verwalten…
Der jobs-Befehl:
Der Terminalbefehl “jobs“ dient dazu die laufenden Prozesse anzuzeigen. Wird er einfach so im Terminal abgefeuert passiert normalerweise gar nichts. Das liegt ganz einfach daran, dass kein Prozess im Terminal ausgeführt wird. Um den jobs-Befehl in Aktion zu sehen, sollte also erst ein Prozess im Terminal gestartet werden.
- sleep 10 &
- jobs
Vordergrundprozesse und Hintergrundprozesse:
- fg
- bg
Zwei sehr einfache Terminalbefehle für Vordergrundprozesse (foreground=fg) und Hintergrundprozesse (bg=background). Auch hier müssen natürlich auch Prozesse im Terminal laufen – sonst sieht man keine Ausgaben im Terminal. Prozessinformationen mit ps-Befehl
- ps
Wird der ps-Befehl einfach so im Terminal ausgeführt, werden zwei Prozesse angezeigt – die bash und ps selber.
Experiment mit Firefox:
Jetzt öffnen wir einmal den Webbrowser Firefox. Eigentlich sollte Firefox auch als Prozess im Terminal angezeigt werden – ist ja auch ein Prozess. Ein Prozess wird ja als “laufendes Programm“ beschrieben. Firefox ist zwar auch ein laufendes Programm aber wird vom ps-Befehl noch nicht angezeigt, weil es eben kein Prozess im Terminal ist. Werfen wir nun einen Blick auf einige weitere Varianten des ps-Befehls mit Optionen…
- ps -a (zeigt nur den ps-Prozess selbst an)
- ps -l (zeigt noch einige Zusatzinformationen an)
- ps -x (zeigt auch Prozesse ohne Terminal)
Der pstree-Befehl:
- pstree
Mit diesem Befehl wird ein Prozessbaum angezeigt. Angezeigt werden auch die Kindprozesse abhängig von ihren Elternprozessen. Als Elternprozess wird beispielsweise “systemd“ angezeigt und als Kindprozess “lightdm“.
Praxisbeispiele für „kill“ und „killall“:
Per kill-Befehl können Prozesse beendet werden. Dazu wird beispielsweise ein PID – eine Prozess-ID- übergeben und ein entsprechendes Signal geschickt…
- kill firefox
Geht so also nicht. Es müssen Prozess oder Jobbezeichnungen angegeben werden. Mit Terminalbefehl ermitteln wir also zuerst die PID für den geöffneten Firefox.
- ps -x
- kill 2664
Wird die passende PID mit dem kill-Befehl geschickt, dann klappt es auch mit dem Beenden des Webbrowsers… Natürlich gibt es noch einen anderen Weg.
- killall firefox