Harting Development

Ubuntu-Herunterfahren: Der Befehl und seine Optionen

Lukas Fuchs vor 7 Monaten in  Betriebssysteme 3 Minuten Lesedauer

Verwendung des Befehls shutdown

Zum Herunterfahren deines Ubuntu-Systems kannst du den Befehl shutdown verwenden. Dieser Befehl bietet eine Reihe von Optionen, mit denen du den Abschaltzeitpunkt, Benachrichtigungen und das Verhalten bei angemeldeten Benutzern anpassen kannst.

Syntax

Die allgemeine Syntax für den Befehl shutdown lautet:

sudo shutdown [OPTIONEN] [ZEIT] [NACHRICHT]

Hierbei sind:

  • [OPTIONEN]: Die verschiedenen Optionen, die du zum Anpassen des Herunterfahrens verwenden kannst.
  • [ZEIT]: Der Zeitpunkt, zu dem das System heruntergefahren werden soll, in einem der folgenden Formate:
    • now: Sofortiges Herunterfahren
    • +m: Herunterfahren nach m Minuten
    • hh:mm: Herunterfahren um hh:mm Uhr
  • [NACHRICHT]: Eine optionale Nachricht, die an angemeldete Benutzer gesendet wird.

H3: Optionen für den Zeitpunkt des Herunterfahrens

Du kannst den Zeitpunkt des Herunterfahrens mit den folgenden Optionen angeben:

  • -c: Storniert einen geplanten Shutdown
  • -h: Gibt die Stunde für das Herunterfahren im 24-Stunden-Format an
  • -m: Gibt die Minuten für das Herunterfahren an
  • -t: Gibt den Zeitstempel für das Herunterfahren im Format Epoche-Zeit an (Anzahl der Sekunden seit dem 1. Januar 1970)

Optionen zum Angeben des Abschaltzeitpunkts

Wenn du den Zeitpunkt für das Herunterfahren präzise festlegen möchtest, kannst du dies mit verschiedenen Optionen tun.

Zeitangabe

Verwende die Option -t, um die Abschaltzeit als Minuten ab jetzt anzugeben. Beispielsweise würde sudo shutdown -t 10 das System in 10 Minuten herunterfahren.

Absoluter Zeitpunkt

Du kannst auch einen absoluten Zeitpunkt für das Herunterfahren angeben, indem du -t zusammen mit dem Datum und der Uhrzeit verwendest. Das Format ist JJJJ-MM-TT hh:mm. Beispiel: sudo shutdown -t 2023-03-08 18:00 fährt das System am 8. März 2023 um 18:00 Uhr herunter.

Geschätzter Zeitpunkt

Wenn du die genaue Abschaltzeit nicht weißt, kannst du die Option -r verwenden, um einen geschätzten Zeitpunkt anzugeben. Dies ist nützlich, wenn du ein System zu einer bestimmten Zeit neu starten möchtest. Beispiel: sudo shutdown -r 10:00 würde das System schätzungsweise um 10:00 Uhr neu starten.

Weitere Optionen für den Zeitpunkt

  • -h: Das System wird angehalten, anstatt heruntergefahren.
  • now: Das System wird sofort heruntergefahren.
  • cancel: Ein geplantes Herunterfahren wird abgebrochen.

Optionen zum Senden einer Benachrichtigung

Um sicherzustellen, dass alle angemeldeten Benutzer vor dem Herunterfahren des Systems benachrichtigt werden, kannst du folgende Optionen nutzen:

-w, --wall

Diese Option sendet eine Warnmeldung an alle angemeldeten Benutzer. Die Meldung enthält den Zeitpunkt, zu dem das System heruntergefahren wird.

shutdown -w 15

wallctl

wallctl ist ein Befehlszeilentool zur Verwaltung von Nachrichten, die an alle angemeldeten Benutzer gesendet werden. Du kannst es verwenden, um eine benutzerdefinierte Nachricht zu senden, bevor das System heruntergefahren wird.

wallctl -w "Das System wird in 15 Minuten heruntergefahren."

-m, --message

Diese Option ermöglicht dir, eine benutzerdefinierte Nachricht zusammen mit dem Standard-Warntext zu senden. Dies kann nützlich sein, um zusätzliche Informationen zum Herunterfahren bereitzustellen.

shutdown -w 15 -m "Bitte speichere alle deine Arbeit und melde dich ab, bevor das System heruntergefahren wird."

Benachrichtigung über mehrere Kanäle

Du kannst die Optionen -w und -m kombinieren, um Benachrichtigungen über mehrere Kanäle zu senden. Beispielsweise kannst du Folgendes verwenden, um eine Warnmeldung per Wall-Protokoll und eine benutzerdefinierte Nachricht per E-Mail zu senden:

shutdown -w 15 -m "Das System wird in 15 Minuten heruntergefahren." | mail -s "Server Herunterfahren" [email protected]

