In Ubuntu 12.04 e successivi, l'ibernazione è stata disabilitata per impostazione predefinita nel policykit . Come posso ripristinare questo?
In Ubuntu 12.04 e successivi, l'ibernazione è stata disabilitata per impostazione predefinita nel policykit . Come posso ripristinare questo?
Se questa risposta non funziona in Ubuntu 13.10, vedi qui per una risposta alternativa
Puoi seguire la documentazione ufficiale qui . L'ibernazione era disabilitato alla 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 riesci ad avviare nuovamente il sistema, puoi aggiungere un override in modo più o meno sicuro.
Per farlo, 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 versioni successive:
[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 quindi inserisci e quindi esci da nano premendo Ctrl - X .
Riavvia e ibernazione è tornata!
Oppure esegui killall unity-panel-service
per reimpostare il menu.
Alcuni utenti dovranno quindi eseguire sudo update-grub
per rendere disponibile l'opzione di ibernazione nel menu di alimentazione. Alcuni utenti potrebbero anche dover eseguire il logout, quindi accedere per visualizzarlo nel menu di alimentazione (in alto a destra).
Per prima cosa devi testare la tua macchina supporta la sospensione. Provalo con il comando:
sudo pm-hibernate
# or for newer Ubuntus like 17.04
sudo systemctl hibernate
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
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 poichè potresti avere più utenti (quindi non dipende da utenti multipli o superiori come manager invece di login1)
p.s .: ultima documentazione ufficiale link
Inoltre, per coloro che vogliono disabilitare il pulsante di sospensione (per vari motivi), procedere in modo analogo ...
Scegli qualsiasi nome di file, ma questo è 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 , Invio , Ctrl + X
Non c'è bisogno di riavviare, dovrebbe sparire non appena si entra nel menu di spegnimento.
Un'altra cosa:
Quando vuoi aggiungere l'opzione Ibernazione al pannello XFCE , devi fare clic con il pulsante destro del mouse sul tuo nome (topright) e selezionare properties
.
Dopodiché viene visualizzata una schermata:
Assicurati di controllare Hibernate come ho fatto io.
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 quindi 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
sudo gedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Modifica il file aperto e aggiungi questa riga:
[Re-enable hibernation]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
Dopodiché, riavvia il computer e, all'accesso, dovresti visualizzare l'opzione di sospensione nell'angolo in alto a destra.
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 a utilizzare TuxOnIce .
Prima assicurati di averne abbastanza di swap. Dovrebbe essere della stessa dimensione o più grande della quantità di RAM. Usa il comando
free
regola Swap & gt; Mem. Se questo non è il tuo caso, ingrandisci la dimensione dello swap. Quindi installa 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.
Ho tradotto sopra le risposte agli script bash
. Ciò rende l'installazione su più macchine meno faticosa.
Script 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
Script 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.
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
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:
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.
Ci sono due modi per risolvere questo problema.
/etc/initramfs-tools/conf.d/resume
Per prima cosa ottieni 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 tra "..."
double quote.
Apri il file di ripresa
gksudo gedit /etc/initramfs-tools/conf.d/resume
E in quel file, aggiungi una riga come questa p>
RESUME=UUID=a14f3380-810e-49a7-b42e-72169e66c432
Non dimenticare di sostituire il valore UUID effettivo ottenuto dal passaggio 1. Salva il file ed esci da gedit
Quindi, nel terminale, esegui questo comando
sudo update-initramfs -u
Ora potrai riprendere dalla modalità di sospensione
/etc/default/grub
. Apri un terminale ed esegui il comando seguente per aprirlo
gksudo gedit / etc / default / grub
Ci sarà una riga come GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
. Modifica la riga per inserire RESUME=UUID=<your-uuid-value-here>
dopo la parola splash
.
Ad 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 ottenuto dal comando sudo blkid | grep swap
.
Quindi fai questo comando
sudo update-grub
Questo ti consente anche di riprenderti con successo dalla sospensione.
Testato su due installazioni di Ubuntu, entrambe hanno funzionato
Ho Ubuntu Gnome 17.04 amd64 sul mio portatile. Ho fatto quanto segue per abilitare la sospensione:
$ sudo apt-get install hibernate
( fonte )
Questo installato anche libx86-1
uswsusp
vbetool
Quindi ho potuto ibernare con successo con sudo systemctl hibernate
. Non esiste un eseguibile pm-hibernate
nel mio percorso.
$ sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Inserito: ( source )
[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 link
Leggi altre domande sui tag power-management hibernate