GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Winterschlaf am 18.04?

Für diese Frage gibt es hier bereits Antworten :Wie debuggt man Suspend?

(3 Antworten)
Vor 2 Jahren geschlossen.

Winterschlaf auf meinem Ubuntu 18.04 hat nicht sofort funktioniert (ich meine sudo systemctl hibernate ). Also habe ich vor einiger Zeit mehrere Versuche unternommen, das zu beheben, und kann mich leider nicht mehr genau erinnern, was ich getan habe.

Aber jetzt:

sudo hibernate

Das System wird erfolgreich in den Ruhezustand versetzt und beim nächsten Start wird der Systemstatus erfolgreich wiederhergestellt, außer dass der Anmeldebildschirm nicht angezeigt wird, was nicht gut ist. Und wenn viele Anwendungen laufen, kann das System nach einer solchen Wiederaufnahme bis zu 20 Minuten lang eingefroren sein (ich sehe Anwendungsfenster, kann den Mauszeiger bewegen, aber das System reagiert nicht auf Klicks), aber danach funktioniert es normal.

sudo systemctl hibernate

tut etwas, fährt das System herunter, aber beim nächsten Booten sehe ich mehrere Meldungen delete orphaned node und schließlich sauberer Neustart, als ob es keinen Winterschlaf gäbe.

Bitte helfen Sie mir, es aufzuräumen und den Ruhezustand in der GUI-Oberfläche zu aktivieren.

Gleichzeitig funktioniert Suspend to Memory und Resume from Memory ohne Probleme, einschließlich des Anmeldebildschirms bei Resume .

Die primäre Frage, die ich habe, ist:Welcher der beiden Mechanismen hibernate oder systemctl hibernate sollte ich mit 18.04 verwenden?

Einzelheiten

Das System hat eine Swap-Partition

$ lsblk | grep SWAP
└─sda5   8:5    0  16,8G  0 part [SWAP]
$ free -m
              total        used        free      shared  buff/cache   available
Mem:          15894        3386        9945        1311        2561       11848
Swap:         17163        2150       15013

und in /etc/default/grub es hat

GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash resume=/dev/sda5″
GRUB_CMDLINE_LINUX=””

und

$ cat /sys/power/state
freeze mem disk
$ cat /sys/power/disk
[platform] shutdown reboot suspend test_resume

[GELÖST] 🙂

Endlich habe ich es geschafft, den Winterschlaf zur Arbeit zu bringen. Solange ich kein tiefes Verständnis für das Thema habe, beschreibe ich lieber, was ich getan habe. Also

  1. Vollständig entfernte pm-utils und uswsusp , dann sudo update-initramfs -c -k all und reboot

Nach diesem Ruhezustandsversuch endete ein sauberer Neustart statt einer Wiederaufnahme. Also dann

  1. systemd neu installiert dann geänderte Gerätenamen in UUIDs so wie

in /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT=”leise Splash-Wiederaufnahme=UUID=2c8ec945-6967-4538-93ef-49eb4df6f2a1″

in /etc/initramfs-tools/conf.d/resume

RESUME=UUID=2c8ec945-6967-4538-93ef-49eb4df6f2a1

dann

$ sudo update-initramfs -c -k all
$ sudo update-grub
$ reboot

Danach sudo systemctl hibernate und Resume erfolgreich, aber ohne Anmeldebildschirm, also

  1. In den Einstellungen (gui) für die Power-Button-Aktion habe ich „Hibernate“ zugewiesen

Wenn ich jetzt den Netzschalter drücke, geht das System in den Ruhezustand und wird dann über den Anmeldebildschirm wiederhergestellt.

Vielen Dank an alle Beteiligten

UPD:Jetzt habe ich eine noch bessere Lösung gefunden – Auslagerungsdatei verwenden

Ich habe dies bei einer neuen Desktop-Installation von Ubuntu 18.10 verifiziert und nehme an, dass es auch mit einer frischen 18.04-Desktop-Installation funktioniert, da beide die Auslagerungsdatei file verwenden standardmäßig, d.h. sie weisen keine Swap-Partition zu standardmäßig. Aber die Standard-Auslagerungsdatei ist unabhängig von der Größe des Systemspeichers 2 GB groß, also sollte sie erhöht werden.

Die vollständige Beschreibung finden Sie zB hier.

Beste Antwort

Hier finden Sie zwei hervorragende Antworten auf Fragen zum Winterschlaf mit etwas mehr Details:

Kleine Urwald-Kami Antwort auf:Ubuntu 18.04 kann nach dem Ruhezustand nicht fortgesetzt werden

Siehe auch:Deja-dup fragt ständig nach dem Passwort?

Zanna Antwort auf:Wie kann ich unter Ubuntu 16.04 in den Ruhezustand wechseln?

Normalerweise verwende ich Hibernate nicht, habe aber kürzlich versucht, es zu verwenden, während ich einen Fehler verfolgte, und festgestellt, dass Sie, um an 18.04 zu arbeiten, eine Zeile zu /etc/default/grub hinzufügen müssen, um ihm mitzuteilen, wo es fortgesetzt werden soll.

Am 16.04 war es für mich nicht notwendig, den Parameter „resume=“ zu grub hinzuzufügen, daher denke ich, dass die Änderung vor relativ kurzer Zeit erfolgt ist.

Sie verwenden wahrscheinlich am besten die UUID (Universally Unique Identifier) ​​und können das Programm „Disks“ verwenden, um die UUID Ihrer Swap-Partition herauszufinden und sie einfach von dort zu kopieren und einzufügen.

Verwenden Sie sudo nano /etc/default/grub zur Zeile hinzufügen

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

sodass es den zusätzlichen Kernelparameter resume=UUID=theUUIDofyourswappartition hat zwischen den Anführungszeichen.

Ihre wird anders sein, aber in meinem Fall lautet die Zeile:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=549816d3-0ed8-44fa-a7e4-968db519a141"

(beenden Sie Nano mit Strg +x , drücken Sie y um die Änderungen vorzunehmen und einzugeben um den Dateinamen zu akzeptieren)

Sie müssen sudo update-grub ausführen um Ihre Änderungen wirksam zu machen, aber beim nächsten Neustart sollten Sie in der Lage sein, ohne Probleme in den Ruhezustand zu wechseln.

Soweit mir bekannt ist, besteht die Funktionalität des Ruhezustands darin, dort fortzufahren, wo Sie aufgehört haben, also ist es nicht darauf ausgelegt, zum Anmeldebildschirm zu gehen und nach Ihrem Passwort zu fragen.

Ich weiß nicht, ob Sie es so ändern können, dass es nach Ihrem Passwort fragt, aber es könnte sich lohnen, eine separate Frage zu stellen, um zu sehen, ob jemand anderes weiß, was zu tun ist.

Auslagerungsdatei

Wenn Sie anstelle einer separaten Auslagerungspartition eine Auslagerungsdatei haben, müssen Sie auch das zusätzliche resume_offset= hinzufügen Parameter.

Das Arch Linux Wiki hat einen großartigen Abschnitt dazu, aber im Grunde sollte Ihre Auslagerungsdatei auf der Hauptpartition liegen, auf der Sie Ubuntu installiert haben.

Um den Offset herauszufinden, geben Sie resume_offset= ein Sie können ein Terminal öffnen und

eingeben
sudo filefrag -v /swapfile

Sie erhalten etwas, das so aussieht:

ext:     logical_offset:        physical_offset: length:   expected: flags:
   0:        0..   32767:      34816..     67583:  32768:            
   1:    32768..   63487:      67584..     98303:  30720:            
   2:    63488..   96255:     100352..    133119:  32768:      98304:
   3:    96256..  126975:     133120..    163839:  30720:   
etc...

und Sie möchten die erste Zahl in der ersten Zeile unter physical_offset (in diesem Fall 34816 )

Nur als Beispiel habe ich unter Verwendung der UUID und des physischen Offsets meines Computers mit einer Auslagerungsdatei den GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" geändert Zeile zu sein

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=09e601cd-5bac-491a-9115-fda1b2eb4664 resume_offset=34816"

Vergessen Sie nicht, sudo update-grub auszuführen und neu starten, aber danach sollte der Ruhezustand korrekt funktionieren.


Ubuntu
  1. Nautilus-Git-Integration?

  2. Docker-Probleme in Ubuntu 20.04?

  3. Kein Netzwerk nach Upgrade auf 16.04?

  4. Wie installiere ich Graphviz 2.29 in 12.04?

  5. Ubuntu-Anmeldeschleife 14.04?

So erstellen Sie einen Sudo-Benutzer unter Debian

So installieren Sie Tomcat 9 auf CentOS 7

Ubuntu 20.04 Tomcat-Installation

Sudo-Befehl unter Linux

So überwintern Sie Ubuntu 20.04 LTS Focal Fossa

schönes sudo oder sudo nice?