Zum Hauptinhalt springen

So stoppen Sie einen Prozess auf einem Linux-Betriebssystem: Schritt für Schritt Anleitung

Linux ist ein beliebtes Open-Source-Betriebssystem, das in verschiedenen Bereichen, einschließlich Servern, Pcs und eingebetteten Systemen, weit verbreitet ist. Die Fähigkeit, mehrere Prozesse gleichzeitig auszuführen, ist einer der Hauptvorteile von Linux. Manchmal treten jedoch Situationen auf, in denen ein bestimmter Prozess im System angehalten oder beendet werden muss. In diesem Artikel werden wir uns eine schrittweise Anleitung ansehen, wie Sie einen Prozess auf einem Linux-Betriebssystem stoppen können.

Bevor Sie beginnen, ist es wichtig zu verstehen, dass Prozesse unter Linux eindeutige IDs haben, die als PID (Process ID) bezeichnet werden. Um einen Prozess zu beenden, müssen Sie dessen PID kennen, die mit dem Befehl abgerufen werden kann ps aux zeigt eine Liste aller auf dem Computer ausgeführten Prozesse an.

Es gibt mehrere Möglichkeiten, den Prozess unter Linux zu stoppen. Eine davon ist die Verwendung eines Befehls kill, die ein Signal an den Prozess sendet, um es zu beenden. Dazu müssen Sie den Befehl ausführen kill PID wobei PID die ID des zu stoppenden Prozesses ist. Zusätzlich können Sie ein bestimmtes Signal mit einem Flag angeben -s. Zum Beispiel der Befehl kill -s SIGTERM PID sendet ein SIGTERM-Signal, das ein Standard-Stoppsignal des Prozesses ist. Wenn der Prozess nicht anhält, können Sie auch versuchen, den Befehl zu verwenden kill -s SIGKILL PID, die ein SIGKILL-Signal sendet und den Prozess sofort beendet.

Verwenden des Befehls kill kann gefährlich sein, besonders wenn Sie nicht genau wissen, welcher Prozess gestoppt werden muss. Seien Sie bei der Verwendung dieses Befehls vorsichtig und stellen Sie sicher, dass Sie die richtige PID genau angeben.

Überprüfen aktiver Prozesse unter Linux

Unter dem Linux-Betriebssystem gibt es mehrere Möglichkeiten, die Liste der aktiven Prozesse zu überprüfen. Dies kann nützlich sein, wenn Sie einen bestimmten Prozess finden, seine ID (PID) herausfinden oder einfach sicherstellen müssen, dass die Prozesse einwandfrei funktionieren.

Eine der häufigsten Methoden ist die Verwendung eines Befehls top. Mit diesem Befehl können Sie Informationen zu Prozessen in Echtzeit anzeigen. Geben Sie dazu einfach den Befehl ein top im Terminal und drücken Sie die Eingabetaste. Sie sehen eine Tabelle mit Informationen zu jedem Prozess, einschließlich seiner PID, Ressourcennutzung und anderen Parametern.

Wenn Sie an einem bestimmten Prozess interessiert sind, können Sie den Befehl verwenden ps. Im Gegensatz zum Team top, Befehl ps zeigt nur die Prozessliste an, ohne weitere Informationen. Geben Sie einfach den Befehl ein ps im Terminal wird eine Liste aller aktiven Prozesse angezeigt.

Wenn Sie detailliertere Informationen über einen Prozess erhalten möchten, einschließlich des übergeordneten Prozesses (PPID), der indizierten Prozess-ID (PGID) und der Ressourcennutzung, können Sie den Befehl verwenden ps aux. Es gibt eine erweiterte Tabelle mit Informationen über alle aktiven Prozesse im System aus.

Befehl zum Anzeigen der Prozessliste

