Herunterfahren
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 24.04 Noble Numbat
Ubuntu 22.04 Jammy Jellyfish
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Ein PC ist schnell eingeschaltet. Das Abschalten dagegen kann komplexer sein: Soll es zeitgesteuert sein? Und wie erlaubt man einem Nutzer das Ausschalten, wenn kein Displaymanager diese Funktion global bereitstellt? Im Terminal geht es mit welchem Befehl? Dieser Artikel klärt diese Fragen.
Zeitgesteuert herunterfahren¶
In diesem Abschnitt werden Programme mit grafischer Oberfläche vorgestellt, die das zeitgesteuerte Abschalten des Rechners ermöglichen.
Alarm Clock¶
Unter auf GTK basierenden Arbeitsumgebungen bietet sich das Applet Alarm Clock an. Darüber kann zu einer Uhrzeit oder nach Ablauf einer Zeitspanne eine benutzerdefinierte Aktion ausgeführt werden. Dafür gibt man eines der kurzen Kommandos ein.
KShutDown |
KShutDown¶
KShutDown 🇬🇧 ist ein Programm für das automatische Herunterfahren des Systems aus KDE heraus. Das Programm kann jedoch deutlich mehr als nur den Rechner herunterfahren. So kann das Programm z.B. die Internetverbindung zu einem bestimmten Zeitpunkt beenden, die Wiedergabe verschiedener Audio-Player stoppen usw.
Das Programm kann direkt aus den Paketquellen von Ubuntu über das folgende Paket installiert werden:
kshutdown (universe/kde)
Befehl zum Installieren der Pakete:
sudo apt-get install kshutdown
Oder mit apturl installieren, Link: apt://kshutdown
Nach der Installation kann man das Programm unter " → Anwendungen → Dienstprogramme → KShutDown (System Shut Down Utility)" aufrufen.
qshutdown |
qshutdown¶
Das Programm qshutdown kann den PC zeitgesteuert herunterfahren, neu starten und in den Energiespar- oder Ruhezustand versetzen kann. Man kann sowohl eine Uhrzeit als auch eine Anzahl von Minuten angeben, zu der die entsprechende Aktion ausgeführt werden soll. Wenn nur noch wenig Zeit bis zur gewünschten Aktion verbleibt, warnt das Programm optional durch ein dreimaliges Wiedererscheinen. Mit Hilfe dieses Programms kann man stets die verbleibende Zeit im Auge behalten. Es soll einem ermöglichen, ohne Terminal auszukommen, und vermeidet dabei die wall-Meldung, die beim Befehl shutdown
im Terminal manche Prozesse stören kann.
Herunterfahren per Terminal¶
Das normale Herunterfahren im Terminal[3] erfolgt bei Systemen mit systemd über systemctl-Kommandos. Das alte Kommando shutdown
ist unter Ubuntu mit systemd nur noch ein symbolischer Link auf systemctl
. Auch die neu eingeführten Kommandos poweroff
, halt
sowie reboot
(nachfolgend kurz AKTION genannt) sind Symlinks für weniger Tipparbeit. Für den Benutzer reicht es also eines dieser kurzen Kommandos ins Terminal zu tippen/kopieren, um die gewollte Aktion zu starten.
AKTION | Beschreibung |
poweroff | Fährt das System herunter und schaltet es aus. |
reboot | Fährt das System herunter und startet es neu. |
halt | Fährt das System herunter und hält es an; die Hardware verbleibt eingeschaltet. |
Ausnahme: Wenn auf einem Mehrbenutzersystem noch ein anderer Benutzer angemeldet ist, so reicht die Kurzfassung nicht. Erst mit dem ausgeschriebenen
systemctl -i AKTION
wird die Sitzung des anderen Benutzers beendet und die Aktion initiiert.
Zeitgesteuert¶
Es ist ebenso möglich die Aktion zu einer bestimmten Uhrzeit auszuführen, bspw.. um 23 Uhr 10
systemctl AKTION --when 23:10
Eine geplante Aktion kann wieder abgebrochen werden mit
systemctl AKTION --when=cancel
Herunterfahren erzwingen¶
Der Vollständigkeit halber sei hier erwähnt, dass man, sofern das Herunterfahren einem zu lange dauern sollte, durch Verwendung der Option --force
den Druck erhöhen kann. Damit wird unter Umständen nicht mehr gewartet bis Programme und Dienste die Schreibvorgänge abschließen können und somit Daten verloren gehen. Bei zweimaligen Gebrauch dieser Option ist mit Sicherheit von letzterem auszugehen! Deshalb sollte diese Option mit Vorsicht genutzt werden. Näheres in der manpage systemctl 🇩🇪.
Dialogfenster¶
Nahezu jede Desktopumgebung verwendet ein anderes Programm um das Herunterfahren über die grafische Oberfläche in die Wege zu leiten. Auch aus einem Skript heraus kann man einen mehr oder weniger normalen Dialog aufrufen (mit Benutzerrechten). Zum Teil können Optionen angegeben werden. Mehr erfährt man meist in der Hilfe oder manpage. Hier eine kurze Übersicht:
Derivat | Befehl |
Ubuntu Ubuntu Budgie Ubuntu Unity | gnome-session-quit |
Ubuntu MATE | mate-session-save |
Kubuntu | /usr/lib/x86_64-linux-gnu/libexec/ksmserver-logout-greeter -? |
Lubuntu | lxqt-leave |
Xubuntu | xfce4-session-logout |
D-Bus Methode¶
Um über D-Bus herunterfahren zu können, gibt es verschiedene Schnittstellen, die angesprochen werden können. Über ConsoleKit gibt es eine Methode, die prinzipiell bei allen Systemen funktioniert, die das Paket consolekit installiert haben.
dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop #zum Herunterfahren dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart #zum Neustarten
KDE¶
Kubuntu kann man u.a. über den Session-Manager via D-Bus herunterfahren. Als Beispiel dient das sofortige Abmelden, ohne Rückfrage oder Herunterfahren.
Verwendung mit dbus
:
qdbus org.kde.ksmserver /KSMServer logout 0 3 3
Verwendung mit dbus-send
:
dbus-send --print-reply --dest=org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout int32:0 int32:3 int32:3
Die drei ganzzahligen Parameter am Ende haben folgende Funktionen:
Arg.Nr. | Bedeutung | Wert 0 | Wert 1 | Wert 2 | Wert 3 |
1 | Bestätigungsabfrage | nein | ja | ||
2 | Methode/Typ | kein shutdown | reboot | halt | logout |
3 | Modus | wartet auf das Beenden aller aktiven Sessions | jetzt versuchen. Falls weitere Sessions aktiv sind, hat der gesamte Befehl keine Auswirkung | erzwingen | Nutzer per Popup entscheiden lassen |
Weitere Informationen findet man im Header von KWorkSpace.
Mit ACPI herunterfahren¶
Für kleine Heimserver ist es möglicherweise interessant, diese auch über den Einschalter am PC-Gehäuse herunterzufahren. Das erspart eventuell ungeübten Benutzern, am Server den Monitor einzuschalten, sich anzumelden und dann den Befehl sudo halt
zum Herunterfahren einzugeben. Durch Installation des Paketes acpid können auch Rechner ohne grafische Oberfläche heruntergefahren werden. Bei Rechnern mit grafischer Oberfläche ist das Paket normalerweise dabei, ansonsten muss es installiert werden und kann dann sofort verwendet werden.
acpid
Befehl zum Installieren der Pakete:
sudo apt-get install acpid
Oder mit apturl installieren, Link: apt://acpid
Achtung!
Wichtig ist noch, den Schalter nicht länger als 5 Sekunden gedrückt zu halten. Ansonsten schaltet sich das Netzteil hart ab und kann so einen Datenverlust verursachen. Gegen unabsichtliches Drücken des Schalters schützt ein eigener Serverschrank oder eine ähnliche Maßnahme.
Ungewolltes Abschalten vermeiden¶
Arbeitet man in einem Netzwerk mit mehreren Rechnern, die man per SSH steuert, so kann es leicht zu Verwechselungen kommen, so dass man aus Versehen den falschen Rechner herunter fährt. Dieses kann man mit dem Paket
molly-guard (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install molly-guard
Oder mit apturl installieren, Link: apt://molly-guard
vermeiden. Hat man molly-guard auf einem Rechner installiert[1], auf dem man sich per SSH angemeldet hat, und fährt den Rechner herunter, so wird man nach dem Hostnamen des Rechners gefragt. Erst wenn man diesen korrekt eingegeben hat, wird der Rechner tatsächlich heruntergefahren.
sudo shutdown -h now
W: molly-guard: SSH session detected! Please type in hostname of the machine to shutdown:
Ist man lokal angemeldet, so beeinflusst molly-guard das Herunterfahren nicht.
Ist man per SSH angemeldet, arbeitet jedoch mit SCREEN in einer virtuellen Konsole, so wird beim Herunterfahren nicht nach dem Rechnernamen gefragt. Möchte man trotzdem gefragt werden, kann man in der Datei /etc/molly-guard/rc folgenden Wert eintragen bzw. auskommentieren.
ALWAYS_QUERY_HOSTNAME=true
Nach dieser Änderung wird bei jedem Herunterfahren nach dem Hostnamen gefragt, auch in einer lokalen Sitzung.
Problembehebung¶
Rechner schaltet sich nicht ab¶
Es kommt vor, dass sich der Rechner nach dem Herunterfahren nicht abschaltet. Man bekommt dann die Meldung, dass man den Rechner nun abschalten kann. Erst wenn man den Taster am Rechner betätigt, schaltet sich der Rechner ab. Um dieses zu lösen, kann man verschiedene Dinge probieren.
ACPI erzwingen¶
Es kommt vor, dass Ubuntu nicht erkennt, dass der Rechner ACPI-Funktionen bietet. Dann kann man Ubuntu dazu zwingen, ACPI zu nutzen. Man bearbeitet, wie in Grub 2 Konfiguration beschrieben, die Datei /etc/default/grub, wobei die Zeile
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
um die Option acpi=force
ergänzt wird:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi=force"
Nun aktualisiert man die Konfiguration von Grub mittels des Befehls[3]
sudo update-grub
Nach dem nächsten Neustart schaltet sich der Rechner nun korrekt ab.
Behilfs-Bootoptionen der Installation löschen¶
Bei der Installation des Betriebssystems kann es zu Problemen kommen, so das man mit geeigneten Bootoptionen den Systemstart beeinflussen muss. Diese Optionen werden in die Datei /etc/default/grub des Installierten Systems übertragen, damit nach Installation das System ohne weitere Eingriffe starten kann. In der Regel werden solche Behilfs-Bootoptionen nach einer Aktualisierung bzw. nach einem Update überflüssig und sollten dann entfernt werden, da diese zum Beispiel das automatisierte Herunterfahren und Ausschalten des Computers verhindern können.
Dazu bearbeitet man, wie in GRUB-2-Konfiguration beschrieben, die Datei /etc/default/grub.
Beispielauszug der Datei /etc/default/grub unmittelbar nach der Installation mit Behilfs-Bootoptionen:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX="priority=low acpi=off noapic nolapic nomodeset"
Beispielauszug der Datei /etc/default/grub mit den im Idealfall nötigsten Bootoptionen:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX=""
Es sei an dieser Stelle nochmals darauf hingewiesen, das im Standard Boot-Login beide Zeilen zum einen GRUB_CMDLINE_LINUX_DEFAULT
und zum anderen GRUB_CMDLINE_LINUX
berücksichtigt und verarbeitet werden. Siehe hierzu auch den Abschnitt Dauerhafte Konfiguration eines Systems.
Abschließend aktualisiert man die Konfiguration von Grub mittels des Befehls[3]
sudo update-grub
Nach dem nächsten Neustart schaltet sich der Rechner nun korrekt ab.
Power-Off über APM¶
Alternativ kann man Ubuntu anweisen, dass es speziell zum Abschalten des Rechners das veraltete APM nutzen soll. Dieses Verfahren wird heutzutage nicht mehr genutzt, kann aber bei sehr alter Hardware oder ACPI-Problemen eine Lösung sein. Dazu editiert man, wie bei ACPI erzwingen beschrieben, die Konfigurationsdatei von GRUB 2 und fügt apm=power_off
ein. Die Schreibweisen power-off
und poweroff
sind Synonyme, funktionieren also ebenfalls.
Danach muss GRUB 2 noch aktualisiert werden:
sudo update-grub
Anschließend muss dem APM-Kernelmodul noch mitgeteilt werden, dass es den Rechner abschalten soll. Dazu muss in die Datei /etc/modules mit Rootrechten die Zeile
apm power_off=1
eingefügt werden. Mit einem Neustart des Systems kann der Erfolg der Maßnahme überprüft werden.
Links¶
Howto/Notwendigkeit des Neustarts ermitteln – Prüfen und Anzeigen, ob ein Rechner neu gestartet werden muss.
shutdown-at-night 🇬🇧 – Clients bei Nacht herunter und am Morgen hoch fahren.