Optionen zum Behandeln von angemeldeten Benutzern

Wenn du ein System herunterfährst, ist es wichtig, die angemeldeten Benutzer zu berücksichtigen. Der Befehl shutdown bietet mehrere Optionen, um angemeldete Benutzer zu behandeln und sicherzustellen, dass das Herunterfahren reibungslos verläuft.

-w Flag

Das -w-Flag weist den Befehl shutdown an, eine Warnmeldung an alle angemeldeten Benutzer zu senden. Die Warnmeldung enthält die Uhrzeit, zu der das System heruntergefahren wird, sowie Informationen zu gespeicherten Sitzungen. Dies gibt den Benutzern genügend Zeit, ihre Arbeit zu speichern und sich abzumelden, bevor das System heruntergefahren wird.

Syntax:

shutdown -w [ZEIT] [NACHRICHT]

Beispiel:

shutdown -w +15 "Das System wird in 15 Minuten heruntergefahren. Bitte speicher deine Arbeit und melde dich ab."

-h Flag

Das -h-Flag weist den Befehl shutdown an, das System nach Ablauf der angegebenen Zeit in den Ruhezustand zu versetzen. Dies ist eine nützliche Option, wenn du möchtest, dass das System verfügbar ist, aber Strom spart.

Syntax:

shutdown -h [ZEIT] [NACHRICHT]

Beispiel:

shutdown -h +60 "Das System wird in 60 Minuten in den Ruhezustand versetzt. Bitte speicher deine Arbeit und melde dich ab."

-f Flag

Das -f-Flag weist den Befehl shutdown an, das Herunterfahren ohne Bestätigung fortzusetzen, auch wenn angemeldete Benutzer noch vorhanden sind. Dies kann nützlich sein, wenn du sicherstellen möchtest, dass das System heruntergefahren wird, auch wenn Benutzer nicht reagieren oder ihre Arbeit nicht speicherten.

Syntax:

shutdown -f [ZEIT] [NACHRICHT]

Beispiel:

shutdown -f +15 "Das System wird in 15 Minuten heruntergefahren. Bitte speicher deine Arbeit und melde dich ab. Andernfalls wird das System heruntergefahren, ohne dass gespeicherte Daten erhalten bleiben."

Fazit

Durch Verwendung der Optionen zum Behandeln von angemeldeten Benutzern kannst du sicherstellen, dass das Herunterfahren reibungslos verläuft und angemeldete Benutzer über das bevorstehende Herunterfahren informiert werden. Das -w-Flag sendet eine Warnmeldung, das -h-Flag versetzt das System in den Ruhezustand und das -f-Flag erzwingt das Herunterfahren, unabhängig vom Status der angemeldeten Benutzer.

Fortfahren des Shutdowns nach dem Abmelden

Wenn du möchtest, dass das System nach dem Abmelden aller angemeldeten Benutzer heruntergefahren wird, kannst du die Option -h verwenden.

Herunterfahren nach dem Abmelden ohne Benachrichtigung

Um das System ohne eine Benachrichtigung herunterzufahren, nachdem sich alle Benutzer abgemeldet haben, verwende den folgenden Befehl:

sudo shutdown -h now

Herunterfahren nach dem Abmelden mit Benachrichtigung

Wenn du vor dem Herunterfahren eine Benachrichtigung erhalten möchtest, verwende die Option -w. Gib dann die vollständige Pfadangabe zur Benachrichtigungsdatei an.

sudo shutdown -h -w /tmp/shutdown-notice.txt now

In der Benachrichtigungsdatei kannst du eine benutzerdefinierte Nachricht eingeben, die den Benutzern erklärt, dass das System bald heruntergefahren wird.

Vorteile des Herunterfahrens nach dem Abmelden

Das Herunterfahren des Systems nach dem Abmelden bietet mehrere Vorteile:

  • Benutzer werden benachrichtigt, bevor das System heruntergefahren wird.
  • Anwendungen werden ordnungsgemäß geschlossen.
  • Nicht gespeicherte Daten können gespeichert oder wiederhergestellt werden.
  • Das Abmelden aller Benutzer gewährleistet, dass keine aktiven Sitzungen das Herunterfahren blockieren.

Herunterfahren des Systems sofort

Wenn du dein Ubuntu-System ohne Zeitverzögerung herunterfahren möchtest, kannst du den Befehl shutdown mit der Option -n verwenden. Diese Option weist das System an, sofort herunterzufahren, ohne dass du die Bestätigung abwarten musst.

Verwendung der Option -n

Um dein System sofort herunterzufahren, öffne ein Terminalfenster und führe den folgenden Befehl aus:

sudo shutdown -n now

Beachte, dass du das Passwort deines Administratorkontos eingeben musst, um den Befehl auszuführen.

Wichtige Hinweise