Sie können den Befehl ps verwenden, um die Liste der Prozesse auf einem Linux-Betriebssystem anzuzeigen. Dieser Befehl gibt Informationen zu aktuellen Prozessen aus, z. B. Prozess-IDs (PID), CPU-Auslastung, Speichernutzung und andere Merkmale.

Es gibt mehrere Optionen, die Sie mit dem Befehl ps verwenden können, um verschiedene Arten von Prozesslisten abzurufen. Einige von ihnen umfassen:

  • ps -e oder ps -A - zeigt alle Prozesse an
  • ps -f - Zeigt das vollständige Ausgabeformat an, einschließlich übergeordneter Prozessinformationen (PPID), CPU-Auslastung usw.
  • ps -l - Zeigt das lange Ausgabeformat an, einschließlich Informationen über die CPU-Auslastung und den Arbeitsspeicher jedes Prozesses

Beispiel für die Verwendung des Befehls ps :

ps -e

Dieser Befehl listet alle Prozesse auf, die unter dem Linux-Betriebssystem ausgeführt werden.

Identifizieren der Prozess-ID

Um die Prozess-ID zu finden, können Sie den Befehl ps (process status) verwenden. Es listet die aktiven Prozesse im System mit ihren IDs auf.

Beispiel für die Verwendung des Befehls ps :

Das TeamDie Beschreibung
ps -e Listet alle aktiven Prozesse auf
ps -ef Listet alle aktiven Prozesse mit detaillierten Informationen auf
ps -e / grep "Prozessname" Sucht nach einem Prozess mit dem angegebenen Namen

Wenn Sie nur die ID eines einzelnen Prozesses finden möchten, können Sie den Befehl pgrep (process grep) verwenden. Zum Beispiel:

Wenn Sie einen der obigen Befehle ausführen, sehen Sie eine Liste der Prozesse mit deren IDs (PID). Dies wird Ihnen helfen, den gewünschten Prozess zu bestimmen.

Verwenden des Befehls "ps"

Der Befehl "ps" dient zum Anzeigen von Informationen über aktuelle Prozesse im Linux-Betriebssystem. Damit können Sie eine Liste der laufenden Prozesse, deren IDs (PID), übergeordnete Prozesse, die Verwendung von Systemressourcen und vieles mehr abrufen.

Um mit dem Befehl "ps" zu arbeiten, müssen Sie ein Terminal öffnen und den folgenden Befehl eingeben:

Im Folgenden sind einige allgemeine Optionen aufgeführt, die Sie mit dem Befehl "ps" verwenden können:

-e: zeigt Informationen über alle Prozesse auf dem System an (einschließlich der Prozesse anderer Benutzer).

-f: gibt das vollständige Ausgabeformat mit Informationen zu PID, PPID, PGID, SID, TTY, Status, CPU-Auslastung und anderen Parametern aus.

-u: zeigt nur Informationen über Prozesse an, die vom aktuellen Benutzer ausgeführt werden.

-h: blendet den Ausgabeheader aus.

-p [PID]: gibt nur Informationen über einen bestimmten Prozess mit der angegebenen ID (PID) aus.

Um beispielsweise Informationen zu allen Prozessen auf einem System mit vollständiger Formatierung anzuzeigen, führen Sie einen Befehl aus:

Nachdem Sie den Befehl ausgeführt haben, sehen Sie eine Prozessliste mit Informationen zu jedem Prozess, einschließlich seiner PID, des übergeordneten Prozesses, der CPU-Auslastung und anderer Parameter.

Der Befehl "ps" ist ein leistungsfähiges Werkzeug für die Arbeit mit Prozessen auf einem Linux-Betriebssystem. Es ermöglicht Ihnen, detaillierte Informationen zu den Prozessen zu erhalten und verschiedene Optionen zum Anpassen der Ausgabe zu verwenden.

Beenden des Prozesses mit dem Befehl "kill"

