Ubuntu 16.04 wird nach dem Suspendieren oder Ruhezustand nicht heruntergefahren

14

Eigentlich kann meine Frage in diesem Forum (und auch anderswo ) identisch erscheinen ; Die Frage ist in der Tat die gleiche, aber ich frage sie trotzdem, weil ich mehr Informationen geben kann und weil ich eine Lösung aus dem Internet ausprobiert habe (möglicherweise wird es schlimmer).

Ich habe Ubuntu 15.10 in den Ruhezustand versetzt (den Deckel schließen). Nachdem ich es auf 16.04 aktualisiert habe (ich dachte, es wäre eine gute Sache, da diese Version im Gegensatz zu 15.10 LTS ist), kann ich den Ruhezustand (oder die Suspendierung!) Nicht mehr verwenden. Beim Herunterfahren wird nur der Bildschirm schwarz, die Betriebsanzeige leuchtet und ich kann nichts anderes tun, als ihn manuell herunterzufahren (langes Drücken des Netzschalters). Wenn ich es wieder einschalte, sehe ich die folgenden Zeilen

Bildbeschreibung hier eingeben

dann bootet Ubuntu.

Ab hier habe ich es mit probiert

sudo -s
echo shutdown > /sys/power/disk
echo disk > /sys/power/state

und

sudo -s
echo platform > /sys/power/disk
echo disk > /sys/power/state

Nur der erste hat teilweise und nur einmal funktioniert: Mit teilweise meine ich, dass nach dem brutalen Herunterfahren die Sitzung wiederhergestellt wurde.

Dann habe ich versucht, diesem Vorschlag zu folgen . Ich habe die nach den Befehlen geschriebenen Kommentare nicht verstanden, also habe ich die Befehle buchstäblich so eingegeben, wie sie sind (wobei ich dachte, dass ein Fehler wie "Dieser Befehl / Ordner existiert nicht" aufgetreten wäre, wenn die Befehle etwas zu ersetzen hätten ):

BEARBEITEN

cat /proc/meminfo
sudo swapoff -a
sudo dd if=/dev/zero of=/swapfile bs=1024 count=8M
sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile
sudo -b gedit /etc/fstab
free -m
swapon

mount | grep " / "
sudo blkid -g
sudo blkid
sudo filefrag -v /swapfile | grep "First block:"
sudo filefrag -v /swapfile
echo "resume=UUID=cdXX--X18 resume_offset=66050" | sudo tee /etc/initramfs-tools/conf.d/resume
sudo -b gedit /boot/grub/menu.lst
sudo -b gedit /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="... resume=UUID=cdXX--X18 resume_offset=66050"
sudo update-grub -y
sudo update-initramfs -u

Vielleicht war das eine schreckliche Idee, da ich das jetzt verstehe.

IMG:

Am Ende habe ich die oben verlinkte Frage gefunden und bin hierher gegangen , aber ich weiß nicht, was ich tun soll.

EDIT 2 Im Moment wenn ich eintrete

...$ sudo swapon -s

Ich bekomme absolut nichts

...$
Enrico Maria De Angelis
quelle
Vielleicht liegt es am BIOS. In meinem BIOS gehe ich zur Energieverwaltung und es sollte eine Option geben, was beim Suspendieren zu tun ist. Normalerweise ist meine S1, aber S3 ist das Ding.
dat tutbrus
Stechen Sie hier in die Dunkelheit, aber Sie sollten Ihre BIOS-Einstellungen untersuchen und sie überprüfen. Holen Sie Ihr Handbuch heraus und lesen Sie es durch. In der Vergangenheit gab es unzählige Probleme, bei denen ein BIOS-Switch die Lösung darstellte.
Jonathan
1
Machen Sie die sehr schlechte Idee rückgängig. Dies war ein Proof-of-Concept, um Ubuntu dazu zu bringen, den Auslagerungsspeicher für den Ruhezustand zu verwenden. Entfernen Sie als root mit sudo die letzte hinzugefügte Zeile /etc/initramfs-tools/conf.d/resumeund die beiden hinzugefügten Zeilengruppen für resume von etc/default/grubund führen Sie die letzten beiden Zeilen aus, um grub und initrd zu aktualisieren. Löschen / Auslagerungsdatei. Laufen sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target. Versuchen Sie eines dieser Ziele mit sudo systemctl suspend. Was geschieht?
emk2203
Am Ende habe ich beschlossen, Ubuntu 15.10 neu zu installieren. Jetzt funktioniert der Ruhezustand wieder. Vielleicht werde ich 16.04 auf einer anderen Partition installieren. Wenn ich das tue, werde ich auf diese Frage und die Antworten verweisen.
Enrico Maria De Angelis

Antworten:

6

Ruhezustand erzwingen, um den Computer auszuschalten:

Nachdem ich lange nach einer Antwort darauf gesucht hatte, die das Problem tatsächlich ansprach (nicht verwandte), fand ich hier einen Tipp , der die Arbeit für mich erledigte:

Erstellen Sie eine Datei im pmKonfigurationsverzeichnis:

sudo vim /etc/pm/config.d/hibernate_mode

das setzt die Variable HIBERNATE_MODEso:

HIBERNATE_MODE="shutdown"

Anschließend wird der Computer im Ruhezustand wie erwartet nach Abschluss des Vorgangs heruntergefahren. Eine Erklärung für die Einstellung finden Sie HIBERNATE_MODEim Handbuch für pm-hibernate :

