Kann nach dem Ruhezustand nicht fortgesetzt werden

8

Ich habe den Ruhezustand mit Ubuntu 16.04 ohne Probleme verwendet, aber plötzlich funktionierte er nicht mehr richtig. Unabhängig davon, ob ich über das Power-Menü in den Ruhezustand gehe oder es verwende sudo pm-hibernate, wird der Computer ausgeschaltet. Wenn ich ihn jedoch wieder einschalte und Ubuntu aus dem Grub-Menü auswähle, wird nur ein schwarzer Bildschirm angezeigt. Ich habe einige Lösungen ausprobiert (siehe unten), aber keine hat funktioniert.

Ich bin wirklich enttäuscht, dass ich mit jeder Ubuntu-Version, die ich verwende, normalerweise ähnliche Probleme mit dem Ruhezustand habe (mit verschiedenen Laptops).

PS: Ich habe Dual Boot mit Windows 10, aber der Ruhezustand hat lange Zeit perfekt damit funktioniert.

Hat nicht funktioniert:

Karim Sonbol
quelle
Ich habe das gleiche Problem mit einem Laptop von mir - wenn ich aus dem Ruhezustand zurückkehre - schwarzer Bildschirm. Für mich hat es nie funktioniert. Die "Problemumgehung" für meinen Laptop besteht darin, ALT + STRG + F1 zu drücken, dann einige Sekunden zu warten und dann ALT + STRG + F7 zu drücken. Das erweckt es wieder zum Leben (auf meinem Laptop).
Vanessa Deagan
Danke für den Vorschlag, hat aber bei mir nicht funktioniert.
Karim Sonbol
Wie wäre es, wenn Sie einfach Ihren Deckel schließen und wieder öffnen? (einen Versuch wert!)
Vanessa Deagan
Nochmals vielen Dank @VanessaDeagan, aber immer noch nichts passiert.
Karim Sonbol
1
Wenn Sie es noch nicht gesehen haben: bugs.launchpad.net/bugs/1743094
Steve

Antworten:

9

Ich hatte die gleichen Probleme. Es gibt einen Fehler im neuesten Kernel in 16.04. Hier sind die expliziten Schritte, die ich gemacht habe. Machen Sie das erste und hören Sie dort auf, wenn es das Problem für Sie löst. Wenn nicht, fahren Sie fort.

1. Stellen Sie den Computer so ein, dass er mit dem vorherigen Kernel startet

Beginnen mit:

uname -r

Meins sagt 4.13 ... Dann mach:

grep -i "menuentry '" /boot/grub/grub.cfg

Sie sehen die verschiedenen Menüeinträge in grub. In meinem Fall gab es zusammen mit "Ubuntu, mit Linux 4.13 ..." eine Menüoption zum Booten mit dem vorherigen Kernel. Es hieß Ubuntu mit Linux 4.10.0-28-generic . In derselben Zeile haben Sie so etwas wie 'gnulinux-4.10.0-28-generic-advanced ... (eine Reihe von Zeichen hier)'. Kopieren Sie diesen Text, und dann müssen wir grub2 anweisen, standardmäßig mit diesem Kernel zu booten:

sudo cp / etc / default / grub /etc/default/grub.back

sudo gedit / etc / default / grub

Dann habe ich diese Zeile eingefügt:

GRUB_DEFAULT = "gnulinux-advanced-4a50e1e8-56d9-413e-9954-55648888a31d> gnulinux-4.10.0-28-generic-advanced-4a50e1e8-56d9-413e-9954-55648888a31d"

Bitte kopieren Sie diese Zeile nicht wörtlich, sondern verwenden Sie die Ausgabe des vorherigen Befehls grep wie gesagt. Dann speichern und,

sudo update-grub

Starten Sie dann neu und überprüfen Sie, ob die Ausgabe von "uname -r" der ältere Kernel ist (4.10 ... in meinem Fall). Möglicherweise können Sie jetzt in den Ruhezustand wechseln oder nicht. Wenn nicht, fahren Sie mit dem nächsten Schritt fort.

