
Der Linux Shutdown-Befehl tut genau das, was er sagt. Er hat aber genug Optionen und Sonderfälle, dass du vor deinem Team ziemlich alt aussiehst, wenn du ihn einfach nur improvisierst. Egal, ob du den Strom bei einem VPS abdrehst, ein Wartungsfenster planst oder den Shutdown abbrechen willst, den du gerade aus Versehen ausgelöst hast: Dieser Guide deckt alles ab.
Was ist der Linux Shutdown-Befehl?
Der Shutdown-Befehl lässt dich dein System sicher ausschalten, neu starten oder anhalten. Er kommuniziert mit systemd, was wiederum den passenden Zielzustand einleitet: poweroff.target, reboot.target oder halt.target. Jeder laufende Dienst bekommt die Chance, sauber zu schließen, bevor die Kiste ausgeht.
Grundlegende Syntax:
shutdown [OPTION] [TIME] [MESSAGE]Syntax-Aufschlüsselung und Optionen
Das macht jede Komponente:
- OPTION: Steuert die Aktion. Übliche Flags sind -P (Ausschalten, Standard), -r (Neustart) und -H (Anhalten ohne Ausschalten).
- ZEIT: Wann ausgeführt werden soll. Nutze hh:mm für die absolute Zeit, +m für relative Minuten oder „now“ als Kürzel für +0.
- NACHRICHT: Eine Rundsendung an alle eingeloggten User. Du musst ein ZEIT-Argument angeben, um eine Nachricht anzuhängen.
Wenn du shutdown ohne Argumente ausführst, ist der Standard +1 – der Shutdown wird also für in einer Minute geplant. Fünf Minuten vor jedem geplanten Herunterfahren erstellt das System /run/nologin, um neue Logins zu blockieren.
Wie systemd Shutdown-Ziele behandelt
Auf modernen Linux-Systemen funktioniert shutdown als dünne Hülle um systemd. Wenn du shutdown -r now ausführst, aktiviert systemd reboot.target, stoppt Units in umgekehrter Reihenfolge der Abhängigkeiten und startet die Reboot-Sequenz des Kernels. Wenn du auf einem älteren init-basierten System arbeitest, sieht das anders aus, aber die werden immer seltener.
Das zu verstehen ist wichtig, wenn du Probleme mit hängenden Shutdowns lösen musst. Ein Dienst, der SIGTERM ignoriert und kein TimeoutStopSec gesetzt hat, kann den gesamten Prozess aufhalten.
Wie man ein Linux-System herunterfährt
Der Befehl linux shutdown now ist der schnellste Weg, um die Maschine auszuschalten. Hier sind die Muster, die du wirklich brauchen wirst.
Sofortiges Herunterfahren
Schaltet sofort ab, ohne Schonfrist:
shutdown nowOder alternativ mit dem expliziten Power-off-Flag:
shutdown -P nowBeide stoppen die Dienste und fahren den Rechner ohne Verzögerung herunter. Nutze das nur, wenn du sicher bist, dass niemand sonst eingeloggt ist und keine kritischen Jobs laufen.
Geplantes Herunterfahren nach Zeit oder Minuten
Shutdown zu einer absoluten Zeit (24-Stunden-Format):
shutdown 22:30Relative Zeit, Minuten von jetzt an:
shutdown +15Das Timer-Verhalten löst fünf Minuten vor der Zeit die /run/nologin-Datei aus – das verhindert, dass neue SSH-Verbindungen auf einem System landen, das gleich offline geht.
Eine Shutdown-Warnmeldung senden
Füg eine Nachricht nach dem Zeit-Argument hinzu, um alle eingeloggten User über „wall“ zu informieren:
shutdown +15 "Maintenance window starting. Save your work now."Die Nachricht geht an jede aktive Terminal-Session. Praktisch in Umgebungen mit vielen Usern, wo du nicht garantieren kannst, dass jeder Slack checkt.
Wie man Linux über Shutdown neu startet
Der Reboot-Befehl über shutdown hält dich in einem einheitlichen Interface, statt zwischen shutdown, reboot und systemctl zu springen.
Sofortiger Neustart vs. Geplanter Neustart
Sofort neu starten mit shutdown -r now:
shutdown -r nowEinen Reboot zu einer bestimmten Zeit planen:
shutdown -r 22:30Reboot in 15 Minuten mit einer Rundsendung:
shutdown -r +15 "Rebooting to apply kernel update."Nutzt du shutdown -r statt nur reboot, hast du Planung und Nachrichten direkt in einem Befehl.
Halt vs. Power Off: Wo ist der Unterschied?
Diese zwei Optionen verwirren viele, weil die Begriffe fast gleich klingen:
- -H / –halt: Stoppt alle Prozesse und synchronisiert die Platten, sendet aber kein ACPI-Signal zum Ausschalten. Die Kiste bleibt physisch eingeschaltet.
- -P / –poweroff: Stoppt alles UND sendet das Signal zum Ausschalten. Der Rechner geht komplett aus. Das ist der Standard, wenn du shutdown ohne Flag ausführst.
Halt ist nützlich in virtuellen oder Embedded-Umgebungen, wo ein Hypervisor oder ein externer Prozess den Stromzustand regelt. Auf Bare-Metal-Systemen willst du eigentlich immer -P.
shutdown -H nowWie man einen geplanten Shutdown abbricht
Nutz das Cancel-Flag, um einen geplanten Shutdown oder Reboot abzubrechen:
shutdown -cDu kannst auch eine Nachricht mitschicken, um die eingeloggten User zu informieren, dass der Shutdown abgeblasen wurde:
shutdown -c "Maintenance postponed. Server staying up."Einschränkungen: Wann Abbrechen nicht funktioniert
shutdown -c klappt nur bei geplanten Shutdowns. Wenn du shutdown now oder shutdown +0 genutzt hast, gibt es nichts mehr abzubrechen, weil der Prozess schon läuft. In dem Fall musst du entweder den Terminal-Prozess killen oder den Shutdown einfach akzeptieren.
Außerdem brauchst du für den Abbruch-Befehl die passenden Rechte. Ohne sudo als normaler User wird das Ganze entweder lautlos scheitern oder einen Fehler ausspucken, je nach Distro.
Security-Vorteile von kontrollierten Shutdowns
Den Shutdown-Befehl richtig zu nutzen ist nicht nur bequem, sondern sorgt dafür, dass dein Server sicher und stabil bleibt.
Security-Patches sicher anwenden per Reboot
Viele Kernel- und glibc-Updates werden erst nach einem Reboot aktiv. Wenn du den Reboot überspringst, läuft dein System weiter mit einem angreifbaren Kernel, auch wenn das Paket eigentlich installiert ist. Wenn du Reboots per shutdown -r für Zeiten mit wenig Traffic planst, installierst du Patches, ohne User zu erschrecken oder ein Chaos durch ungeplante Ausfälle zu riskieren.
Check hier, welche Updates einen Reboot brauchen:
needs-restarting -r # RHEL/CentOS
cat /var/run/reboot-required # Debian/UbuntuDatenverlust beim Herunterfahren verhindern
Der Grund, warum du shutdown nutzt, statt einfach den Stecker zu ziehen, ist die Reihenfolge, in der Prozesse beendet werden. Ein sauberer Shutdown sendet SIGTERM an die Dienste, wartet auf deren Abschluss, leert die Dateisystem-Buffer und unmountet Volumes in der richtigen Reihenfolge. Den Saft einfach abzudrehen überspringt das alles.
Zerschossene Datenbanken durch einen „dirty shutdown“ sind ein echtes Problem. Eine Postgres- oder MySQL-Instanz ohne sauberes SIGTERM muss beim Start oft Logs mühsam wiederherstellen – und wenn die beschädigt sind, landest du direkt im Recovery-Modus. Nutz den shutdown-Befehl. Jedes Mal.
FAQ: Linux Shutdown-Befehl
Führ das hier aus: shutdown now oder shutdown -P now. Beide schalten den Rechner sofort ohne Gnadenfrist aus.
Das -h-Flag ist auf den meisten modernen Systemen ein Alias für –poweroff, also schaltet shutdown -h now den Rechner sofort aus. Auf manchen alten Systemen stand -h noch für –halt. Nutz lieber -P now, wenn du beim Ausschalten ganz sichergehen willst.
Nutz shutdown -c, um einen geplanten Shutdown oder Reboot zu stoppen. Das klappt aber nicht, wenn der Prozess schon läuft (also mit „now“ oder „+0“ gestartet wurde).
Halt stoppt alle Prozesse und synchronisiert die Platten, sendet aber kein ACPI-Signal – die Hardware bleibt also an. Poweroff macht das Gleiche wie Halt und schaltet den Rechner danach komplett aus. Bei Bare Metal Servern willst du eigentlich immer Poweroff nutzen.
Nutz shutdown mit Zeit-Argument: shutdown 22:30 für eine feste Uhrzeit oder shutdown +15 für in 15 Minuten. Kombiniere es mit einer Warnung: shutdown +15 „Server in 15 Minuten offline.“