Verschiedene Befehle werden verwendet, um Signale an Prozesse zu senden, um sie zu beenden oder zu „beenden“. Dies ist erforderlich, wenn ein Prozess nicht mehr reagiert (hängt), Systeminstabilität verursacht oder die Kontrolle über eine Datei, die Sie ändern möchten, nicht aufgibt.
Der Befehl „kill“ sendet ein bestimmtes Signal oder standardmäßig das Beendigungssignal an einen oder mehrere Prozesse. Als Argument muss die PID angegeben werden.
Im Folgenden finden Sie einige Beispiele für die Implementierung von Kill-Signalen. So beenden Sie einen Prozess mit der ID 921 ordnungsgemäß:
# kill 15 921
Andernfalls den Prozess sofort beenden:
# kill 9 921
Alternativ können Sie den Prozess auch anhalten, anstatt ihn vollständig zu entfernen:
# kill 17 921
Wenn beim Ausführen des Kill-Befehls der folgende Fehler auftritt:
kill: command not found
Sie können versuchen, das folgende Paket gemäß Ihrer Wahl der Distribution zu installieren:
Betriebssystemverteilung | Befehl |
---|---|
Debian | apt-get install procps |
Ubuntu | apt-get install procps |
Alpin | apk fügt procps hinzu |
Arch Linux | pacman -S procps-ng |
Kali-Linux | apt-get install procps |
CentOS | yum installiere procps-ng |
Fedora | dnf install procps-ng |
Raspbian | apt-get install procps |
Kill-Befehlsbeispiele
1. Um die Signalliste zu erhalten:
# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGEMT 8) SIGFPE 9) SIGKILL 10) SIGBUS 11) SIGSEGV 12) SIGSYS 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGURG 17) SIGSTOP 18) SIGTSTP 19) SIGCONT 20) SIGCHLD 21) SIGTTIN 22) SIGTTOU 23) SIGIO 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGINFO 30) SIGUSR1 31) SIGUSR2
2. Um ein bestimmtes Signal zu senden:
# kill -s 9
3. So geben Sie die Liste der Prozesse zum Beenden an:
# kill 1234 2345 3456
4. Beenden Sie ein Programm mit dem Standardsignal SIGTERM (Beenden):
# kill process_id
5. Beenden Sie einen Hintergrundjob:
# kill %job_id
6. Beenden Sie ein Programm mit dem Signal SIGHUP (Auflegen). Viele Daemons laden neu, anstatt sich zu beenden:
# kill -1|HUP process_id
7. Beende ein Programm unter Verwendung des Signals SIGINT (Unterbrechung). Dies wird normalerweise dadurch initiiert, dass der Benutzer `Strg + C` drückt:
# kill -2|INT process_id
8. Signalisieren Sie dem Betriebssystem, ein Programm sofort zu beenden (das keine Chance hat, das Signal zu erfassen):
# kill -9|KILL process_id
9. Signalisieren Sie dem Betriebssystem, ein Programm anzuhalten, bis ein SIGCONT-Signal ("Fortfahren") empfangen wird:
# kill -17|STOP process_id
10. Senden Sie ein `SIGUSR1`-Signal an alle Prozesse mit der angegebenen GID (Gruppen-ID):
# kill -SIGUSR1 -group_id