Um einen Prozess mit dem Befehl "kill" zu beenden, müssen Sie die PID - Prozess-ID kennen. Eine PID ist eine eindeutige numerische ID, die jedem Prozess unter Linux zugewiesen wird. Normalerweise kann die PID mit dem Befehl "ps" oder "top" ermittelt werden.

Das Format des Befehls "kill" lautet wie folgt:

Mit den Optionen des Befehls "kill" können Sie verschiedene Signale angeben, die an den Prozess gesendet werden. Zum Beispiel wird ein Abschlusssignal (SIGTERM) an den Prozess gesendet, um ihn ordnungsgemäß zu stoppen. Sie können die Option -15 oder -TERM verwenden, um dieses Signal zu senden.

Beispiel für die Verwendung des Befehls "kill" zum Beenden eines Prozesses mit einer bekannten PID:

Wenn der Prozess erfolgreich beendet wird, wird kein Rückgabewert zurückgegeben. Andernfalls gibt der Befehl "kill" eine Fehlermeldung aus.

Neben dem Beendigungssignal gibt es auch andere Signale, die mit dem Befehl "kill" verwendet werden können. Zum Beispiel wird ein Unterbrechungssignal (SIGINT) an den Prozess gesendet, wenn Sie Strg+ C drücken. Sie können die Option -2 oder -INT verwenden, um dieses Signal zu senden.

Das Beenden eines Prozesses mit dem Befehl "kill" ist eine der einfachsten Methoden, um Prozesse auf einem Linux-Betriebssystem zu verwalten. Bei der Verwendung dieses Befehls ist jedoch Vorsicht geboten, insbesondere bei Verwendung der Option -9 oder -KILL , die dem Prozess eine sofortige erzwungene Beendigung sendet, ohne dass er die erforderlichen abschließenden Vorgänge ausführen kann. Diese Option sollte nur in extremen Fällen verwendet werden, wenn andere Signale nicht ausgelöst werden.

Syntax für den Befehl "kill"

Der Befehl "kill" dient zum Beenden von Prozessen auf einem Linux-Betriebssystem. Es kann verwendet werden, um Prozesse zu stoppen, die nicht auf andere Signale reagieren oder um ein bestimmtes Signal an einen Prozess zu senden.

Die Syntax für den Befehl "kill" lautet wie folgt:

kill [Signal] [PID]

  • kill - der Name des Teams.
  • [Signal] - die Nummer oder der Name des Signals, das an den Prozess gesendet werden soll. Einige der am häufigsten verwendeten Signale sind:
    • 9 oder KILL - ein "Kill" -Signal, das den Vorgang sofort beendet. Dieses Signal wird standardmäßig gesendet, wenn kein anderes angegeben ist.
    • 15 oder TERM - ein Beendigungssignal, das es dem Prozess ermöglicht, die Arbeit ordnungsgemäß zu beenden und die erforderlichen Schritte vor dem Beenden auszuführen.

    Beispiele für die Verwendung des Befehls "kill":

    kill 12345 - sendet ein "kill" -Signal an den Prozess mit der ID 12345.

    kill -15 67890 - sendet ein "Abschluss" -Signal an den Prozess mit der ID 67890.

    Hintergrundprozesse beenden

    Im Linux-Betriebssystem werden Hintergrundprozesse als Prozesse bezeichnet, die im Hintergrund ausgeführt werden, dh ohne an ein bestimmtes Terminal gebunden zu sein. Häufig werden Hintergrundprozesse mit langen Vorgängen oder Aufgaben gestartet, die im Hintergrund ausgeführt werden können, während der Benutzer die Arbeit im Terminal oder in einer grafischen Umgebung fortsetzt.

    Um einen Hintergrundprozess zu beenden, verwenden Sie den kill-Befehl, mit dem Sie ein Beendigungssignal an den Prozess über seine ID (PID) senden können. Aber bevor Sie einen Prozess abschließen, müssen Sie seine PID kennen.

    Es gibt mehrere Möglichkeiten, die PID eines Hintergrundprozesses zu kennen. Eine der einfachsten Möglichkeiten besteht darin, den ps-Befehl mit der aux-Option zu verwenden. Um beispielsweise die PID eines Hintergrundprozesses mit dem Namen my_process herauszufinden, führen Sie einen Befehl aus:

    ps aux | grep my_process

    Wenn Sie diesen Befehl ausführen, wird eine Liste der Prozesse angezeigt, die dem angegebenen Namen entsprechen, einschließlich ihrer PID.

    Nachdem Sie die PID des Hintergrundprozesses erkannt haben, können Sie mit dem Abschluss beginnen. Dazu müssen Sie den Befehl ausführen:

    kill PID

    wobei PID die Prozess-ID ist. Nach dem Ausführen dieses Befehls wird der Prozess beendet.

    Sie können auch den Befehl killall verwenden, mit dem Sie alle Prozesse mit dem angegebenen Namen beenden können. Wenn Sie beispielsweise alle Hintergrundprozesse mit dem Namen my_process beenden möchten, führen Sie einen Befehl aus:

    killall my_process

    Wenn Sie den Befehl killall verwenden, können nicht nur Hintergrundprozesse beendet werden, sondern auch andere Prozesse mit dem angegebenen Namen, einschließlich der Hauptprozesse, also seien Sie vorsichtig, wenn Sie ihn verwenden.

    In diesem Abschnitt haben Sie gelernt, wie Sie einen Hintergrundprozess auf einem Linux-Betriebssystem mit dem Befehl kill oder killall beenden können. Denken Sie daran, dass das Beenden des Prozesses zum Verlust nicht gespeicherter Daten führen kann. Stellen Sie daher sicher, dass Sie alle erforderlichen Änderungen gespeichert haben, bevor Sie ein Signal senden, um den Prozess zu beenden.

    Befehl "killall", um alle Prozesse mit dem angegebenen Namen zu beenden

    Der Befehl "killall" im Linux-Betriebssystem wird verwendet, um alle Prozesse mit dem angegebenen Namen zu beenden. Es ermöglicht Ihnen, alle Prozesse mit dem gewünschten Namen schnell und effizient zu beenden, ohne dass zusätzliche Aktionen oder Informationen vom Benutzer erforderlich sind.

    Um den Befehl "killall" zu verwenden, müssen Sie den Namen des Prozesses angeben, den Sie beenden möchten. Der Befehl sucht nach allen Prozessen mit dem angegebenen Namen und stoppt die Ausführung.

    Beispiel für die Verwendung des Befehls "killall":

    Das TeamDie Beschreibung
    killall prozessnameStoppt alle Prozesse mit dem angegebenen Namen

    Wenn beispielsweise mehrere Prozesse mit dem Namen "example" auf dem System ausgeführt werden, stoppt der Befehl "killall example" alle diese Prozesse.

    Es ist wichtig zu beachten, dass der Befehl "killall" dazu führen kann, dass andere Prozesse mit ähnlichem oder identischem Namen beendet werden. Daher sollten Sie vor der Verwendung dieses Befehls sicher sein, dass er nur auf die gewünschten Prozesse angewendet wird. Es wird empfohlen, den Befehl "kill" mit der Prozess-ID (PID) zu verwenden, um die Prozesse, die beendet werden sollen, genauer zu bestimmen.

    Beachten Sie auch, dass für die Verwendung des Befehls "killall" Root-Rechte erforderlich sind, da dieser sich auf alle Prozesse im System auswirkt.

    Abschließend ist der Befehl "killall" ein leistungsfähiges Werkzeug, um alle Prozesse mit einem bestimmten Namen auf einem Linux-Betriebssystem zu stoppen. Es ermöglicht Ihnen, die Ausführung aller gefundenen Prozesse schnell und effizient zu beenden, wodurch die Prozessverwaltung im System erleichtert wird.