Domanda Come abilitare la sospensione?


In Ubuntu 12.04 e successivi, l'ibernazione è stata disabilitata di default nel policykit. Come posso ripristinare questo?


417
2018-01-12 00:10


origine


Perché l'hanno disabilitato in primo luogo? Ha qualcosa a che fare con la perdita di audio? - Ali
per 13.10 vedi askubuntu.com/questions/361734/... - rogerdpack
Per rispondere alla domanda di Ali, era disabilitato perché molte persone avevano problemi di ibernazione a causa di problemi con le loro partizioni di swap. Tuttavia, in Ubuntu 14.10 Utopic Unicorn, ci sono piani per far funzionare la sospensione per sempre, con un pulsante e tutto il resto. - John Scott
Per 15.04, potresti aver bisogno di questa domanda askubuntu.com/q/614662/178596 - Wilf
Hibernate potrebbe non funzionare quando btrfs la partizione è usata. Vedere qui askubuntu.com/questions/768136/... - Anwar


risposte:


Se questa risposta non funziona in Ubuntu 13.10, vedi Qui per una risposta alternativa


Puoi seguire la documentazione ufficiale Qui. Era l'ibernazione Disabilitato il 12.04 per macchine che non sono certificate con Ubuntu.

Per abilitare la sospensione è necessario verificare se funziona correttamente eseguendo sudo pm-hibernate in un terminale. Il sistema proverà a ibernarsi. Se si è in grado di riavviare il sistema, è più o meno sicuro aggiungere un override.

Per fare ciò, inizia a modificare:

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

Riempi questo con:

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

O in 14.04 e successivi:

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

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

Salva premendo Ctrl-O poi accedere e quindi esci da nano premendo Ctrl-X.

Riavvio e ibernazione è tornato!

Oppure corri killall unity-panel-service per ripristinare semplicemente il menu.

Alcuni utenti dovranno quindi eseguire sudo update-grub per ottenere l'opzione di ibernazione per essere disponibile nel menu di alimentazione. Alcuni utenti potrebbero anche dover disconnettersi, quindi accedere per visualizzarlo nel menu di alimentazione (in alto a destra).


335
2018-06-23 19:17



Questa soluzione funziona anche nella shell 3.4 di GNOME con l'estensione "Alternative Status Menu". - Robert Wohlfarth
@ cuda.geek sì, non ti preoccupare più dell'intera cosa di gui, digitando questo piccolo comando è più veloce (ancora più veloce con alias ...) :) - Aditya M P
Veramente? È questa la versione più semplice per l'utente di cambiare una impostazione così semplice? Diventa ogni giorno più brutto ... - Esteban
Ottimo tutorial! Sono passato da Windows a Ubuntu e lo adoro! voi persone siete fantastici :) - gfivehost
Non penso fosse questo il punto di Esteban. Non dovrebbe richiedere la magia arcana per attivare l'ibernazione. Pensa a qualcosa nella directory / etc / default dove cambi una riga da enable_hibernate = "false" a enable_hibernate = "true". Pensa di avere una finestra di dialogo di sistema-> impostazioni che ti consente di attivarla solo con un avviso "potrebbe non funzionare, il tuo computer potrebbe non funzionare correttamente". - Scott Marlowe


Per prima cosa è necessario testare la macchina per supportare la sospensione. Provalo con il comando:

 sudo pm-hibernate
 # or for newer Ubuntus like 17.04
 sudo systemctl hibernate

Ubuntu 16.04 e versioni successive

Per abilitare nell'interfaccia dovrai eseguire sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla e riempire con:

