[LINUX] Zusammenfassung der Unterschiede zwischen systemctl start, stop, restart, try-restart, reload, reload-or-restart, reload-or-try-restart

Der Unterbefehl von "systemctl" bezieht sich nur auf das Neustarten des Dienstes beim Starten / Stoppen, und obwohl es seltsamerweise viele vorbereitete Unterbefehle gibt, gibt es viele Punkte, die ich nicht verstehe, weil die wichtigen Unterbefehle unzureichend sind und die Benennung und das Verhalten heikel sind Ich habe es zusammengefasst.

Was Sie tun möchten → Entsprechende Befehlsübersichtstabelle

Was du machen willst COMMAND active inactive
Ich möchte es starten systemctl start xxx nichts tun(exit 0) start (Starting,Started)
ich will aufhören systemctl stop xxx stop (Stopping,Stoped) nichts tun(exit 0)
Starten Sie neu, wenn Sie laufen, starten Sie, wenn Sie gestoppt sind systemctl restart xxx restart (Stopping,Starting,Started) start (Starting,Started)
Starten Sie neu, wenn Sie ausgeführt werden, und tun Sie nichts, wenn Sie gestoppt sind systemctl try-restart xxx restart (Stopping,Starting,Started) nichts tun(exit 0)
Bei Ausführung neu laden(Unterstützung für das Nachladen der Einheit erforderlich), Fehler wenn gestoppt systemctl reload xxx reload (Reloaded) Error(echo "Job for xxx.service invalid." >&2; exit 1)
Bei Ausführung neu laden(Starten Sie neu, wenn das Gerät das Neuladen nicht unterstützt), Start wenn gestoppt systemctl reload-or-restart xxx reload (Reloaded) start (Starting,Started)
Bei Ausführung neu laden(Starten Sie neu, wenn das Gerät das Neuladen nicht unterstützt), Fehler wenn gestoppt systemctl reload-or-try-restart xxx reload (Reloaded) Error(echo "Job for xxx.service invalid." >&2; exit 1)
Bei Ausführung neu laden(Starten Sie neu, wenn das Gerät das Neuladen nicht unterstützt)Nichts tun, wenn gestoppt if systemctl -q is-active xxx; then systemctl reload-or-restart xxx; fi reload (Reloaded) nichts tun(exit 0)

»Ich möchte dich preisen

Ich möchte, dass der Unterbefehl "Legacy-Alias", der in Bash-Completion angezeigt wird, aus den Completion-Kandidaten verschwindet.

Die folgenden Unterbefehle existierten nach der Konvention einiger Distributionen, aber wenn sie in systemctl zusammengestellt werden, werden die folgenden entsprechenden Aliase intern als "Legacy-Alias" definiert und können akzeptiert und verwendet werden, aber grundsätzlich Er benutzt es nicht.

Diese Unterbefehle erscheinen nicht in der Liste von "systemctl --help", aber sie werden so behandelt, als wären sie ein Mensch. Grundsätzlich brauche ich es nicht, aber bei Vervollständigung wie "Bash-Vervollständigung" wird es normalerweise als Unterbefehl in der Liste angezeigt. Aus diesem Grund gibt es auch kostenlos viele dienstbezogene Unterbefehle und es ist schwer zu verstehen, aber "Was ist der Unterschied zwischen Cond Reload und Reload? Hilfe ... Ich habe es herausgefunden, als ich den Mann locker ansah! Es ist ein kostenloser Alias! Zeit zum Überprüfen! Ich denke, es hat die Ressourcen von Ingenieuren auf der ganzen Welt verschwendet, und ich möchte, dass sie verwirrt und verärgert sind und von der ergänzenden Liste verschwinden. Gibt es nicht einen Fall, in dem Sie es wagen, dies zu ergänzen und zu nutzen?

Guchi

Nein, ich weiß, dass es im Vergleich zu verschiedenen Dingen in der Vergangenheit viele gute Mechanismen gibt, aber ich bin überrascht, dass die Unterbefehlsgruppe des Dienstbetriebssystems, die ich am häufigsten verwende, subtil ist. Vielleicht ist es mir egal, weil ich status / start / stop / restart / reload nur verwende, wenn ich es nur normal benutze. Wenn Sie eine ansible-Konfigurationsdatei erstellen, wenn Sie reload verwenden oder ordnungsgemäß starten möchten, während Sie den Status im Voraus überprüfen, oder wenn Sie den idealen Status anhand des Endstatus angemessen beurteilen möchten, wird der Unterbefehlsname logisch organisiert und gespeichert. Ich kann es nicht tun und das Verhalten ist schlampig, also mache ich mir Sorgen und schreibe am Ende, während ich jedes Mal das Dokument und das tatsächliche Verhalten überprüfe.

Recommended Posts

Zusammenfassung der Unterschiede zwischen systemctl start, stop, restart, try-restart, reload, reload-or-restart, reload-or-try-restart
Zusammenfassung der Unterschiede zwischen PHP und Python
Eine grobe Zusammenfassung der Unterschiede zwischen Windows und Linux
Zusammenfassung der Unterschiede zwischen Ruby on Rails und Django ~ Basics ~
Zusammenfassung der Unterschiede zwischen Python und PHP (Vergleichstabelle der Hauptelemente)