18.04 ibernazione con UEFI e avvio sicuro abilitato


14

"sudo systemctl start hibernate.target" ha funzionato perfettamente con 16.04 su un Acer B117 usando un boot legacy; L'aggiornamento a 18.04 mi ha costretto a utilizzare UEFI e (requisito Acer) abilitato per l'avvio protetto. La sospensione funziona ancora, ma ho bisogno di un letargo.

La partizione di swap è attiva ed è uguale alla dimensione della RAM + 2 GB;

GRUB_CMDLINE_LINUX_DEFAULT = "quiet splash resume = UUID = myswapuuid"

journalctl -xe ha rivelato che non è stato possibile accedere a / sys / power / disk

cat / sys / power / disk: [disabilitato]

cat / sys / power / state: blocca mem

Eventuali suggerimenti?

Risposte:


12

Ho lo stesso problema e, sfortunatamente, è impossibile con il kernel Ubuntu ufficiale dalla versione 4.13 a causa del patchset di blocco del kernel (efi-lockdown). La sostanza è:

Al momento non è possibile verificare l'immagine del ripristino quando si ritorna dall'ibernazione. Ciò potrebbe compromettere il modello di attendibilità dei moduli firmati, quindi fino a quando non riusciamo a lavorare con le immagini di ibernazione firmate, lo disabilitiamo quando il kernel è bloccato.

È possibile visualizzare un impegno Bionic correlato qui .

Questa è una decisione controversa e Linus ha rifiutato di unire queste modifiche al kernel di Linux.

Un po 'più di dettagli che puoi trovare è l'articolo Blocco del kernel in 4.17? e i suoi commenti.

Quindi mentre aspettiamo un po 'di software magico, che funzionerà con immagini di ibernazione firmate, possiamo usare solo un altro kernel o disabilitare l'avvio sicuro .

PS Sarò felice di votare un'altra risposta se qualcuno ha risolto questo problema.


Grazie mille, capendo perché è un buon passo avanti.
olli61

Quale kernel potrei usare? L'ibernazione è una caratteristica essenziale per me. (Mi aspetto di averne uno più recente di 4.15, idealmente 4.18, poiché il mio WiFi funziona su quest'ultimo, ma non sul primo.)
nsandersen

1

spero che questo possa aiutare qualcuno, ma sto eseguendo popos / ubuntu 19.04. Nella mia installazione sono stato in grado di ibernare usando s2disk o pm-hibernate, ma il ripristino non è riuscito. Per risolvere questo problema, poiché il mio sistema viene avviato utilizzando UEFI anziché grub. Ho dovuto reinstallare il caricatore di avvio. Per verificare se si sta eseguendo UEFI, utilizzare quanto segue:

[ -d /sys/firmware/efi ] && echo "Installed in UEFI mode" || echo "Installed in Legacy mode"

se in modalità UEFI, ho seguito questa guida per reinstallare il bootloader, varia se si utilizza un disco nvme o un disco sata: https://support.system76.com/articles/bootloader/

La chiave è eseguire questo comando:

sudo update-initramfs -c -k all

assicurati che nelle opzioni di kernalboot specifichi la partizione o l'UUID da dove riprendere, ad esempio qualcosa del genere:

resume = UUID = ed8347ed-2eb4-40bc-bc77-cc53b987ed88

Puoi aggiungere questo: 1) sudo kernel-stub -a "resume = UUID = ..." 2) modifica il file /etc/initramfs-tools/conf.d/resume e aggiungi: resume = UUID = ed8347ed- 2eb4-40bc-bc77-cc53b987ed88

controlla il tuo /var/log/syslogfile per qualcosa del genere:

Aug 4 22:26:42 pop-os /usr/bin/kernelstub[19639]: kernelstub : DEBUG kopts: root=UUID=b37019a8-91f5-445f-94c1-7359a49ed5df ro quiet loglevel=0 systemd .show_status=false resume=UUID=ed8347ed-2eb4-40bc-bc77-cc53b987ed88

Se il curriculum è mancante o sbagliato, dovrai aggiornare nuovamente il tuo boot kernal.


Grazie, questa è l'unica risposta che mi ha permesso di riprendere senza problemi.
Emmanuel M. Smith,

Come utente di crittografia, non avevo bisogno di cambiare initramfs, ma dovevo disabilitare cryptswap e riattivare lo scambio normale commentando e commentando opportunamente in /etc/fstabe /etc/crypttab. cryptswap usa una chiave casuale ad ogni avvio, quindi non funziona per l'ibernazione.
fuzzy:

Se vuoi una partizione di swap crittografata, puoi dare un'occhiata a questo: help.ubuntu.com/community/EnableHibernateWithEncryptedSwap
Lingster
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.