Ich lerne CentOS / RHEL und beschäftige mich derzeit mit Prozessmanagement.
Das RHCSA-Buch, das ich lese, beschreibt, kill 1234
wie man SIGQUIT sendet. Ich dachte immer, dass der Befehl kill, ohne einen Schalter für den Signaltyp hinzuzufügen, standardmäßig auf gesetzt sein solltekill -15
SIGTERM ist kill -15
und SIGKILL ist kill -9
, richtig?
Verwendet CentOS / RHEL eine etwas andere Methode kill -15
oder habe ich mich gerade geirrt?
BEARBEITEN: kill -l
gibt SIGQUIT als an kill -3
und scheint mit der Verwendung der Tastatur zum Beenden eines Prozesses verbunden zu sein. man 7 signal
gibt auch an, dass SIGQUIT ist kill -3
, daher kann ich nur davon ausgehen, dass mein Buch falsch ist und besagt, dass SIGQUIT die kill -15
Standardeinstellung ist.
quelle
Es gibt zwei Tötungsbefehle, einen in procps und einen in shell. Beide verwenden standardmäßig SIGTERM. Für procps kill geben die Befehle help, manual page und kill source (skill.c, Zeile 724 im neuesten Hauptzweig) alle SIGTERM an, was gut zu wissen ist, dass es konsistent ist.
Eine Sache, an die Sie sich bei Signalen erinnern sollten, ist, wenn Sie anfangen, den "üblichen Haufen" zu überwinden und Systeme verwenden, die sich ein wenig von einem x86-Linux-System unterscheiden. procps (und wahrscheinlich viele andere Programme) backen die Zahlen zur Kompilierungszeit ein (im Wesentlichen, was auch immer die Include-Datei enthält, suchen Sie nach signum.h).
Keine Sorge für SIGTERM, wie @ilkkachu sagt, es ist in POSIX.
quelle