Prozeßverwaltung 1

Montag 24. Juni 2019 von Torsten

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

Dieser Beitrag wurde erstellt am Montag 24. Juni 2019 um 08:00 und abgelegt unter Allgemein. Kommentare zu diesen Eintrag im RSS 2.0 Feed. Sie können zum Ende springen und ein Kommentar hinterlassen. Pings sind im Augenblick nicht erlaubt.

Kommentar schreiben