1. Herunterfahren
Der Shutdown-Befehl fährt das System sicher herunter. Einige Benutzer fahren Linux herunter, indem sie die Stromversorgung direkt unterbrechen, was sehr gefährlich ist. Da sich Linux von Windows unterscheidet, laufen viele Prozesse im Hintergrund, sodass ein erzwungenes Herunterfahren dazu führen kann, dass die Daten des Prozesses verloren gehen, das System in einen instabilen Zustand versetzt wird und in einigen Systemen sogar die Hardware beschädigt wird.
Wenn Sie vor dem Herunterfahren des Systems den Befehl zum Herunterfahren verwenden, benachrichtigt der Systemadministrator alle angemeldeten Benutzer darüber, dass das System heruntergefahren wird.
Und der Anmeldebefehl wird eingefroren, d. h. neue Benutzer können sich nicht mehr anmelden. Es ist möglich, direkt herunterzufahren oder das Herunterfahren um einen bestimmten Zeitraum zu verzögern, und es ist auch möglich, neu zu starten. Dies wird dadurch bestimmt, dass alle Prozesse vom System gesendete Signale empfangen. Dies gibt Programmen wie vi Zeit, das aktuell bearbeitete Dokument zu speichern, und Programme wie Mail und News können normal beendet werden usw.
Shutdown führt seine Aufgabe aus, indem es ein Signal [signal] an das Init-Programm sendet und es auffordert, den Runlevel zu ändern.
Runlevel 0 wird verwendet, um das System herunterzufahren [anzuhalten], Runlevel 6 wird verwendet, um das System erneut zu aktivieren [neu zu starten] und Runlevel 1 wird verwendet, um das System in einen Zustand zu versetzen, in dem Verwaltungsarbeiten ausgeführt werden können ist die Standardeinstellung „Ja“, vorausgesetzt es gibt keinen Parameter „-h“ oder „-r“ zum Herunterfahren. Um zu verstehen, welche Aktionen während des Herunterfahrens (Halt) oder Neustarts (Neustart) durchgeführt wurden, können Sie die Runlevel-bezogenen Informationen in dieser Datei /etc/inittab einsehen.
Beschreibung des Shutdown-Parameters:
[-t] Teilen Sie init mit, wie lange das Herunterfahren dauern soll, bevor zu anderen Runlevels gewechselt wird.
[-r] Starten Sie den Rechner neu.
[-k] fährt nicht wirklich herunter, sondern sendet nur ein Warnsignal an jeden Login [login].
[-h] Schalten Sie den Strom nach dem Herunterfahren aus [Halt].
[-n] Keine Initialisierung nötig, sondern selbst herunterfahren. Von der Verwendung dieser Option wird abgeraten, und die Konsequenzen dieser Option entsprechen nicht immer Ihren Erwartungen.
[-c] Aktuellen Prozess abbrechen Brechen Sie den aktuell ausgeführten Herunterfahrvorgang ab. Natürlich hat diese Option keinen Zeitparameter, aber Sie können eine Nachricht zur Erläuterung eingeben, und diese Nachricht wird an jeden Benutzer gesendet.
[-f] Ignoriert fsck beim Neustart des Rechners [reboot].
[-F] Erzwinge fsck beim Neustart des Rechners [reboot].
[-time] Stellen Sie die Zeit vor dem Herunterfahren ein [shutdown].
2. Halt ist der einfachste Befehl zum Herunterfahren.
Tatsächlich besteht halt darin, Shutdown -h aufzurufen. Wenn halt ausgeführt wird, wird der Anwendungsprozess beendet, der Synchronisierungssystemaufruf wird ausgeführt und der Kernel wird gestoppt, nachdem der Schreibvorgang des Dateisystems abgeschlossen ist.
Parameterbeschreibung:
[-n] Synchronisierung des Systemaufrufs verhindern. Wird nach dem Patchen der Root-Partition mit fsck verwendet, um zu verhindern, dass der Kernel die gepatchte Partition mit einer alten Version des Superblocks überschreibt . Superblock.
[-w] ist kein echter Neustart oder Herunterfahren, es schreibt nur wtmp-Datensätze [/var/log/wtmp].
[-d] Keine Wtmp-Datensätze schreiben [in Option [-n] enthalten].
[-f] Herunterfahren oder Neustart erzwingen, ohne Shutdown aufzurufen.
[-i] Schalten Sie vor dem Herunterfahren (oder Neustarten) alle Netzwerkschnittstellen aus.
[-p] Diese Option ist die Standardoption. Rufen Sie beim Herunterfahren einfach poweroff auf.
3. Neustart
Der Arbeitsvorgang des Neustarts ist fast derselbe wie beim Anhalten, aber er bewirkt einen Neustart des Hosts, während beim Anhalten das Herunterfahren erfolgt. Seine Parameter ähneln halt.
4. init
init ist der Vorfahre aller Prozesse und seine Prozessnummer ist immer 1, sodass das Senden des TERM-Signals an init alle Benutzerprozesse, Daemon-Prozesse usw. beendet. Das Herunterfahren nutzt diesen Mechanismus. init definiert 8 Runlevel (Runlevel), init 0 ist heruntergefahren, init 1 ist neu. Es kann eine lange Diskussion über init geben, daher werde ich hier nicht näher darauf eingehen. Es gibt auch den Befehl telinit, der die Ausführungsebene von init ändern kann. Beispielsweise kann telinit -iS dazu führen, dass das System in den Einzelbenutzermodus wechselt, und die Informationen und Wartezeiten beim Herunterfahren können nicht abgerufen werden.
Ausführlichere Erklärungen zu mehreren Befehlen zum Herunterfahren von Linux und verwandte Artikel finden Sie auf der chinesischen PHP-Website!