Questa pagina presenta l'ibernazione, detta anche sospensione su disco, STD, o S4, in Debian.

UEFI / Secure Boot

Il kernel Linux disabilità la possibilità dell'ibernazione quando è in uso il Secure Boot perché non può garantire che il file di swap non sia immodificato. cfr. "Unencrypted hibernation/suspend to swap are disallowed as the kernel image is saved to a medium that can then be accessed."

L'ibernazione con l'avvio sicuro (secure boot) è stata disabilitata a partire dal kernel 4.13, ma può essere abilitata se si disabilita kernel_lockdown; i kernel Debian, però, hanno kernel_lockdown abilitato perciò può essere necessario ricompilare dai sorgenti ma questo approccio non è raccomandato.

È più o meno ancora in fase di lavorazione. Una prima patch è stata rifiutata e di fatto è in corso una seconda revisione.

Configurazione della sospensione e dell'ibernazione in in Debian Jessie

Si può avere l'ibernazione che funziona senza fare nulla (anche senza uswsusp), a patto di avere una partizione di swap grande abbastanza per contenere un'immagine del sistema.

Gli utenti di GNOME potrebbero voler installare l'estensione Hibernate Status Button.

Uswsusp

uswsusp è lo strumento predefinito di ibernazione in Debian Etch. Usa una partizione di swap esistente per salvare lo stato della memoria (vedere /etc/uswsusp.conf).

Ibernazione con il comando hibernate

$ sudo apt install hibernate
$ sudo hibernate

Ibernazione senza partizione di swap

Come Ibernare senza partizione di swap.

Debug dell'ibernazione

Funzionalità di test del kernel

A partire da Linux 2.6.25, il kernel ha una nuova funzionalità di test dell'ibernazione: changelog.

Rende possibile testare il codice base dell'ibernazione con l'aiuto dell'attributo /sys/power/pm_test introdotto in una precedente patch per testare la sospensione.

La scrittura di una stringa appropriata in questo file fa sì che il codice di ibernazione funzioni in una delle modalità di test definite come segue:

freezer
testa il freeze dei processi
devices
testa il freeze dei processi e la sospensione dei dispositivi
platform
testa il freeze dei processi, la sospensione dei dispositivi e i metodi di controllo globali della piattaforma(*)
processors
testa il freeze dei processi, la sospensione dei dispositivi, i metodi di controllo globali della piattaforma(*) e la disabilitazione delle CPU non di avvio
core
testa il freeze dei processi, la sospensione dei dispositivi, i metodi di controllo globali della piattaforma(*), la disabilitazione delle CPU non di avvio e la sospensione dei dispositivi di piattaforma/sistema

*) I metodi di controllo globali della piattaforma sono disponibili solamente su sistemi ACPI e vengono testati solamente se la modalità di ibernazione è impostata a "platform"

Successivamente, se un'ibernazione viene avviata normalmente, il nucleo centrale dell'ibernazione eseguirà le operazioni normali fino al punto indicato dal livello di test specificato.

Poi attende 5 secondi ed esegue le operazioni di ripresa necessarie per la transizione del sistema ad uno stato completamente funzionante.

I messaggi effettivi (riportati per chi usa google) sono hibernation debug: Waiting for 5 seconds e swsusp debug: Waiting for 5 seconds.

Rimuovere la configurazione vecchia

Nella configurazioni precedenti era raccomandato definire il ripristino del device nella configurazione di grub. Tali informazioni vanno rimosse. Controllare e pulire il proprio /etc/default/grub e la variabile GRUB_CMDLINE.

Cambiare o spostare la partizione di swap

In caso sia necessario cambiare la partizione di swap, oltre ad aggiornare /etc/fstab, si deve cambiare anche /etc/initramfs-tools/conf.d/resume ed eseguire

apt-get install --reinstall initramfs-tools

o

update-initramfs -u

Non dimenticarsi che nel file di ripristino non si può fornire l' UUID lvm, in questo caso deve essere fornito il percorso per dev/mapper

RESUME=/dev/mapper/vg0-swap