GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So aktivieren Sie den Ruhezustand unter Ubuntu (bei Verwendung einer Auslagerungsdatei)

In diesem Artikel wird erläutert, wie systemd verwendet wird, um den Ruhezustand auf neueren Versionen von Ubuntu zu aktivieren, wenn eine Auslagerungsdatei verwendet wird (was für Ubuntu mindestens seit Version 18.04 Standard ist).

Der Akku meines Laptops entlädt sich im Ruhezustand ziemlich schnell. Ich habe einige Lösungen / Problemumgehungen wie diese hier ausprobiert (außer bei mir war das Problem nicht, dass der Laptop über Nacht die Hälfte seiner Leistung verloren hat, sondern alles in nur wenigen Stunden), aber ohne Erfolg. Also habe ich mich entschieden, die Suspend to Disk-Option zu aktivieren und diese anstelle der Standard-Suspend to RAM-Option zu verwenden, da sie weniger Strom verbraucht, sodass der Laptop-Akku nicht entladen wird, wenn er nicht verwendet wird, auch wenn das Aufwachen etwas länger dauert aus dem Winterschlaf aufstehen als aus dem Schlaf. So wird es gemacht.

Die folgenden Anweisungen funktionieren möglicherweise auf anderen Linux-Distributionen, aber ich habe dies nur auf Ubuntu getestet (es sollte auf allen Debian-basierten und Ubuntu-basierten Linux-Distributionen auf die gleiche Weise funktionieren, einschließlich Pop! _OS usw.). Bei Nicht-Debian-Linux-Distributionen müssen Sie möglicherweise andere Befehle zum Aktualisieren von GRUB 2 (Schritt 4) und zum Aktualisieren von initramfs (Schritt 6) verwenden, da dies Debian-spezifische Befehle sind.

Es ist auch wichtig zu beachten, dass der Ruhezustand in Ubuntu deaktiviert ist, da er auf einigen Computern Probleme verursacht und daher möglicherweise nicht für alle funktioniert. Es war ein bisschen ein Chatter über den erneuten Besuch des Ruhezustands unter Ubuntu mit Version 20.10, aber er blieb standardmäßig deaktiviert.

Anforderungen

Das ist erwähnenswert Sie sollten eine Auslagerungsdatei haben, die mindestens so groß ist wie der Arbeitsspeicher des Computers (Der Ruhezustand kann erfolgreich sein oder auch nicht, wenn Ihr Computer über eine Auslagerungsdatei verfügt, die weniger als der Arbeitsspeicher des Systems ist). Dieser Artikel erklärt, wie Sie von einer Auslagerungspartition zu einer Auslagerungsdatei wechseln – Sie können diese Anleitung auch verwenden, um eine größere Auslagerungsdatei zu erstellen.

Auch wenn Sie Ihren Swap speziell verschlüsselt haben, funktionieren diese Anweisungen nicht . Da der Swap meines Laptops nicht verschlüsselt ist, kann ich dies nicht mit einem verschlüsselten Swap versuchen, daher gelten die folgenden Anweisungen nur für unverschlüsselte Swap-Dateien. Sie sollten jedoch wissen, dass, wenn Sie bereits ein verschlüsseltes Root-Dateisystem haben, alle darin enthaltenen Dateien – einschließlich der Auslagerungsdatei – ebenfalls verschlüsselt werden und die folgenden Anweisungen in diesem Fall funktionieren.

Um herauszufinden, wie groß die Auslagerung Ihres Computers ist und ob er eine Auslagerungsdatei oder -partition verwendet (Sie werden dies später wissen müssen), können Sie diesen Befehl verwenden:

cat /proc/swaps

Hier ist ein Beispiel mit der Ausgabe von meinem Laptop:

$ cat /proc/swaps
Filename	Type	Size		Used		Priority
/swapfile	file	8388604		3213700		-2

Wie Sie unten sehen können Type dort steht file , mein Computer verwendet also eine Auslagerungsdatei (und ihr Pfad ist /swapfile ) und seine Größe ist 8388604 Kilobyte (8,3 GB).

