GNU/Linux >> LINUX-Kenntnisse >  >> Linux

kill-Befehlsbeispiele in Linux

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.

Verwenden der PID-Nummer zum Beenden von Prozessen

Sie können den Befehl kill mit der Prozesstabelle verwenden, um Prozesse zu beenden. Durch die Eingabe von kill gefolgt von der PID können Sie bestimmte Prozesse beenden. Die Prozesstabelle kann jedoch Prozesse anzeigen, die Ihnen nicht gehören. Als Benutzer können Sie den Kill-Befehl nur mit Prozessen verwenden, die Ihnen gehören. Als Root können Sie jeden Prozess beenden.

Kill-Signale

Es gibt viele Möglichkeiten, einen Prozess zu beenden, von denen jede einem Signal zugeordnet ist. Dieses Signal bestimmt, wie der Prozess beendet wird. Einige Signale sind in bestimmten Situationen geeigneter als andere. Beispielsweise möchten Sie möglicherweise einen Prozess ordnungsgemäß beenden und ihm Zeit geben, letzte Aktivitäten zu bereinigen. Einige Prozesse ignorieren dieses Signal jedoch oder werden einfach nicht in angemessener Zeit beendet. Dafür müssen Sie möglicherweise ein aggressiveres Signal ausgeben.

Es gibt viele verschiedene Kill-Signale. Jedes Signal hat einen Namen und einen oder mehrere entsprechende Zahlenwerte; Sie können beide mit dem Kill-Befehl verwenden. Einige der häufigsten Signale werden im Folgenden beschrieben:

1. SIGINT (2)
– Unterbricht den Prozess vom Terminal.
– Kann abgefangen oder ignoriert werden.
– Dasselbe wie das Drücken von Strg+C

2. SIGKILL (9)
– Tötet den Prozess sofort.
– Kann nicht gefangen oder ignoriert werden.
– Letzter Ausweg.

3. SIGTERM (15)
– Beendet den Prozess.
– Kann abgefangen oder ignoriert werden.
– Vom Programm und nicht vom Terminal gesendet.

4. SIGSTOP (17, 19, 23)
– Vorgang anhalten.
– Kann nicht abgefangen oder ignoriert werden.
– Vom Programm und nicht vom Terminal gesendet.

5. SIGSTP (18, 20, 24)
– Hält den Prozess vom Terminal aus an.
– Kann abgefangen oder ignoriert werden.
– Gleich wie das Drücken von Strg+Z.

Demo von Tötungssignalen

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

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


Linux
  1. Wie beendet man einen Prozess unter Linux mit dem Befehl?

  2. 7 Beispiele für Linux-df-Befehle

  3. rm-Befehlsbeispiele unter Linux

  4. kill-Befehlsbeispiele in Linux

  5. ps-Befehlsbeispiele in Linux

wc Linux-Befehl mit Beispielen

Kill-Befehl unter Linux

Killall-Befehl in Linux mit Beispielen

5 schnelle Möglichkeiten, einen Prozess in Linux zu beenden

Wie man einen Prozess unter Linux beendet

id-Befehlsbeispiele in Linux