Einführung
Um Ihr System voll nutzen zu können, müssen Sie beobachten, was vor sich geht, und die Auslastung des Systems überwachen.
Linux ist keine perfekte Welt, natürlich nutzt es Ihre Ressourcen besser, aber wie bei jedem anderen Betriebssystem können einige Ressourcen außer Kontrolle geraten oder nicht mehr reagieren oder viele Ressourcen verbrauchen oder mehr als sie benötigen.
Aus diesem Grund sind wir hier, um darüber zu sprechen, wie Sie Maßnahmen ergreifen und die ungehorsamen Aufgaben beenden können, wenn die normalen Wege nicht hilfreich sind.
Es gibt viele Möglichkeiten, Ihr System zu steuern, und eine davon, die unser heutiges Thema ist, ist KILL Befehl
Was ist der KILL-Befehl?
Der Kill-Befehl ist ein integriertes Dienstprogramm in Linux, mit dem Sie Prozesse manuell beenden können. Es sendet ein Signal an den Auflegeprozess, um ihn zu beenden.
Es gibt verschiedene Arten von Signalen, die der KILL-Befehl an den Prozess senden kann,
Um sie anzuzeigen, führen Sie den folgenden Befehl aus:
Sie können die Signale in den Befehlsoptionen auf drei Arten angeben:
● Nummer verwenden
kill -15 or kill -s 15
● Eingabe des SIG-Präfixes
kill -SIGTERM or kill -s SIGTERM
● Ohne SIG-Präfix
kill -TERM or kill -s TERM
Wenn Sie kein Signal angeben, TERM (-15) Signal ist das Standardsignal.
So finden Sie einen Prozess
Bevor Sie den Prozess beenden, müssen Sie seine PID (Prozess-ID) identifizieren,
dazu gibt es verschiedene Möglichkeiten
PS-Befehl
Sie können die eindeutige Prozessnummer finden, indem Sie den PS-Befehl im PID-Abschnitt
verwendenWeitere Informationen zum PS-Befehl und seinen Optionen finden Sie in diesem Artikel
Verwendung des PS-Befehls
TOP-Befehl
Finden Sie PID auch im TOP-Befehl unter dem ersten Abschnitt
Weitere Informationen zum PS-Befehl und seinen Optionen finden Sie in diesem Artikel
Verwendung des TOP-Befehls
PIDOF und PGREP
Wenn Sie nach Namen suchen möchten, um die entsprechende ID zu finden, können Sie diese beiden Befehle verwenden.
PIDOF ist unkompliziert, Sie müssen den vollständigen Namen des Prozesses kennen, um alle PIDs für genau diesen Namen zu erhalten
Wenn Sie den vollständigen Namen des Prozesses nicht kennen, können Sie hier PGREP verwenden um die PID zu erhalten
Prozesse, die Sie nicht KILLEN können
Wenn Sie ein normaler Benutzer sind, können Sie nur Ihre eigenen Prozesse beenden, der Root-Benutzer kann jedoch alle Prozesse beenden. Verwenden Sie sudo vor dem Befehl, als Superuser zu agieren
Wenn Sie einen Prozess beenden, ein TERM Das Signal wird standardmäßig gesendet, wie wir bereits erwähnt haben. Dies ermöglicht dem Programm, einige Codes auszuführen, bevor es beendet wird, wodurch das Programm die Möglichkeit hat, ordnungsgemäß zu beenden. Wenn Sie den Prozess zwangsweise beenden möchten, verwenden Sie SEGKILL stattdessen
Der Linux-Kernel speichert einige Informationen über die beendeten Prozesse, damit der übergeordnete Prozess den Status der untergeordneten Prozesse ermitteln kann und ob er von selbst beendet oder getötet wurde. Diese Zombies Prozesse erscheinen in der Prozessliste und Sie können sie nicht KILLEN
Wenn ein Prozess Eingabe- oder Ausgabeoperationen durchführt, befindet er sich in einem unterbrechungsfreien Ruhezustand und Sie können diese Prozesse auch nicht beenden
Sie können Prozesse im Zustand Zombie unterscheiden oder unterbrechungsfreier Schlaf indem Sie oben auf den Zustandsabschnitt schauen und Z sehen oder D bzw..
Jetzt beenden wir den Prozess
Nachdem Sie die PID gefunden haben, führen Sie einfach den folgenden Befehl aus
Sie können entweder das TERM-Signal in den Optionen identifizieren oder ein anderes Signal an das Programm senden
KILL mit Namen
Wenn Sie den Namen des Prozesses kennen, können Sie ihn mit PKILL nach Namen beenden Befehl
dies beendet jeden Prozess, der Chrom enthält darin
Außerdem können Sie den Signaltyp identifizieren
KILL alle Prozesse
Sie können alle Prozesse beenden, die denselben Namen haben, ohne die PID suchen zu müssen,
eine der einfachsten Möglichkeiten, einen Prozess zu beenden
es ist ähnlich wie pkill Befehl und Sie können auch verschiedene Arten von Signalen senden
Mit dem –o können Sie einen länger laufenden Prozess beenden Möglichkeit
killall -o 30m process_name
oder einen Prozess beenden, der für weniger als einen Zeitraum wie folgt ausgeführt wurde
killall -y 10s process_name
Beachten Sie, dass m in 30m steht für Minuten und s in 10s ist für Sekunden.
Schlussfolgerung
Wie bei allen anderen Betriebssystemen kann Linux einige hängende oder nicht reagierende Programme aufweisen, und daher benötigen Sie den KILL-Befehl, um die Prozesse zu beenden, die die Ressourcen des Systems verbrauchen.
Verwenden Sie man, um weitere Informationen zu erhalten für den Kill-Befehl und siehe die offizielle Dokumentation.