Standardmäßig verwendet Ubuntu für einige Zeit eine Auslagerungsdatei (zumindest ab Ubuntu 18.04), daher gehen die folgenden Anweisungen davon aus, dass Sie sie verwenden. Wenn Sie eine Auslagerungspartition verwenden, verwenden Sie in den folgenden Anweisungen die UUID der Auslagerungspartition anstelle der UUID der Partition, auf der sich die Auslagerungsdatei befindet, und fügen Sie kein Auslagerungsdatei-Offset hinzu (resume_offset Parameter) überall. Dies sind die Unterschiede zwischen dem Ruhezustand mit einer Auslagerungspartition und einer Auslagerungsdatei.

Das könnte Sie auch interessieren:3 Tools zum Anzeigen von Batterieinformationen für Linux-Laptops über die Befehlszeile

So aktivieren Sie den Ruhezustand unter Ubuntu (bei Verwendung einer Auslagerungsdatei)

1. Ermitteln Sie die UUID der Partition, auf der sich die Auslagerungsdatei befindet.

Wir müssen dies der GRUB-Datei und der initramfs-Resume-Datei hinzufügen.

Um die UUID der Partition herauszufinden, auf der sich Ihre Auslagerungsdatei befindet, können Sie den folgenden Befehl verwenden:

findmnt -no UUID -T /swapfile

(/swapfile ist der Pfad zur Auslagerungsdatei und kann auf Ihrem Computer anders sein; Verwenden Sie den exakten Pfad, der von cat /proc/swaps zurückgegeben wird Befehl).

Beispiel von meinem Computer (mit Ausgabe):

$ findmnt -no UUID -T /swapfile

4a59c6a7-ca54-4e24-a362-3eac83bfe226

2. Finden Sie den Offset der Auslagerungsdatei heraus.

Als nächstes müssen wir den Offset der Auslagerungsdatei herausfinden. Wie die UUID müssen wir diese der GRUB-Datei und der initramfs-Resume-Datei hinzufügen.

Dies kann durch Ausführen des folgenden Befehls erfolgen:

sudo filefrag -v /swapfile

In der Ausgabe dieses Befehls ist der erste Zahlenblock aus der Spalte „physical_offset“ der Offset der Auslagerungsdatei, den Sie später benötigen. Kopieren Sie nur die Zahlen und nicht die Punkte, die dem Ziffernblock folgen.

In meinem Fall ist dies beispielsweise die Ausgabe von sudo filefrag -v /swapfile Befehl:

$ sudo filefrag -v /swapfile
Filesystem type is: ef53
File size of /swapfile is 8589934592 (2097152 blocks of 4096 bytes)
 ext:     logical_offset:        physical_offset: length:   expected: flags:
   0:        0..    6143:    4974592..   4980735:   6144:
   1:     6144..    8191:    4982784..   4984831:   2048:    4980736:
   2:     8192..   10239:    4988928..   4990975:   2048:    4984832:
   3:    10240..   12287:    4997120..   4999167:   2048:    4990976:
........................................

In diesem Beispiel ist der Offset die Auslagerungsdatei 4974592 (Dies ist der erste Nummernblock der psysical_offset Säule).

3. Bearbeiten Sie /etc/default/grub Zu bootende Datei mit den Kernelparametern „resume“ und „resume offset“.

Es ist sehr wichtig sicherzustellen, dass Ihre Änderungen an dieser Datei korrekt sind oder Ihr Computer startet möglicherweise nicht!

Öffnen Sie diesen /etc/default/grub Datei mit einem Texteditor als root, z.B. mit dem folgenden Befehl öffnen wir es mit dem Nano-Befehlszeilen-Texteditor:

sudo nano /etc/default/grub

In dieser Datei am Ende der GRUB_CMDLINE_LINUX_DEFAULT Zeile, vor dem Ende " , fügen Sie Folgendes hinzu:resume=UUID=UUID_FROM_STEP_1 resume_offset=SWAP_OFFSET_FROM_STEP_2 . Ersetzen Sie die Werte durch die UUID, die Sie in Schritt 1 erhalten haben, und den Swap-Resume-Offset, den Sie in Schritt 2 erhalten haben.

Um die Datei zu speichern und Nano zu beenden, drücken Sie Ctrl + o , dann Enter , und dann Ctrl + x .

Beispiel. So wird es gemacht GRUB_CMDLINE_LINUX_DEFAULT Die Zeile sieht auf meinem Computer nach dem Hinzufügen der Swap-UUID und des Swap-Offsets so aus:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=4a59c6a7-ca54-4e24-a362-3eac83bfe226 resume_offset=4974592"

