Linux-Systemkontrolle dank Prozessmanagement

Wenn man mit Hilfe von Tools wie ps und top Prozesse überwacht, muss man außerdem wissen, wie diese zu verwalten sind. Das kann man mit Befehlen wie kill, killall und renice tun.

kill versendet Signale an laufende Prozesse. Die offensichtlichste Anwendung ist das Stoppen der Programmausführung. Zunächst benötigt man die PID eines laufenden Programms (zum Beispiel mit Hilfe des Befehls ps aux), dann kann man den Befehl folgendermaßen einsetzen:

$ kill 125

Unter normalen Umständen wird damit der Prozess 125 abgebrochen. Dabei ist noch zu beachten, dass man Inhaber des Prozesses oder Root sein muss um ihn abbrechen zu können. Mitunter reagiert aber ein Prozess nicht auf so einen einfachen kill-Befehl. Dann sollte man folgendes ausprobieren:

$ kill -9 125

Wenn sich der Prozess aufgehängt hat und nicht normal reagiert, kann man versuchen, ihn mit dem Bitschalter -9 zu beenden, wie in obigem Beispiel gezeigt wird. Anstelle des sigterm, das von einem normalen kill-Befehl gesendet wird, sendet -9 ein sigkill (womit die Beendigung des Programms erzwungen wird). Es können auch andere Signale gesendet werden um es zu beenden oder möglicherweise neu zu starten. Einen Überblick erhält man durch den Befehl kill -l.

Der Befehl killall nimmt andere Argumente entgegen, auch wenn er kill sehr ähnlich ist. Anstatt eine PID hinzufügen, kann man einen Programmnamen angeben. Dabei werden sämtliche Prozesse mit dem angegebenen Programmnamen gestoppt. Das bezieht sich auf die eigenen Programme oder, sofern man selber der Root-Benutzer ist, auf alle. Mit dem Befehl killall tcpdump werden also sämtliche Bereiche des Programms tcpdump gekillt. Das ist besonders hilfreich, wenn viele Prozesse unter einem einzigen Namen laufen.

Beim Abbrechen von Prozessen muss man genau darauf achten, welche Prozesse abgebrochen werden, insbesondere wenn man selbst der Root-Benutzer ist. Wird der falsche Prozess beendet, kann das zur Beendigung der Sitzung oder sogar zum Systemstopp führen. Deshalb sollte man sich mit den standardmäßig laufenden Programmen und den von diesen beanspruchten Ressourcen vertraut machen. Wenn man weiß, was normalerweise läuft, ist das eine unschätzbare Hilfe bei der Isolierung von Systemproblemen.

Schon weiter oben wurde erwähnt, dass man auch die Priorität eines laufenden Prozesses verändern kann. Das geschieht mit dem Befehl renice. Die Veränderung der Priorität bedeutet für das Betriebssystem, dass dem bestimmten Prozess mehr oder weniger CPU-Zeit zur Verfügung gestellt wird. Die Bewertung der „Niceness“ eines Prozesses erfolgt mit einer Skala von -20 bis 20, wobei -20 die höchste Priorität darstellt. Um die Priorität des httpd-Prozesses 125 herabzusetzen, könnte man folgendes tun:

$ renice +20 125

Das kann auch zwischendurch zur Schonung der Systemressourcen erfolgen. Das System kann das natürlich auch selbständig ausführen und anzeigen, wenn ein Programm mehr Ressourcen beansprucht, als es eigentlich sollte.

Schnellere Problemlösung
Die Möglichkeit zur Überwachung und Steuerung von Prozessen auf einem Linux-System ist von großer Bedeutung. Programme wie ps, top, kill und renice ermöglichen zu sehen, was ein Prozess gerade macht, und ihn zu steuern. Je mehr man über jeden einzelnen ablaufenden Prozess weiß, desto leichter ist es, Probleme herauszufinden, wenn sie sich einschleichen. In einem System treten gewöhnlich Probleme wie Langsamkeit oder Instabilität aus bestimmten Gründen auf. Mit diesen Tools hat man mehr Möglichkeiten zur Beseitigung der Ursachen an der Hand.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Funeral Scams: Neue perfide Online-Betrugsmasche auf Facebook

Britische Bestattungsunternehmen haben bereits reagiert und weisen darauf hin, dass ihre Beerdigungen nicht gelivestreamt werden.

6 Tagen ago

Builtforbest – Individuelles Gesundheitscoaching für nachhaltige Transformation auf Basis von Blut- und Genanalysen

Builtforbest setzt neue Maßstäbe im ganzheitlichen Gesundheitscoaching mit einem innovativen, wissenschaftlich fundierten Ansatz, der auf…

7 Tagen ago

Apple stellt iPhone 16 und iPhone 16 Pro vor

Der neue Apple-Prozessor A18 basiert auf einem 3-Nanometer-Verfahren. Apple verspricht mehr Leistung und eine höhere…

7 Tagen ago

Neue Version der Mac-Malware Atomic Stealer im Umlauf

Die stiehlt Daten aus weiteren Browsers. Zudem steigt die Zahl der Browser-Erweiterungen, die Atomic Stealer…

1 Woche ago

Aktualisiertes Arsenal von APT41: DodgeBox und Moonwalk

Der bis dato unbekannte Loader DodgeBox zeigt auffällige Ähnlichkeiten mit StealthVector, warnen Zscaler-Experten.

1 Woche ago

OpenAI meldet eine Million zahlende Business-Nutzer für ChatGPT

In fünf Monaten kommen rund 400.000 neue Nutzer hinzu. Die meisten zahlenden Nutzer hat ChatGPT…

1 Woche ago