Wenn du das System sofort herunterfährst, werden alle laufenden Programme und Prozesse beendet, ohne dass du die Möglichkeit hast, sie zu speichern. Daher solltest du alle wichtigen Daten sichern, bevor du diese Option verwendest.

Außerdem werden bei Verwendung der Option -n keine Benachrichtigungen an andere angemeldete Benutzer gesendet. Wenn du Benutzer benachrichtigen möchtest, bevor das System heruntergefahren wird, verwende die Optionen -P oder -w, wie in den vorherigen Abschnitten beschrieben.

Einrichten des automatischen Herunterfahrens

Falls du dein System regelmäßig zu einer bestimmten Uhrzeit herunterfahren möchtest, kannst du das automatische Herunterfahren einrichten. Es gibt zwei Möglichkeiten, dies zu tun: den Befehl crontab oder den Dienst systemd.

So verwendest du crontab zum automatischen Herunterfahren

  1. Öffne ein Terminal und gib den folgenden Befehl ein, um den Crontab-Editor zu öffnen:
crontab -e
  1. Füge die folgende Zeile am Ende der Datei hinzu, um dein System um 23:00 Uhr herunterzufahren:
0 23 * * * /sbin/shutdown -h now
  1. Ersetze "23" durch die gewünschte Stunde, wenn du das System zu einer anderen Uhrzeit herunterfahren möchtest.

  2. Speichere und schließe die Datei.

So verwendest du systemd zum automatischen Herunterfahren

  1. Öffne ein Terminal und gib den folgenden Befehl ein, um eine neue Systemd-Einheitendatei zu erstellen:
sudo nano /etc/systemd/system/auto-shutdown.service
  1. Füge den folgenden Inhalt in die Datei ein:
[Unit]
Description=Auto Shutdown Service

[Service]
Type=oneshot
ExecStart=/sbin/shutdown -h now
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target
  1. Speichere und schließe die Datei.

  2. Aktiviere die Einheitendatei mit dem folgenden Befehl:

sudo systemctl enable auto-shutdown.service
  1. Starte die Einheitendatei, um das automatische Herunterfahren einzurichten:
sudo systemctl start auto-shutdown.service

Beheben von Problemen beim automatischen Herunterfahren

Wenn du Probleme beim automatischen Herunterfahren hast, kannst du versuchen, Folgendes zu tun:

  • Überprüfe, ob die Crontab-Einträge korrekt sind.
  • Überprüfe, ob die Systemd-Einheitendatei richtig konfiguriert ist.
  • Stelle sicher, dass der Befehl shutdown ausführbar ist.
  • Überprüfe, ob angemeldete Benutzer ordnungsgemäß abgemeldet werden.
  • Überprüfe, ob es laufende Prozesse gibt, die das Herunterfahren blockieren.

Beheben von Problemen beim Herunterfahren

Wenn du beim Herunterfahren deines Ubuntu-Systems auf Probleme stößt, gibt es einige Schritte, die du zur Fehlerbehebung unternehmen kannst.

Gründe für ein fehlgeschlagenes Herunterfahren

Angemeldete Benutzer: Stelle sicher, dass alle Benutzer vom System abgemeldet sind. Angemeldete Benutzer können den Herunterfahrvorgang blockieren.

Laufende Prozesse: Überprüfe, ob noch Prozesse laufen, die das Herunterfahren verhindern könnten. Du kannst den Befehl ps aux verwenden, um eine Liste laufender Prozesse anzuzeigen.

Hardwareprobleme: Überprüfe, ob Hardwareprobleme das Herunterfahren beeinträchtigen. Trenne alle externen Geräte und versuche es erneut.

Dateisystemfehler: Überprüfe die Integrität deines Dateisystems mit dem Befehl fsck. Wenn Fehler auftreten, versuche, sie zu reparieren.

Beheben spezifischer Probleme

Herunterfahren bleibt hängen:

  • Überprüfe, ob angemeldete Benutzer oder laufende Prozesse den Vorgang blockieren.
  • Probiere den Befehl systemctl status shutdown.target aus, um den Status des Herunterfahrens anzuzeigen.
  • Starte den Herunterfahrvorgang mit dem Befehl sudo systemctl restart shutdown.target neu.

Benachrichtigung wird nicht gesendet:

  • Überprüfe, ob die Option -P verwendet wird, um eine Benachrichtigung zu senden.
  • Stelle sicher, dass der Befehl wall installiert und konfiguriert ist.

Zusammenfassung

Wenn du Probleme beim Herunterfahren begegnest, überprüfe zuerst die Gründe für das Fehlschlagen des Herunterfahrens. Befolge dann die spezifischen Schritte zur Fehlerbehebung, die in diesem Abschnitt beschrieben werden. Wenn das Problem weiterhin besteht, kannst du weitere Hilfe in den Ubuntu-Foren oder bei Canonical suchen.

Folge uns

Neue Posts

Beliebte Posts