[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

Ubuntu 14.04 e 15.04

Per abilitare nell'interfaccia dovrai eseguire sudo nano /etc/polkit-1/localauthority.conf.d/52-enable-hibernation.conf per Ubuntu 14.04 e 15.04 e compilare con:

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

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

Ha diverse stanze in quanto potresti avere più utenti (quindi non dipende da utenti multipli o superiori come manager invece di login1)

p.s .: ultima documentazione ufficiale https://help.ubuntu.com/stable/ubuntu-help/power-hibernate.html


45
2018-06-23 00:56



Ha funzionato per me Ubuntu 15.04, mentre la risposta originale accettata no. - Mike B.
@MikeB. Questo ha funzionato perché da Ubuntu 15.04, il sistema centrale di Ubuntu inizia a usare systemd, una nuova sostituzione per il vecchio upstart. L'ultima sezione del codice precedente con "logind" è per sistemi basati su systemd. Spero che questo chiarisca la tua situazione. : D - x__x
Ha funzionato per me ubuntu 16.04. l'unico problema era l'errore di autorizzazione negato che ho risolto utilizzando sudo. - Sandeep
Il primo passo sudo pm-hibernate risultati in command not found. Ho anche provato sudo apt install sudo pm-hibernate, che inoltre non è disponibile. Questa è la versione di Ubuntu 16.04. - L. D. James
La tua risposta dovrebbe apparire in cima alla lista, anche se ha meno voti è più significativo per i visitatori che utilizzano il software di oggi. - WinEunuuchs2Unix


Inoltre, per coloro che vogliono disabilitare il pulsante di sospensione (per vari motivi), procedere in modo analogo ...

Scegli qualsiasi nome di file, ma questo è un verboso / convenzione:

sudoedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla

Riempi questo con:

[Disable suspend by default]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no

Ctrl+O, accedere, Ctrl+X

Non c'è bisogno di riavviare, dovrebbe sparire non appena si entra nel menu di spegnimento.


32
2018-04-01 08:04



Intendi: ResultActive=yes
No, dovrebbe essere questo ResultActive=no. La risposta specifica che questo a disattivare sospendere. - Michael Mior


Un'altra cosa:

Quando si desidera aggiungere l'opzione di ibernazione a XFCEsul pannello, devi fare clic con il pulsante destro del mouse sul tuo nome (topright) e selezionare properties.

Successivamente viene visualizzata una schermata:

enter image description here

Assicurati di controllare Hibernate come ho fatto io.


14
2017-10-10 14:13





Innanzitutto, ti consiglio di verificare se il tuo laptop supporta la sospensione, perché il motivo per cui la sospensione è disabilitata di default è perché a volte ha risultati fatali su alcune macchine. Metti alla prova la tua macchina

Ctrl+alt+T e poi sudo pm-hibernate

La tua macchina dovrebbe ibernarsi. Riattiva la macchina dopo la sospensione e osserva se si comporta male o se agisce normalmente. Se si verificano anomalie dopo il letargo, quindi si consiglia di non continuare con la seguente procedura. Tuttavia, se funziona correttamente, continua ad attivare la modalità di sospensione entro

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

Modifica il file aperto e aggiungi queste righe:

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

Dopodiché, riavvia il computer e, all'accesso, dovresti visualizzare un'opzione di sospensione nell'angolo in alto a destra delle impostazioni.


14
2017-10-10 13:49



Perché il rollback?
è stato un errore errato - kelvinelove


Se la risposta con /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla non funziona come nel mio caso, non dimenticare di cancellare il file con:

sudo rm /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

E prova ad usare TuxOnIce.


Prima assicurati di averne abbastanza di swap. Dovrebbe essere della stessa dimensione o più grande della quantità di RAM. Usa comando

free

regola Scambia> Mem. Se questo non è il tuo caso, ingrandisci la dimensione dello swap. Quindi installare TuxOnIce di

sudo add-apt-repository ppa:tuxonice/ppa
sudo apt-get update
sudo apt-get install tuxonice-userui linux-generic-tuxonice linux-headers-generic-tuxonice

Quindi puoi provare a eseguire un test di ibernazione eseguito da:

sudo pm-hibernate

Non dimenticare di salvare il tuo lavoro prima di farlo.

Se tutto è andato bene, il tuo computer si spegnerà. Dopo averlo acceso, avrai il desktop nello stato in cui lo hai lasciato prima della sospensione.


6
2018-02-18 15:27



tuxonice funziona anche per me, mentre la sospensione nativa di Ubuntu 14.04 fallisce per qualche motivo! - Leszek


Abilitazione della sospensione con uno script

Ho tradotto sopra le risposte a bash script. Ciò rende l'installazione su più macchine meno faticosa.

copione enable-hibernate:

#!/bin/bash
#http://askubuntu.com/a/94963/164341
cat << '_EOF_' |sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
[Enable Hibernate]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
_EOF_
clear
echo
echo 'Hibernate enabled.'
echo

copione disable-suspend:

#!/bin/bash
#http://askubuntu.com/a/154821/164341
cat << '_EOF_' |sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla
[Disable suspend by default]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no
_EOF_
clear
echo
echo 'Suspend disabled.'
echo

Nota: non dimenticare di chmod +x entrambi gli script per renderli eseguibili.


5
2017-10-24 03:52





Un semplice comando che fa esattamente la stessa cosa della risposta accettata tranne che non in modo interattivo:

cat <<EOF | sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
EOF

4
2017-09-19 10:51





In 12.04, ho abilitato con successo l'opzione di ibernazione nel menu indicatore per ibernare. Ma ancora non ero in grado di riprendere con successo da ibernazione. Ho seguito questi passaggi per risolvere questo problema:

Abilita Hibernate in 12.04

Per attivare Hibernate, ho seguito questa risposta da Dima.

Dopo aver attivato l'ibernazione, ho potuto ibernare. Ma il problema è che non riesco a riprenderlo con successo da ibernazione. Ogni volta che avvio il mio PC da ibernazione, si avvia come un normale avvio. Quindi, ho dovuto fare queste cose per essere in grado di riprendere dall'ibernazione.

Le correzioni per poter riprendere dall'ibernazione

C'è un modo per risolvere questo problema.

1. Modifica del /etc/initramfs-tools/conf.d/resume file

  1. Prima prendi l'UUID della partizione di swap.

     sudo blkid | grep swap
    

    Questo produrrà una riga simile a questa:

    /dev/sda12: UUID="a14f3380-810e-49a7-b42e-72169e66c432" TYPE="swap"
    

    La linea effettiva non corrisponde a questo. Copia il valore di UUID in mezzo "..." doppia citazione.

  2. Apri il file di ripresa

    gksudo gedit /etc/initramfs-tools/conf.d/resume
    

    E in quel file, aggiungi una riga come questa

    RESUME=UUID=a14f3380-810e-49a7-b42e-72169e66c432
    

    Non dimenticare di sostituire il valore UUID effettivo ottenuto dal passaggio 1. Salvare il file ed uscire da gedit

  3. Quindi, nel terminale, esegui questo comando

    sudo update-initramfs -u
    

Ora sarai in grado di riprendere dal letargo

2. Modifica del /etc/default/grub file.

  1. Apri un terminale ed esegui il comando seguente per aprirlo

    gksudo gedit / etc / default / grub

  2. Ci sarà una linea come GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"   . Modifica la riga da inserire RESUME=UUID=<your-uuid-value-here> dopo la parola splash.

    Per esempio nel mio caso, la linea appare così dopo la modifica

     GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=a14f3380-810e-49a7-b42e-72169e66c432" 
    

    Assicurati di aver utilizzato il valore UUID che ottieni sudo blkid | grep swap comando.

  3. Quindi fai questo comando

     sudo update-grub
    

Ciò consente anche di riprendere correttamente dall'ibernazione.


Testati su due installazioni di Ubuntu, entrambi hanno funzionato


2



file questo come una domanda e risposta separate. Come le persone possono cercare "non riescono a riprendere dalla sospensione" e non trovare il tuo eccellente scrivere. - Dima
Dopo il tuo suggerimento, ho creato questa domanda auto-risposta askubuntu.com/questions/196364/... - Anwar


Ho Ubuntu Gnome 17.04 amd64 sul mio notebook. Ho fatto quanto segue per abilitare la sospensione:

$ sudo apt-get install hibernate (fonte)

Questo installato anche libx86-1uswsuspvbetool

Quindi potrei ibernarmi con successo sudo systemctl hibernate. Non c'è pm-hibernateeseguibile nel mio percorso.

$ sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

Inserito: (fonte)

[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.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes

installato https://extensions.gnome.org/extension/755/hibernate-status-button/


0