L'ibernazione non è ancora presente nel menu in 13.10 dopo l'attivazione tramite polkit. Come abilitare?


52

So che dal 12.04, abbiamo bisogno di aggiungere una regola di policykit per abilitare l'ibernazione (vedi domanda Come abilitare l'ibernazione? E la Documentazione ufficiale ).

Posso portare correttamente il mio laptop in modalità di ibernazione con sudo pm-hibernateo sudo s2disk, quindi la regola è attiva e funziona, ma nel menu manca ancora la voce di ibernazione.

Posso capire guardando attraverso la fonte del pacchetto indicatore-sessione (ma non capendo l'intero codice) che c'è ancora una voce del menu di ibernazione nel codice e dovrebbe essere visualizzata quando il sistema è in grado di ibernare. Per favore calmati se sei infuriato da questo. È molto improbabile che si tratti di una cospirazione , ma piuttosto di un bug / regressione a un livello più profondo, che può accadere quando si sposta il codice o lo si sostituisce.

Domanda: cosa bisogna fare in 13.10 per dire correttamente indicator-sessionche il sistema può andare in letargo?


Possibile duplicato: l' ibernazione non è ancora disponibile - Nessuna attività, perché all'epoca era in fase di sviluppo impertinente, quindi fuori portata per AskUbuntu.

Segnalazione di bug correlati: https://bugs.launchpad.net/ubuntu/+source/indicator-session/+bug/1232814


La mia domanda sulla stessa cosa: askubuntu.com/questions/361058
pileofrocks

@pileofrocks Siamo spiacenti, oggi ho trascurato il tuo nel mio lettore di feed.
LiveWireBT

La tua è formulata in un modo migliore però e più tecnicamente (fatto la mia domanda quando non ero ancora a conoscenza del bug), se un altro dovesse essere chiuso, allora dovrebbe essere quello fatto da me. : P
pileofrocks

Risposte:


63

14.04 e oltre

Mitch sottolinea nella sua risposta per 14.04 e 16.04 che dovresti controllare 10-vendor.d/com.ubuntu.desktop.pklaprima di modificare qualsiasi cosa. Verificare inoltre che Avvio protetto sia disabilitato e se ciò riporta l'opzione di menu.

Riattivare l'opzione di ibernazione nel menu

Per riattivare l'opzione di ibernazione nel menu, è /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pklanecessario modificarlo in modo simile al seguente in saucy (13.10):

[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
ResultActive=yes

Quindi riavviare o eseguire killall indicator-session-servicenella sessione e si dovrebbe avere nuovamente la funzionalità di sospensione / opzione di menu. Crea il file se non esiste già.

Indagine dalla segnalazione di bug

Citazione dal post di Jeffery To sul rapporto bug del Launchpad # 1232814 :

Per Saucy, la sessione degli indicatori è stata aggiornata per utilizzare logind (org.freedesktop.login1) invece di upower.

Se controlli /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla, vedrai che l'ibernazione è disabilitata di default sia in upower che in logind.

Quindi il primo passo per riattivare l'opzione Sospensione è modificare /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla in qualcosa del tipo:

[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
ResultActive=yes

Dopo il riavvio, il menu della sessione della schermata di accesso dovrebbe avere un'opzione di ibernazione.

[...]

Tutti i ringraziamenti e il merito vanno a Jeffery!

Perché l'ibernazione è stata disabilitata?

Esiste una segnalazione di bug sul launchpad che suggerisce di disabilitare la sospensione / ibernazione invece di tracciare quale hardware "certifica" per quali modalità di alimentazione. Si dice che sia un approccio più scalabile.

Un'altra cosa da menzionare è che l'utilizzo di UEFI Secure Boot e l'ibernazione sembrano essere possibili ma possono essere un rischio per eludere il primo. ( 1 , 2 ) Come promemoria, quando si utilizza l'ibernazione si memorizza tutto nella RAM su disco senza crittografia, incluse le password per i file system e i contenitori crittografati.

Ad un certo punto con 16.04 ho dovuto disabilitare Secure Boot per poter ibernare i miei laptop. Nel mio caso ho usato uswsusp e il test con s2disk ha restituito il messaggio seguente. Questo potrebbe darti un suggerimento che il tuo problema, perché non puoi andare in letargo sebbene tutto il resto sia a posto, è legato al Secure Boot:

s2disk: Could not open the snapshot device. Reason: Operation not permitted 

Tuttavia, ti preghiamo di capire che questo non è un posto per lamentarsi e per favore sii gentile.

Domande correlate


3
Grazie per il metodo, ma non ho ancora successo dopo un riavvio e dopo "killall Indicator-Session-Service". Hai menzionato "o hai fatto altri problemi dopo il riavvio", quindi credo di essere in quella categoria. È molto strano trovare un comportamento così importante ancora non supportato dopo così tante iterazioni di questo sistema operativo, ma è tutto ciò che ho in questo momento. Incrocia le dita e rimango con sudo pm-letargo per ora.
cdaddr,

3
Un paio di domande: perché nel mondo l'ibernazione è disabilitata? E facendo le opzioni di ibernazione disponibili sopra in Impostazioni risparmio energia? Non ho bisogno di ibernazione nel menu a forma di ingranaggio, ma per il mio laptop ibernazione a livelli di batteria critici. Grazie per la risposta!
Oxwivi,

1
Non sono in grado di andare in letargo anche dopo questo !! :( per favore
aiutatemi

1
@constantius Sì, dovresti crearlo.
LiveWireBT

1
@SalmanPK Allora potresti fare un'altra domanda. Assicurati anche di avere abbastanza SWAP.
Seth,

2

Se hai ancora problemi a far funzionare l'ibernazione, controlla il commento # 58 su questo rapporto di bug :

Ho trovato una soluzione alternativa su Ubuntu GNOME 13.10: basta installare ibernazione:

sudo apt-get install hibernate

L'unico problema è che apport genererà tre errori all'avvio dopo il normale spegnimento. Per questo puoi disabilitare apport:

sudo -H gedit /etc/default/apport

Quindi cambia enabled=0.

Per modificare le impostazioni da ibernazione modifica i file in /etc/hibernate.

L'installazione del pacchetto hibernate sembra apportare le modifiche giuste e ha funzionato molto bene per me in Ubuntu GNOME 13.10 x64


1

Se hai seguito i passaggi precedenti e non ha ancora funzionato, ti suggerisco di cambiare /etc/pm/sleep.d/20_custom-ehci_hcdin:

[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
ResultActive=yes

per farlo funzionare, quindi seguire i passaggi sopra menzionati per abilitare l'opzione di ibernazione. Questo ha funzionato davvero per me.

Alla fine avrai 2 file modificati con " [Re-enable hibernate ... ]" Prova questo. Funzionerà sicuramente se stai usando Ubuntu 13.10


1

Una cosa che vorrei aggiungere qui, che AFAICR, è la partizione di swap non montata. Se la partizione di swap non è montata, l'opzione di ibernazione non verrà visualizzata / abilitata indipendentemente dalla configurazione dell'ibernazione.

E se la partizione di swap non si monta automaticamente, la sessione ibernata andrebbe persa.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.