4. Aktualisieren Sie die GRUB-Konfiguration.

Um GRUB 2 auf Debian-basierten Linux-Distributionen zu aktualisieren, müssen Sie lediglich den folgenden Befehl ausführen:

sudo update-grub

5. Erstelle (oder bearbeite, falls du es bereits hast) /etc/initramfs-tools/conf.d/resume mit der Swap-UUID und dem Resume-Offset.

Als nächstes müssen wir die Datei bearbeiten (oder erstellen, wenn sie nicht existiert). /etc/initramfs-tools/conf.d/resume Datei mit einem Texteditor als root. Verwenden Sie den folgenden Befehl, um diese Datei mit dem Nano-Befehlszeileneditor zu öffnen:

sudo nano /etc/initramfs-tools/conf.d/resume

Wenn Sie eine Zeile in dieser Datei haben, die mit „RESUME“ beginnt, bearbeiten Sie diese Zeile, oder wenn es keine solche Zeile gibt (oder die Datei komplett leer ist), fügen Sie die Zeile so hinzu, dass sie so aussieht:

RESUME=UUID=UUID_FROM_STEP_1 resume_offset=SWAP_OFFSET_FROM_STEP_2

Um die Datei zu speichern und Nano zu beenden, drücken Sie Ctrl +o , dann Enter , und dann Ctrl + x .

Beispiel mit dem Inhalt der /etc/initramfs-tools/conf.d/resume Datei von meinem Laptop:

RESUME=UUID=4a59c6a7-ca54-4e24-a362-3eac83bfe226 resume_offset=4974592

6. Initramfs aktualisieren.

Jetzt müssen Sie initramfs mit diesem Befehl neu generieren:

sudo update-initramfs -c -k all

7. Starten Sie Ihren Computer neu.

Verwenden Sie nach dem Neustart Ihres Computers den folgenden Befehl, um Ihren Computer in den Ruhezustand zu versetzen:

sudo systemctl hibernate

Im Moment müssen Sie Ihr Passwort eingeben, um in den Ruhezustand zu wechseln, und es gibt keine Menüoption, um Ihren Computer in den Ruhezustand zu versetzen, also müssen Sie dies alles von der Befehlszeile aus tun. Um Ihr System in den Ruhezustand zu versetzen, ohne ein Passwort einzugeben (und um eine Option zum Ruhezustand des Computers in den Energieoptionen Ihres Desktops zu haben (z. B. in einem Applet auf der Systemsteuerung)), lesen Sie die nächsten 2 Schritte.

Um den Ruhezustand zu beenden, drücken Sie den Netzschalter an Ihrem Computer.

Wenn Sie beim Ausführen dieses Befehls eine Fehlermeldung erhalten, die besagt, dass das System nicht über logind in den Ruhezustand versetzt werden konnte:Nicht genügend Auslagerungsspeicher zum Ruhezustand, dann haben Sie möglicherweise den Hinweis am Anfang des Artikels übersehen, in dem ich erwähne, dass es am besten ist eine Auslagerungsdatei haben, die mindestens so groß ist wie der Arbeitsspeicher Ihres Computers. Dieser Artikel erklärt, wie Sie von einer Auslagerungspartition zu einer Auslagerungsdatei wechseln – Sie können diese Anleitung auch verwenden, um eine größere Auslagerungsdatei zu erstellen.

Sie können nach Fehlern im Zusammenhang mit dem systemd Hibernate-Dienst suchen, indem Sie:

systemctl status systemd-hibernate.service

8. Optional. Ruhezustand ohne Eingabe eines Passworts zulassen (erforderlich für den nächsten Schritt). In einigen Desktop-Umgebungen reaktiviert dies die Energiemenüoptionen „Ruhezustand“ und „Hybrid-Sleep“.

Um Ihren Computer in den Ruhezustand zu versetzen, müssen Sie standardmäßig Ihr Passwort eingeben. Um den Ruhezustand ohne Passwort zuzulassen, erstellen / öffnen Sie /etc/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla mit einem Texteditor als root.

Der folgende Befehl öffnet /etc/polkit-1/localauthority/50-local.d/com.ubuntu.desktop.pkla als root mit dem Nano-Befehlszeileneditor:

sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.desktop.pkla

Fügen Sie in dieser Datei Folgendes ein:

