![](https://novacustom.com/storage/Intel-ME-disabling-suspend-then-hibernate.png)
Die Dasharo coreboot-Modelle von NovaCustom verfügen über eine Funktion zur Deaktivierung der Intel Management Engine (ME). Die Deaktivierung des ME hat jedoch einen Nachteil: Der Laptop kann nicht mehr den niedrigsten Energiezustand erreichen, der für den modern standby-Modus (S0ix) verwendet wird. Infolgedessen entleert sich der Akku im Suspend-Modus etwa 3 Mal schneller als bei aktiviertem ME. Auch wenn wir dieses Problem nicht lösen können, gibt es eine Umgehungslösung für dieses Problem.
Hintergrund
Früher gab es bei Computern einen Tiefschlafmodus, der Hibernation genannt wurde. Der Ruhezustand ist zwar nicht mehr sinnvoll und in modernen Linux-Betriebssystemen standardmäßig nicht mehr aktiv, aber wir können ihn immer noch aktivieren und nutzen. Hibernation hat allerdings einen großen Nachteil: Die Aufwachzeit ist lang und vergleichbar mit der Aufwachzeit bei einem normalen System-Start.
Beim Suspend-Modus kehrt ein Benutzer zum Computer zurück, kurz nachdem er seinen Arbeitsplatz verlassen hat. Denken Sie an eine Pause oder einen kurzen Spaziergang. Aus Sicherheitsgründen ist es immer das Beste, das System vollständig herunterzufahren. Für einige Benutzer könnte dies jedoch unbequem sein, weshalb sie den Suspend-Modus bevorzugen. In den meisten Fällen wird der Computer innerhalb von 3 Stunden, nachdem der Benutzer seinen Arbeitsplatz verlassen hat, wieder aufgenommen.
Es gibt eine Möglichkeit, den Laptop nach einer bestimmten Zeit von Inaktivität in den Suspend-Modus zu versetzen, während der Akku nicht leerläuft. Die Umgehungslösung, die wir in diesem Artikel anwenden werden, heißt suspend-then-hibernate. Das funktioniert so: Wenn der Laptop in den Ruhestand geht, macht er das zuerst wie üblich. Aber nach einer bestimmten Zeit, sagen wir 3 Stunden, schaltet der Laptop vom normalen Suspend-Modus in den Tiefschlaf (suspend-to-disk).
Vorteile
Die Einrichtung von suspend-then-hibernate, während ME deaktiviert ist, hat einige Vorteile:
- Der Akku entleert kaum im Ruhestand.
- Die Aufwachzeit des Ruhestands ist in den meisten Fällen immer noch sehr kurz, es sei denn, der Benutzer setzt die Arbeit nach 3 Stunden fort.
![](https://novacustom.com/storage/s3-icon.png)
Die NV41 Serie mit Linux ist nicht betroffen
Sofern Sie keine Dual-Boot-Konfiguration mit Windows haben, die Sie zur Verwendung des modern standby-Modus zwingt, ist die NV41 Serie nicht vom Problem der Batterieentladung in Verbindung mit deaktiviertem ME betroffen. Das liegt daran, dass diese Notebook-Serie S3 (Suspend-to-RAM) unterstützt, das den Prozessor im Suspend-Modus komplett abschaltet.
So richten Sie suspend-then-hibernate ein
![](https://novacustom.com/storage/warning.png)
Diese Anleitung wurde für Ubuntu 24.04 mit GNOME geschrieben. Bei anderen Distributionen und Desktop-Umgebungen sind möglicherweise andere Schritte zur Einrichtung von suspend-then-hibernate erforderlich. Es könnte aber auch auf anderen Distributionen funktionieren. Bitte hinterlassen Sie einen Kommentar zu diesem Blog-Beitrag, um andere Benutzer darüber zu informieren, wie dies für die von Ihnen verwendete Distro funktioniert.
![](https://novacustom.com/storage/warning.png)
Kommentar zu Verschlüsselung der Festplatte: Bisher konnten wir den Ruhezustand noch nicht mit einer verschlüsselten Partition einrichten. Ich habe versucht, eine separate Swap-Partition sowohl für eine bestehende Ubuntu-Installation als auch für eine neue Installation einzurichten, ohne Erfolg, auch nachdem ich diese Anmerkungen gelesen habe. Wenn Sie eine Lösung für dieses Problem haben, zögern Sie bitte nicht, sie in den Kommentaren mitzuteilen.
Schritt 1: Installieren von pm-utils
Sie können dies ganz einfach tun, indem Sie ein Terminalfenster öffnen (Strg + Alt + T) und die folgende Zeile ausführen, während Sie eine aktive Internetverbindung haben:
sudo apt install pm-utils -y
Schritt 2: Vorbereitung einer Swap-Partition
Ubuntu erstellt standardmäßig keine Swap-Partition, aber sie ist für Hibernation notwendig. Die Größe der Swap-Partition sollte mindestens so groß sein wie die Kapazität des internen Speichers. Dies ist über das Betriebssystem selbst nicht möglich.
Wenn Sie Ubuntu neu installieren, können Sie die Swap-Partition während der Einrichtung der Festplattenpartitionen einrichten, indem Sie die Partition manuell über das Installationsprogramm hinzufügen. Sehen Sie sich auch dieses Video an, das zeigt, wie Sie Ubuntu 24.04 mit separaten Partitionen einrichten.
So erstellen Sie die Swap-Partition auf einem System, auf dem Ubuntu bereits installiert ist:
- Booten Sie von einem Ubuntu Live-USB-Stick.
- Verkleinern Sie Ihre Root-Partition mit Gparted um mindestens Ihre gesamte interne Arbeitsspeicherkapazität. Um auf der sicheren Seite zu sein, empfehlen wir Ihnen, ein Gigabyte mehr als Ihre gesamte Arbeitsspeicherkapazität hinzuzufügen.
- Erstellen Sie die Swap-Partition mit Gparted mit der maximalen Größe.
- Starten Sie den Laptop neu.
Tipp: Sie können free -h ausführen um die Kapazität Ihres internen Arbeitsspeichers zu überprüfen. Nach Schritt 4 können Sie mit demselben Befehl überprüfen, ob die Gesamtkapazität der Swap-Partition größer ist als die Gesamtkapazität des Arbeitsspeichers.
Schritt 3: Formatieren und Zuweisen der Swap-Partition
Dieser Schritt ist nur notwendig, wenn Sie eine neue Swap-Partition erstellt haben; nicht, wenn Sie die Swap-Partition während der Installation von Ubuntu eingerichtet haben.
Nachdem Sie Ihre normale Installation wieder gestartet haben, formatieren Sie die Swap-Partition, indem Sie ein Terminal öffnen (Strg + Alt + T) und dann ausführen:
sudo mkswap /dev/nvme0n1pX
Ersetzen Sie aber /dev/nvme0n1pX durch Ihre Swap-Partition. Sie können die Anwendung Laufwerke verwenden, um Ihre Swap-Partition zu identifizieren.
Der nächste Schritt besteht darin, die Swap-Partition zu mounten. Sie können dies tun, indem Sie ausführen:
sudo swapon -U UUID
Aber ersetzen Sie UUID durch die tatsächliche UUID Ihrer Swap-Partition. Sie können die UUID Ihrer Swap-Partition auch mit der Anwendung Festplatten überprüfen.
Als Letztes müssen wir die Swap-Partition dauerhaft einhängen, indem wir sie in /etc/fstab binden. Führen Sie in einem Terminalfenster aus:
sudo nano /etc/fstab
Fügen Sie nun diese Zeile am Ende ein:
UUID=xxx none swap sw 0 0
Ersetzen Sie hier xxx durch die tatsächliche UUID Ihrer Swap-Partition.
Vergewissern Sie sich außerdem, dass in der Konfigurationsdatei fstab keine andere Swap-Partition oder Swap-Datei definiert ist. Standardmäßig ist die Datei /swap.img aktiv. Stellen Sie also sicher, dass Sie diese Zeile vollständig entfernt haben. Übrigens können Sie mit Strg + K eine ganze Zeile entfernen.
Speichern Sie die Datei mit dem Tastaturkürzel Strg + X, gefolgt von Y, gefolgt von Enter.
Schritt 4: Die Swap-Partition an GRUB zuweisen
Führen Sie dazu aus:
sudo nano /etc/default/grub
Suchen Sie nun die Zeile GRUB_CMDLINE_LINUX_DEFAULT=
. Fügen Sie zwischen den doppelten Anführungszeichen an: resume=UUID=xxx
, wobei xxx durch die UUID Ihrer Auslagerungspartition ersetzt werden muss.
In meinem Fall sah die Zeile wie folgt aus:
[ ... ]
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=48c20957-8193-4eb5-a157-f190f9c13d46"
[ ... ]
Speichern Sie die Datei mit dem Tastaturkürzel Strg + X, gefolgt von Y, gefolgt von Enter.
Stellen Sie sicher, dass die Änderungen aktiv sind, indem Sie sie ausführen:
sudo update-grub
Und starten Sie Ihren Computer neu.
Schritt 5: Testen von Hibernation
Um Hibernation auszulösen, müssen Sie den folgenden Befehl ausführen:
systemctl hibernate
Sie können diesen Befehl verwenden, um sicherzustellen, dass der Tiefschlafstand korrekt funktioniert.
Schritt 6: Eine Option zum direkten Auslösen von Hibernation hinzufügen (optional)
Es gibt zwei Möglichkeiten um Hibernation einfach über die grafische Benutzeroberfläche auszulösen:
- Durch die Verwendung der GNOME-Erweiterung Hibernate Status Button.
- Indem Sie eine benutzerdefinierte Tastenkombination erstellen, um Hibernation einfach zu triggern. Sie können dies tun, indem Sie zu Einstellungen –> Tastatur –> Tastaturkürzel –> Benutzerdefinierte Kürzel –> Kürzel hinzufügen navigieren. Als Name legen Sie Hibernation fest. Setzen Sie als Befehl systemctl hibernate. Klicken Sie dann auf Tastenkombination festlegen … und lösen Sie die gewünschte Tastenkombination aus, um Ihren Laptop in den Tiefschlafmodus zu versetzen.
Schritt 7: Ändern der Ruhezustandskonfiguration von systemd
Das Ziel ist es:
- Sicherzustellen, dass der Ruhezustand von systemd zugelassen wird.
- Die Verzögerung für den Ruhezustand nach dem Suspend-Modus einzustellen.
- Sicherzustellen, dass der Ruhestand tatsächlich die suspend-then-hibernate-Richtlinie auslöst.
Öffnen Sie dazu ein Terminalfenster und führen Sie aus:
sudo nano /etc/systemd/sleep.conf
Entfernen Sie in dieser Datei die Kommentare und setzen Sie die folgenden Zeilen:
AllowSuspend=yes
AllowHibernate=yes
AllowSuspendThenHibernate=yes
HibernateDelaySec=180min
Speichern Sie die Datei mit dem Tastaturkürzel Strg + X, gefolgt von Y, gefolgt von Enter.
Setzen Sie nun den Standard-Schlafmodus mit suspend-then-hibernate in Kraft, indem Sie ausführen:
sudo ln -s /usr/lib/systemd/system/systemd-suspend-then-hibernate.service /etc/systemd/system/systemd-suspend.service
Starten Sie das Notebook neu, um sicherzustellen, dass die Änderungen aktiv sind.
Schritt 8: suspend-then-hibernate testen
Öffnen Sie mehrere Anwendungen und setzen Sie den Laptop einfach wie gewohnt in den Ruhezustand. Warten Sie eine Minute und wecken Sie Ihren Laptop auf. Der Suspend-Modus sollte wie gewohnt funktionieren.
Lösen Sie nun erneut den Suspend-Modus aus. Stellen Sie einen Alarm ein, der in 3 Stunden ausgelöst wird, damit Sie sehen können was passiert, sobald der Laptop länger als diese Zeitspanne inaktiv ist. Der Laptop seinen Zustand speichern und herunterfahren. Um zu überprüfen, ob dieses Ziel erreicht wurde, schalten Sie den Laptop einfach wieder ein. Der Laptop sollte die Anwendungen so wiederherstellen wie sie waren, bevor der Suspend-Modus ausgelöst wurde.
Kommentare nur auf Englisch bitte.