KILLALL
Section: Dienstprogramme für Benutzer (1)
Updated: 2021-01-11
Page Index
BEZEICHNUNG
killall - Prozesse anhand des Namens töten
ÜBERSICHT
killall [
-Z,
--context pattern] [
-e,
--exact] [
-g,
--process-group] [
-i,
--interactive] [
-n,
--ns PID]
[
-o,
--older-than TIME] [
-q,
--quiet] [
-r,
--regexp]
[
-s,
--signal SIGNAL,
-SIGNAL] [
-u,
--user user]
[
-v,
--verbose] [
-w,
--wait] [
-y,
--younger-than
TIME] [
-I,
--ignore-case] [
-V,
--version] [
--]
name
...
killall -l
killall -V,
--version
BESCHREIBUNG
killall sendet ein Signal an alle Prozesse, die mit dem angegebenen
Befehl gestartet wurden. Wenn kein Signalname angegeben ist, wird das Signal
SIGTERM gesendet.
Signale können entweder als Name (zum Beispiel -HUP oder -SIGHUP), als
Nummer (zum Beispiel -1) oder durch die Option -s angegeben werden.
Falls der Befehlsname kein regulärer Ausdruck ist (Option -r) und einen
Schrägstrich (/) enthält, werden Prozesse, welche diese bestimmte Datei
ausführen, zum Töten vorgesehen, unabhängig von deren Namen.
killall gibt den Code 0 zurück, falls für jeden der aufgelisteten Befehle
mindestens ein Prozess getötet wurde, oder es waren keine Befehle
aufgelistet und mindestens ein Prozess entsprach den mit -u und -Z
angegebenen Suchkriterien. killall gibt anderenfalls einen von Null
verschiedenen Wert zurück.
Ein killall-Prozess tötet sich niemals selbst (aber könnte von anderen
killall-Prozessen getötet werden).
OPTIONEN
- -e, --exact
-
verlangt eine exakte Übereinstimmung für sehr lange Namen. Falls der
Befehlsname länger als 15 Zeichen ist, könnte der vollständige Name nicht
verfügbar sein (das heißt, er ist ausgelagert). In diesem Fall tötet
killall alles, was mit den ersten 15 Zeichen übereinstimmt. Mit -e
werden solche Einträge übersprungen. killall gibt eine Meldung für jeden
übersprungenen Eintrag aus, falls -v zusätzlich zu -e angegeben wird.
- -I, --ignore-case
-
ignoriert bei der Treffersuche die Groß- oder Kleinschreibung.
- -g, --process-group
-
tötet die Prozessgruppe, zu welcher der Prozess gehört. Das Tötungssignal
wird nur einmal pro Gruppe gesendet, selbst wenn in der Prozessgruppe
mehrere Prozesse gefunden wurden.
- -i, --interactive
-
bittet vor dem Töten interaktiv um Bestätigung.
- -l, --list
-
listet alle bekannten Signalnamen auf.
- -n, --ns
-
prüft anhand des PID-Namensraums der angegebenen PID auf
Übereinstimmungen. Standardmäßig wird die Überprüfung auf alle Namensräume
bezogen.
- -o, --older-than
-
prüft nur Prozesse auf Übereinstimmungen, die älter als die angegebene Zeit
sind, also vorher gestartet wurden. Die Zeit wird als Fließkommazahl mit
angehängter Einheit angegeben. Die Einheiten sind s, m, h, d, w, M, y für
Sekunden, Minuten, Stunden, Tage, Wochen, Monate beziehungsweise Jahre.
- -q, --quiet
-
beschwert sich nicht, falls keine Prozesse getötet wurden.
- -r, --regexp
-
interpretiert das Prozessnamensmuster als erweiterten regulären
POSIX-Ausdruck gemäß regex(3).
- -s, --signal, -SIGNAL
-
sendet dieses Signal anstelle von SIGTERM.
- -u, --user
-
tötet nur Prozesse, die dem angegebenen Benutzer gehören. Befehlsnamen sind
optional.
- -v, --verbose
-
meldet, wenn das Signal erfolgreich gesendet wurde.
- -V, --version
-
zeigt Versionsinformationen an.
- -w, --wait
-
wartet auf die Beendigung aller getöteten Prozesse. killall prüft einmal
pro Sekunde, ob irgendeiner der getöteten Prozesse noch existiert und
liefert nur ein Ergebnis, falls keine Prozesse mehr verblieben
sind. Beachten Sie, dass killall unbegrenzt warten könnte, falls das
Signal ignoriert wurde, unwirksam war oder der Prozess in einen
Zombie-Zustand übergegangen ist.
- -y, --younger-than
-
prüft nur Prozesse auf Übereinstimmungen, die neuer als die angegebene Zeit
sind, also später gestartet wurden. Die Zeit wird als Fließkommazahl mit
angehängter Einheit angegeben. Die Einheiten sind s, m, h, d, w, M, y für
Sekunden, Minuten, Stunden, Tage, Wochen, Monate beziehungsweise Jahre.
- -Z, --context
-
Specify security context: kill only processes having security context that
match with given extended regular expression pattern. Must precede other
arguments on the command line. Command names are optional.
DATEIEN
- /proc
-
Ort des /proc-Dateisystems
BEKANNTE FEHLER
Das Töten anhand des Dateinamens funktioniert nur für ausführbare Programme,
die während der Ausführung offen gehalten werden, das heißt, unsaubere
ausführbare Programme können auf diese Weise nicht getötet werden.
Seien Sie vorsichtig, wenn Sie killall Name eingeben, weil dies auf
Nicht-Linux-Systemen nicht die gewünschte Wirkung haben könnte, insbesondere
dann, wenn Sie es als privilegierter Benutzer ausführen.
killall -w erkennt in aufeinanderfolgenden Übrprüfungen nicht, ob ein
Prozess beendet ist und durch einen Prozess mit der gleichen PID ersetzt
wurde.
Falls Prozesse ihren Namen ändern, könnte killall diese nicht korrekt
erkennen.
Für killall gibt es eine Begrenzung für die Namen, die in der
Befehlszeile angegeben werden können. Dies ist die Größe einer
vorzeichenlosen Ganzzahl, multipliziert mit 8. Für die meisten
32-Bit-Systeme ist 32 die Begrenzung, analog dazu ist sie bei
64-Bit-Systemen üblicherweise auf 64 begrenzt.
SIEHE AUCH
kill(1),
fuser(1),
pgrep(1),
pidof(1),
pkill(1),
ps(1),
kill(2),
regex(3).