[Enable hibernate in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
[Enable hibernate in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes

Speichern Sie nun die Datei und beenden Sie Nano (drücken Sie Ctrl + o , dann Enter , und dann Ctrl + x ).

In einigen Desktop-Umgebungen erhalten Sie dann (und nach dem Ab-/Anmelden) die Energieoptionen Ruhezustand und Hybrid-Sleep. Hier ist ein Beispiel mit den Energieoptionen von Xfce, nachdem Sie diesen Schritt ausgeführt haben:

Allerdings funktioniert dies nicht auf einigen Desktop-Umgebungen, die Ubuntu verwenden, wie z. B. mit der GNOME-Shell. In diesem Fall benötigen wir einen zusätzlichen Schritt (siehe unten).

das geht über AskUbuntu

9. Optional. Fügen Sie ein Menüelement für Ruhezustandsanwendungen hinzu oder verwenden Sie eine Ruhezustandsschaltfläche für die GNOME-Shell.

Wenn Sie die GNOME-Shell verwenden, können Sie eine Erweiterung verwenden, die eine Option hinzufügt, um Ihren Computer im Energiemenü des Systems in der oberen Leiste in den Energiesparmodus zu versetzen, die so genannte Schaltfläche „Schlafen“.

Hier ist das GNOME-Shell-Menü „Ausschalten/Abmelden“ mit aktivierter Erweiterung:

Wenn Sie die GNOME-Shell nicht verwenden, Ihre Desktop-Umgebung jedoch keine Energieoption für den Ruhezustand anzeigt oder Sie die oben erwähnte GNOME-Shell-Erweiterung nicht verwenden möchten, können Sie einen Eintrag in Ihrem Anwendungsmenü erstellen, indem Sie eine Datei namens Hibernate. Desktop in ~/.local/share/applications/ , z.B. Öffnen Sie den Nano-Befehlszeilen-Texteditor mit dieser Datei:

nano ~/.local/share/applications/hibernate.desktop

Und in dieser Datei fügen Sie Folgendes hinzu:

[Desktop Entry]
Type=Application
Name=Hibernate desktop
GenericName=Hibernate desktop
Comment=Enter hibernation
NoDisplay=false
Icon=drive-multidisk
Exec=systemctl hibernate
Terminal=true
Categories=System;Utility;Settings;

Sie können nun auf Ihrem Desktop zum Anwendungsmenü gehen und auf den Hibernate klicken Symbol, um Ihr System in den Ruhezustand zu versetzen. Damit dies funktioniert, müssen Sie den optionalen Schritt 9 von oben befolgen, um in den Ruhemodus zu wechseln, ohne das Passwort einzugeben.

Ich sollte auch klarstellen, was mit der Hybrid-Schlafoption ist . Neben Sleep / Suspend (Suspend to RAM) und Hibernate (Suspend to Disk) gibt es auch die Option Hybrid Sleep (auch Hybrid Suspend genannt), die Ihren Computer in den Ruhezustand versetzt und nach einer bestimmten Zeit in den Ruhezustand wechselt . Sie können die hybride Ruhezeit zwischen Suspend und Hibernation (zusammen mit anderen Optionen) einstellen, indem Sie /etc/systemd/sleep.conf verwenden Datei und starten Sie Ihr System neu. Mehr dazu findest du im Arch-Wiki.

Das könnte Ihnen gefallen:So aktivieren Sie die hardwarebeschleunigte Videodekodierung in den Browsern Google Chrome, Brave, Vivaldi und Opera unter Debian, Ubuntu oder Linux Mint


Debian
  1. So fügen Sie eine Auslagerungsdatei unter Ubuntu hinzu

  2. Ubuntu 20.04 – Wie aktiviere ich HWE?

  3. So erhöhen Sie die Swap-Größe unter Ubuntu Linux

  4. Wie aktiviere ich die error-log.txt-Protokollierung mithilfe der .htaccess-Datei?

  5. So installieren Sie g ++ unter Ubuntu

So aktivieren Sie automatische unbeaufsichtigte Sicherheitsupdates auf Ubuntu

So löschen Sie eine Datei in Ubuntu

So planen Sie Aufgaben unter Ubuntu 20.04 mit Crontab

So erstellen Sie eine Datei in Ubuntu Linux mit Befehl und GUI

So installieren Sie die Deb-Datei auf Ubuntu mit Gdebi

So fügen Sie eine Auslagerungsdatei unter Ubuntu 20.04 hinzu