Standardmethode zum Ausschalten des Systems im Ruhezustand. Wenn nicht festgelegt, verwendet das System die Kernel-Standardeinstellung als Standardwert. Überprüfen Sie / sys / power / disk auf gültige Werte. Der Standardwert wird von [eckigen Klammern] umgeben.

Mein Standard in dieser Datei war platform. Wenn Sie die obige Variable so einstellen, shutdowndass sie diese überschreibt, wird ausgeführt, was wir möchten.

Zugehörige Informationen und Tipps zum ordnungsgemäßen Betrieb des Ruhezustands:

In Bezug auf diese "verwandten Probleme" scheint jeder mit Tipps zum schnellen Debuggen des Ruhezustands zu kämpfen:

  1. Überprüfen Sie, ob der Befehl sudo pm-hibernatetatsächlich etwas bewirkt. Wenn nicht, wird keiner dieser anderen Tipps einen Unterschied machen. Wenn dies nicht funktioniert, stellen Sie sicher, dass 1) die Größe Ihrer Swap-Partition größer als die Ihres RAM ist und 2) der sichere Start in Ihrem BIOS deaktiviert ist.

  2. Erst wenn dieser Befehl funktioniert, können Sie den Ruhezustand nach Belieben in Ihr System integrieren. Ein paar gebräuchliche:

    • Hinzufügen des Ruhezustands zum Ubuntu-Menü: Dies scheint die beste Antwort für mich zu sein. Offizielle Dokumentation hat auch eine etwas andere Version.
      Hinweis: Sobald der Ruhezustand zum Ubuntu-Menü hinzugefügt wurde, müssen Sie möglicherweise auch den Alternativaufruf zu beheben sudo systemctl hibernate. Anscheinend wird (zumindest für Ubuntu 16.04) die Ubuntu-Menüoption sudo systemctl hibernateanstelle von aufgerufen sudo pm-hibernate. systemctl hibernatewurde für mich durch Hinzufügen des folgenden Inhalts zur Datei behoben /etc/systemd/sleep.conf:

      [Sleep]
      HibernateMode = Herunterfahren

      Wenn die Datei noch nicht existiert, können Sie sie erstellen. Mehr Infos hier .

    • Ändern Sie das Verhalten des Netzschalters (der standardmäßig im interaktiven Menü angezeigt wird): Um ihn in den direkten Ruhezustand zu versetzen oder herunterzufahren, müssen Sie den zugehörigen gsettings- Eintrag ändern . Viele andere Antworten gehen über die GUI, wenn das Ihr Boot schwimmt. Um die verfügbaren Optionen anzuzeigen, verwenden Siegsettings range org.gnome.settings-daemon.plugins.power button-power

BT
quelle
2

Wenn ich Ihr letztes Image und EDIT 2 sehe, kann ich verstehen, dass Ubuntu keine Swap-Partition auf Ihrem System finden kann. Ich schlage daher vor, dass Sie eine Swap-Partition erstellen, die Ihrer RAM-Größe entspricht oder größer ist, und es erneut versuchen, indem Sie sie ausführen

sudo pm-hibernate

Sie können mit GParted eine Swap-Partition erstellen. Führen Sie diese aus, um sie zu installieren

sudo apt-get install gparted
DigiGoon
quelle
2

Ich hatte nach dem Upgrade von 15.10 auf 16.04 das gleiche Problem:

  • Das Schließen des Deckels hat nichts gebracht
  • Das manuelle Anhalten mit dem Menüelement in der Taskleiste führte zu einem halb angehaltenen Status, der den einzigen Ausweg darstellt, um das System zurückzusetzen.

Ich habe diese Probleme durch gelöst

  1. Kernel auf 4.4.8 upgraden (nach diesem Suspend vom Menü hat bei mir geklappt)
  2. Hinzufügen der Zeile HandleLidSwitchDocked=suspendzu /etc/systemd/logind.conf (wodurch der Deckel wieder funktioniert).

Ich denke, beide Probleme sind Fehler, die behoben werden sollten ( https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1574120 ).

Pinguinwizzard
quelle
Hat dies das Problem nur für den Ruhezustand oder auch für den Winterschlaf gelöst?
Enrico Maria De Angelis
0

Der Ruhezustand wurde standardmäßig deaktiviert.

Versuche dies

sudo pm-hibernate

Wenn der Ruhezustandstest funktioniert, können Sie den Befehl sudo pm-hibernate weiterhin verwenden, wenn Sie den Ruhezustand aktivieren möchten.

Sie können die Option Ruhezustand auch in den Menüs aktivieren. Verwenden Sie dazu Ihren bevorzugten Texteditor, um /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla zu erstellen. Fügen Sie der Datei Folgendes hinzu und speichern Sie:

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes

Weitere Informationen zum Ruhezustand 16.04 finden Sie unter diesem Link

Herunterfahren

sudo shutdown -h now

Neustarten

sudo shutdown -r now
Jarvis
quelle
Wie ich geschrieben habe, hat sudo pm-hibernate vor dem Upgrade von 15.10 auf 16.04LTS sehr gut funktioniert. Das Problem sollte also die 16.04LTS-Version betreffen. Außerdem habe ich möglicherweise etwas sehr Falsches getan, als ich den Anweisungen gefolgt bin, ohne sie zu verstehen. Können Sie mir bei der Behebung dieser Probleme helfen?
Enrico Maria De Angelis