2. Installieren Sie andere Dinge für den Ruhezustand als den Standard:

In meinem Fall wurde durch die Verwendung des älteren Kernels der schwarze Bildschirm des Todes entfernt und ich konnte nach dem Ruhezustand fortfahren, aber der Inhalt des Disk-Images wurde gelöscht, dh es war identisch mit einem Neustart, nicht mit dem Ruhezustand. Also habe ich etwas Scheiße installiert, die anders überwintern kann:

sudo apt-get install uswsusp

Schließen Sie dann das Terminal, öffnen Sie es erneut und geben Sie Folgendes ein:

sudo s2disk

Dies soll den Computer in den Ruhezustand versetzen. Wenn nach der Wiederaufnahme alles so ist, wie Sie es verlassen haben, haben Sie das Problem gelöst. Sie müssen jedoch noch mit Schritt 4 fortfahren, um Ubuntu mitzuteilen, dass Sie das neue Material standardmäßig verwenden möchten und dass Sie Optionen für den Ruhezustand in den Anwendungen haben möchten.

3. Sagen Sie Grub 2, wo sich die Swap-Partition befindet:

Bei mir hat es immer noch nicht funktioniert, also musste ich grub sagen, wo sich die Swap-Partition befindet:

cat / etc / fstab

Ich konnte dort lesen "# swap war während der Installation auf / dev / sda2", also habe ich grub erneut bearbeitet:

sudo gedit / etc / default / grub

Und fügte hinzu:

GRUB_CMDLINE_LINUX_DEFAULT = "intel_pstate = Lebenslauf deaktivieren = / dev / sda2"

Der wichtige Teil ist "resume = / dev / sda2", aber die vorherige Sache (Intel Blablabla) ist aus anderen Gründen da. Nun, der nächste Schritt ist:

sudo update-grub

Starten Sie den Computer neu und versuchen Sie erneut, den Ruhezustand zu aktivieren, z. B.: Öffnen Sie einen Film mit vlc mit:

sudo s2disk

Wenn das Zeug nach dem Fortsetzen noch vorhanden ist, haben Sie das Problem behoben.

4. Fordern Sie Ubuntu auf, das neu installierte Ruhezustand-Material anstelle des Standardmaterials zu verwenden:

Sie müssen Ubuntu jetzt anweisen, s2disk für den Ruhezustand zu verwenden, anstatt die standardmäßig enthaltenen Elemente:

sudo gedit /etc/pm/config.d/00sleep_module

Und dort einfügen:

SLEEP_MODULE = "uswsusp"

Speichern und schließen Sie die Datei. Dann:

sudo gedit /etc/polkit-1/localauthority/50-local.d/enable-hibernate.pkla

Und dort einfügen:

[Aktivieren Sie den Ruhezustand standardmäßig im Upower wieder]

Identität = Unix-Benutzer: *

Aktion = org.freedesktop.upower.hibernate

ResultActive = ja

[Aktivieren Sie den Ruhezustand standardmäßig in logind wieder]

Identität = Unix-Benutzer: *

Action = org.freedesktop.login1.hibernate; org.freedesktop.login1.handle-hibernate-key; org.freedesktop.login1; org.freedesktop.login1.hibernate-multiple-session; org.freedesktop.login1.hibernate-ignore- hemmen

ResultActive = ja

Starten Sie neu und versuchen Sie es erneut.

5. Wenn Sie nach dem Ausführen von Schritt 4 keinen Ruhezustand verwenden können, gehen Sie sudo systemctl hibernatewie folgt vor

Schritt 4 reicht nicht aus, um in Ubuntu 18.10 zu uswsusp zu wechseln.

Bearbeiten Sie den Ruhezustand

sudo systemctl edit systemd-hibernate.service

Und fügen Sie Folgendes hinzu

