Linux: So melden Sie sich ab, starten neu und fahren herunter

Um die aktuelle Shell in Linux zu beenden, können Sie exit verwenden; um das System neu zu starten, verwenden Sie sudo systemctl reboot; und zum Ausschalten verwenden Sie sudo systemctl poweroff. Das Abmelden betrifft nur die aktuelle Sitzung, während Neustart und Herunterfahren auch andere Benutzer und Dienste auf dem Server betreffen.

Vor der Ausführung prüfen

Die Neustart- und Herunterfahrungsbeispiele in diesem Artikel basieren auf Linux mit systemd. Sofort ausgeführte Befehle können ungesicherte Arbeiten und laufende Dienste beeinträchtigen, daher speichern Sie Ihre Arbeit, informieren Sie andere Benutzer und führen Sie sie während der Wartungszeiten aus. Auf Servern überprüfen Sie Backups und die Auswirkungen auf Dienste.

Wenn Sie über SSH verbunden sind, werden die Befehle auf dem Server ausgeführt, mit dem Sie verbunden sind, nicht auf Ihrem PC. Die folgenden Befehle helfen, das Ziel zu überprüfen.

hostname
date
who

hostname zeigt den aktuellen Hostnamen an, date zeigt die aktuelle Zeit und Zeitzone des Servers an, und who zeigt eine Liste von Benutzern, die in den Anmeldeprotokollen angezeigt werden. Sie können den Server nicht allein anhand des Namens vollständig identifizieren, überprüfen Sie daher auch die Informationen des Verwaltungstools. Remote-Server trennen SSH-Verbindungen während des Neustarts, und nach dem Herunterfahren kann es keine direkte Möglichkeit geben, sie einzuschalten. Überprüfen Sie daher im Voraus die Konsole oder den Pfad zur Energieverwaltung.

Ausloggen aus der aktuellen Shell

Um die aktuelle Shell zu verlassen, führen Sie folgenden Befehl aus.

exit

Wenn sie in der letzten Shell einer SSH-Sitzung ausgeführt wird, schließt sie normalerweise die Remote-Verbindung. Wenn Sie sich in einer verschachtelten Shell befinden, kehren Sie zuerst zur äußeren Shell zurück. logout kann beim Beenden einer Login-Shell verwendet werden, funktioniert jedoch möglicherweise nicht in einer typischen Non-Login-Shell. Abmelden fährt das System selbst nicht herunter, und ob laufende Aufgaben fortgesetzt werden, hängt von den Einstellungen der Sitzung und der Aufgabe ab.

Sofort neu starten oder herunterfahren

Auf einem systemd-System fordert der folgende Befehl einen Neustart an. Dienste beginnen unmittelbar nach der Ausführung mit dem Stoppen, daher sollte das Ziel zuerst überprüft werden.

sudo systemctl reboot

Um das System herunterzufahren und die Stromversorgung auszuschalten, verwenden Sie den folgenden Befehl.

sudo systemctl poweroff

Administrative Rechte können je nach Umgebung sudo oder eine separate Authentifizierung erfordern. Der Stromstatus und die Methode zum Neustarten von virtuellen Maschinen oder Cloud-Servern können je nach den Richtlinien der Verwaltungsplattform variieren. Nach dem Neustart erneut verbinden und überprüfen, dass die notwendigen Dienste ordnungsgemäß funktionieren. halt, das das System stoppt, und poweroff, das es ausschaltet, haben nicht die gleiche Bedeutung, daher wählen Sie den Befehl, der Ihrem Zweck entspricht.

Neustarts oder Herunterfahren planen und abbrechen

Sie können Operationen mit shutdown planen. Der folgende Befehl plant einen Neustart in 10 Minuten.

sudo shutdown -r +10

-r ist Neustart, +10 ist 10 Minuten ab der aktuellen Zeit. Um den Strom 10 Minuten später auszuschalten, verwenden Sie -P.

sudo shutdown -P +10

Sie können auch eine bestimmte Zeit mit HH:MM im 24-Stunden-Format angeben. Zum Beispiel, um einen Neustart um 23:30 Serverzeit zu planen, führen Sie Folgendes aus.

sudo shutdown -r 23:30

Überprüfen Sie vor dem Ausführen die Serverzeit und die Zeitzone und stellen Sie sicher, dass die gewünschte Zeit noch nicht vergangen ist. Je nach Implementierung und Version kann die Handhabung bereits vergangener Zeiten unterschiedlich sein, und einige Versionen können das Herunterfahren sofort starten. Die Eingabe eines geplanten Befehls beeinflusst das System, führen Sie ihn daher nicht auf einem Produktionsserver nur zum Testen aus.

Um ein geplantes Herunterfahren, das noch nicht begonnen hat, abzubrechen, führen Sie den folgenden Befehl aus.

sudo shutdown -c

Der Abbruch betrifft ausstehende Systemabschaltungen und können einem anderen Administrator gehören, daher bitte zuerst prüfen. Dies ist kein Befehl, um einen sofortigen Neustart oder eine bereits gestartete Abschaltung rückgängig zu machen. In einigen neueren Versionen von systemd können Sie ausstehende Abschaltungen mit shutdown --show anzeigen, aber einige Versionen haben diese Option möglicherweise nicht. Für detailliertes Verhalten prüfen Sie die man shutdown und systemd-Abschaltungsdokumentation Ihres Systems.

Nur Benachrichtigungen senden und Fehlerbehebung

Das shutdown -k von systemd sendet Benachrichtigungen an angemeldete Benutzer, ohne tatsächlich herunterzufahren oder neu zu starten. Zum Beispiel sendet der folgende Befehl eine Nachricht mit der Zeit.

sudo shutdown -k +10 "Maintenance notice"

Die Art und Weise, wie Benachrichtigungen empfangen werden, kann je nach Benutzersitzungen und Systemeinstellungen variieren, daher sollten wichtige Arbeitsankündigungen auch über separate Kanäle übermittelt werden. -k ist kein tatsächlicher geplanter Shutdown.

  • Berechtigungsfehler: Überprüfen Sie die sudo-Berechtigungen und die Authentifizierungsrichtlinie des Systems.
  • Befehl oder Option unterscheidet sich: Da sich das Verhalten je nach Distribution und Initialisierungssystem unterscheiden kann, überprüfen Sie man shutdown und man systemctl.
  • Verbindung nach dem Neustart fehlgeschlagen: Warten Sie lange genug und überprüfen Sie dann den Stromstatus, das Netzwerk, SSH und den Status der wichtigen Dienste über die Verwaltungskonsole.