[Service]
ExecStart=
ExecStartPre=-/bin/run-parts -v -a pre /usr/lib/systemd/system-sleep
ExecStart=/usr/sbin/s2disk
ExecStartPost=-/bin/run-parts -v --reverse -a post /usr/lib/systemd/system-sleep

Systemd aktualisieren

sudo systemctl daemon-reload

Testen Sie das Setup, indem Sie Folgendes ausführen

sudo systemctl Ruhezustand

Mephisto
quelle
Danke, ich habe den alten Kernel aus dem Boot-Menü ausgewählt und der Ruhezustand funktioniert damit. Ich werde die anderen Update-Grub-Schritte später überprüfen, aber ich hoffe, dass sie den aktuellen Kernel bald reparieren.
Karim Sonbol
Eigentlich habe ich den alten Kernel einmal aus dem Grub-Menü ausgewählt und dann in den Ruhezustand versetzt. Wenn ich es wieder öffne und die normale "Ubuntu" -Option ohne erweiterte Optionen wähle, merkt es sich meine Wahl und verwendet den alten Kernel, und zum Glück sind alle meine offenen Apps vorhanden.
Karim Sonbol
Gibt es einen besonderen Grund, den neuen Kernel nicht einfach zu deinstallieren und beim alten zu bleiben?
lrkwz
3

@karim Ich hatte das gleiche Problem hier ist, wie es behoben wurde:

Verwenden Sie die UUID der Swap-Partition anstelle des Einhängepunkts im Parameter RESUME resume=UUID=#in /etc/default/grubund/etc/initramfs-tools/conf.d/resume

Erstellen Sie einen Eintrag für die Swap-Partition /etc/fstab ohne einen Einhängepunkt wie diesen

# Entry for Swap : 
UUID=# none  swap    sw              0       0

In /etc/default/grubIch habe einen separaten Eintrag für die Wiederaufnahme des Ruhezustands verwendet

# FOR HIBERNATION 
GRUB_CMDLINE_LINUX="resume=UUID=..."

Erstellen Sie ein Policykit in der lokalen Behörde (pkla), wie von @Mephisto erläutert

Aktualisieren Sie initramfs und GRUB

sudo update-initramfs -u -k all
sudo update-grub

Starten Sie neu, öffnen Sie einige Apps und verwenden Sie systemctl hibernate(ohne sudo), um zu überprüfen, ob es funktioniert

Roey
quelle
Ich hatte alles eingerichtet, außer 'sudo update-initramfs -u -k all' schien mein Problem zu beheben. Vielen Dank.
Zamicol
2

Ich hatte auch dieses Problem, das mich plagte ... und eine Lösung nach vielen Versuchen war, Ubuntu 18.04 neu zu installieren, und jetzt funktioniert es perfekt. Ich benutze auch Nvidias "getesteten" Treiber, da Nvidia zuvor der Schuldige war.

Vielleicht war es das "sudo add-apt-repository ppa: Grafik-Treiber" ppa, das "Extra" Stuff installierte, und / oder der 396-Treiber, der die Ruhezustände meines Laptops beeinträchtigte. In beiden Fällen funktioniert es zu diesem Zeitpunkt einwandfrei mit dem 390-getesteten Treiber des NVidia. Vor dem Wechsel zum Nouveau arbeitete der Fahrer.

markackerman8-gmail.com
quelle
2

Vielen Dank für Ihre Antworten. Das Problem wurde in Kernel 4.15 gelöst. Ich habe es gerade versucht und es funktioniert. Anscheinend hat der HWE-Kernel das Problem behoben ( linux-generic-hwe-16.04 package).

Wenn Sie Ubuntu 16.04 verwenden, müssen Sie nur die neuesten Updates installieren, um den Kernel zu aktualisieren. Sie können weitere Informationen über das lesen hier .

Meine aktuelle Kernel-Version ist 4.15.0-33-generic.

Karim Sonbol
quelle