Difference between revisions of "TuxOnIce (Italiano)"

From ArchWiki
Jump to: navigation, search
m (link GRUB -> GRUB Legacy)
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
[[Category:Power management (Italiano)]]
 
[[Category:Power management (Italiano)]]
 
[[Category:Laptops (Italiano)]]
 
[[Category:Laptops (Italiano)]]
{{i18n|TuxOnIce}}
+
[[en:TuxOnIce]]
 
+
 
Questa è una guida veloce all'installazione di [http://www.tuxonice.net TuxOnIce] (conosciuto anche come suspend2), un framework avanzato per la sospensione/ibernazione, che supporta l'ibernazione in una partizione swap o in un normale file con una compressione veloce LZO. Visita il sito di TuxOnIce per una lista completa delle [http://www.tuxonice.net/features caratteristiche].
 
Questa è una guida veloce all'installazione di [http://www.tuxonice.net TuxOnIce] (conosciuto anche come suspend2), un framework avanzato per la sospensione/ibernazione, che supporta l'ibernazione in una partizione swap o in un normale file con una compressione veloce LZO. Visita il sito di TuxOnIce per una lista completa delle [http://www.tuxonice.net/features caratteristiche].
  
Line 8: Line 7:
 
TuxOnIce consiste in una patch del kernel, più un'interfaccia utente aggiuntiva. Solo la patch è necessaria, l'interfaccia utente fornisce un'interfaccia testuale o grafica durante il ciclo di sospensione/ibernazione.  
 
TuxOnIce consiste in una patch del kernel, più un'interfaccia utente aggiuntiva. Solo la patch è necessaria, l'interfaccia utente fornisce un'interfaccia testuale o grafica durante il ciclo di sospensione/ibernazione.  
  
Puoi usare il pacchetto {{Package AUR|linux-ice}} o {{Package AUR|linux-pf}} presenti su [[AUR]]. Questo automatizza la procedura di patch, compilazione ed installazione del kernel, e la generazione della initramfs con un hook adeguato.  
+
È possibile usare il pacchetto {{AUR|linux-ice}} o {{AUR|linux-pf}} presenti su [[AUR (Italiano)|AUR]]. Questo automatizza la procedura di patch, compilazione ed installazione del kernel, e la generazione della initramfs con un hook adeguato. In questo modo si ha un buon controllo del processo di installazione e volendo si può personalizzare apportando i cambiamenti voluti.
Per compilare kernel26-ice, vedere [[Arch User Repository#Installing packages]] per maggiori informazioni, e mantenere il controllo sul processo di installazione, e la sua facilità di apportare modifiche, se si desidera ripetere il processo. Per il kernel26-pf, c'è un repo non ufficiale con dei kernel precompilati generici e ottimizzati per la maggior parte architetture (fare una ricerca di "pfkernel" nei [[Unofficial_User_Repositories]]).
+
  
Altrimenti, sarà necessario applicare la patch, configurare e compilare il proprio kernel, visitare il sito [[Kernel Compilation From Source]] e [[Kernel Compilation with ABS]] per maggiori delucidazioni. La patch necessarie possono essere ottenute presso il sito TuxOnIce di cui sopra.
+
Altrimenti, sarà necessario applicare la patch, configurare e compilare il proprio kernel, visitare le pagine [[Kernel Compilation From Source]] e [[Kernel Compilation with ABS]] per maggiori informazioni. Le patch necessarie possono essere ottenute presso il sito TuxOnIce di cui sopra.
  
Quindi, potrebbe essere necessario eseguire [[mkinitcpio]], che crea il ramdisk:
+
Ora è necessario installare il pacchetto {{aur|hibernate-script}} da [[AUR (Italiano)|AUR]] che verrà richiamato da TuxOnIce. Questo pacchetto è lo script ufficiale fornito dal team di TuxOnIce.
  
# mkinitcpio -p kernel26-ice
+
I file di configurazione di hibernate-script sono in {{ic|/etc/hibernate}}.
o
+
# mkinitcpio -p kernel26-pf
+
  
In seguito, installare il pacchetto ''hibernate-script'' da [[AUR]] che si userà per richiamare TuxOnIce. Hibernate-script è lo script di default
+
== Ricreare initramfs ==
sviluppato dal Team di TuxOnIce.
+
  
I file di configurazione per hibernate-script si trovano in {{Filename |/etc/hibernate}}.
+
Se si vuole usare un initramfs (cosa che Arch fa di default) è necessario aggiungere "resume" agli HOOKS di [[mkinitcpio (Italiano)|mkinitcpio]]. In più, se si vuole usare la compressione veloce LZO aggiungere "lzo" all'array MODULES dello stesso file.
 +
Un esempio di {{ic|/etc/mkinitpio.conf}}:
 +
MODULES="lzo"
 +
HOOKS="base udev autodetect pata scsi sata resume filesystems"
 +
Ricreare ora l'initramfs:
 +
# mkinitcpio -p linux-ice
 +
o
 +
# mkinitcpio -p linux-pf
  
== Configurazione del Boot Manager ==
+
== Configurazione del Boot Loader ==
Prima che si possa usare la funzione di sospensione, bisogna aggiungere il parametro "resumeai parametri passati al kernel nel file di configurazione del boot manager. Questo punterà alla partizione di swap o al file di ibernazione.
+
Prima che si possa usare la funzione di sospensione, bisogna aggiungere il parametro {{ic|resume}} ai parametri passati al kernel nel file di configurazione del boot loader (se si sta usando un sistema con una partizione swap "specificata" nella configurazione del kernel questo passaggio non è necessario). Questo punterà alla partizione di swap o al file di ibernazione.
  
=== Suspend To Swap Partition (Ibernazione in una partizione di Swap) ===
+
=== Ibernazione in una partizione di Swap ===
 
{{Note|A partire l'ultima versione di TuxOnIce (3.0.99.44), aggiungere il parametro "resume" al kernel non è più necessario, sarà rilevato automaticamente se l'unità di swap contiene un'immagine avviabile. Ci sarà solo bisogno di impostare il metodo di swap adeguatamente. Per maggiori informazioni, visitare [http://www.tuxonice.net/].}}
 
{{Note|A partire l'ultima versione di TuxOnIce (3.0.99.44), aggiungere il parametro "resume" al kernel non è più necessario, sarà rilevato automaticamente se l'unità di swap contiene un'immagine avviabile. Ci sarà solo bisogno di impostare il metodo di swap adeguatamente. Per maggiori informazioni, visitare [http://www.tuxonice.net/].}}
  
Quindi configurare il metodo swap (assicurarsi che sia specificata la partizione giusta) in {{Filename | /etc/hibernate/tuxonice.conf}}
+
Quindi configurare il metodo swap (assicurarsi che sia specificata la partizione giusta) in {{ic| /etc/hibernate/tuxonice.conf}}
  
 
  SuspendDevice swap:/dev/sda3
 
  SuspendDevice swap:/dev/sda3
  
=== Suspend to swap file (Ibernazione su un file) ===
+
=== Ibernazione su un file di swap ===
{{Note|Auto-detection as mentioned previously doesn't seem to work with swap files, you will still need to manually set the kernel resume parameter.}}
+
{{Note|L'autorilevamento, come detto in precedenza, non sembra funzionare con i file di swap; sarà dunque necessario impostare manualmente il parametro "resume" del kernel.}}
  
If you use a swap file instead of a swap partition, you will need to pass the location of its header to TuxOnIce. TuxOnIce can list all available swap headers.
+
Se si utilizza un file di swap invece di una partizione di swap, sarà necessario passare il percorso dei suoi header a TuxOnIce. TuxOnIce è in grado di elencare tutti gli header di swap disponibile.
  
 
  cat /sys/power/tuxonice/swap/headerlocations
 
  cat /sys/power/tuxonice/swap/headerlocations
  
Use the given string as-is in both /etc/hibernate/tuxonice.conf and passed to your kernel as a resume parameter.  
+
Utilizzare la stringa data così com'è in {{ic|/etc/hibernate/tuxonice.conf}} e passarla al kernel come parametro "resume".  
  
 
  SuspendDevice swap:/dev/sda7:0x1087070
 
  SuspendDevice swap:/dev/sda7:0x1087070
  
Append the following to your kernel parameters in your bootloader's configuration file:
+
Aggiungere la seguente riga nei parametri del kernel nel file di configurazione del bootloader:
  
 
  resume=swap:/dev/sda7:0x1087070
 
  resume=swap:/dev/sda7:0x1087070
  
{{Note|Specifying the resume device by UUID is supposed to work, but I was not able to get it to work. This may be a TuxOnIce or a mkinitcpio issue, YMMV. Specifying /dev/sd** should work in all cases though.}}
+
{{Note|Specificare il dispositivo di "resume" per mezzo degli UUID dovrebbe funzionare, ma non è del tutto garantito. Questo potrebbe essere un problema di TuxOnIce o di mkinitcpio. Specificando {{ic|/dev/sdxx}} dovrebbe invece funzionare in tutti i casi.}}
  
===Suspend to file===
+
===Sospensione su file===
For the file allocator, you will have to prepare a hibernation file. This is different from the standard swap file in that this file is ONLY used for hibernation and not as a general system swap file. The previous method is recommended as being more efficient in terms of disk space. First configure the /etc/hibernate/tuxonice.conf file, uncomment the "FilewriterLocation" option:
+
Per l'allocatore di file, si dovrà preparare un file di ibernazione. Questo è diverso dal file di swap standard dato che questo file viene utilizzato SOLO per l'ibernazione e non come file di swap del sistema generale. Il metodo precedente è raccomandata per essere più efficiente in termini di spazio su disco. Configurare il file {{ic|/etc/hibernate/tuxonice.conf}} e decommentare l'opzione "FilewriterLocation":
  
 
  FilewriterLocation /suspend_file 1000
 
  FilewriterLocation /suspend_file 1000
  
1000 is the amount of disk space reserved for the hibernation file, in this case 1000 megabytes. Usually an amount of 50% - 75% of your total amount of RAM will suffice.
+
1000 è la quantità di spazio su disco riservato per il file di ibernazione, in questo caso 1000 megabyte. Di solito un valore pari al 50%-75% della quantità totale di RAM è sufficiente.
  
Next, run the following command to create the hibernation file:
+
Successivamente, eseguire il seguente comando per creare il file di ibernazione:
  
 
  # hibernate --no-suspend
 
  # hibernate --no-suspend
  
Take a look in /sys/power/tuxonice/resume for what to pass to your kernel. You should see something like file:/dev/hda7:0x10011f, in which case you should append "resume=file:/dev/hda7:0x10011f" as a kernel parameter in your lilo.conf file or GRUB's menu.lst.
+
Dare un'occhiata a {{ic|/sys/power/tuxonice/resume}} per vedere cosa passare al kernel. Si dovrebbe vedere qualche file del genere:{{ic|1=file:/dev/hda7:0x10011f}}, nel qual caso si dovrebbe aggiungere {{ic|1=resume=file:/dev/hda7:0x10011f}} come parametro del kernel nel file {{ic|/etc/lilo.conf}} (per [[LILO]]) o {{ic|/boot/grub/menu.lst}}  (per [[GRUB Legacy (Italiano)|GRUB]]) o {{ic|/boot/grub/menu.cfg}} (per [[GRUB2 (Italiano)|GRUB2]]).
 
+
== Rigenerazione initramfs ==
+
Per usare l'initramfs, si ha bisogno di aggiungere l'hook ''resume'' nell'array HOOKS nel file di configurazione di mkinitcpio. Inoltre, per velocizzare il processo usando la compressione LZO, aggiungere il modulo lzo nell'array MODULES sempre nel file {{Filename |/etc/mkintcpio.conf}}:
+
 
+
{{Filename |/etc/mkintcpio.conf}} d'esempio:
+
 
+
  MODULES="lzo"
+
HOOKS="base udev autodetect pata scsi sata resume filesystems"
+
 
+
Rigenerare quindi l'initramfs:
+
 
+
# mkinitcpio -p kernel26-ice
+
  
 
== Sospensione e Resuming ==  
 
== Sospensione e Resuming ==  
Con gli hibernate-script, il metodo di ibernazione preferito può essere configurato nel file {{Filename |/etc/hibernate/hibernate.conf}}. Se si elencano diversi metodi, il primo sarà quello utilizzato. Notare che ''hibernate'' può essere anche usato con [[Suspend to RAM]] o vanilla swsusp, ma questo non è parte della guida.  
+
Con gli hibernate-script, il metodo di ibernazione preferito può essere configurato nel file {{ic|/etc/hibernate/hibernate.conf}}. Se si elencano diversi metodi, il primo sarà quello utilizzato. Notare che ''hibernate'' può essere anche usato con [[Suspend to RAM]] o vanilla swsusp, ma questo non è parte della guida.  
  
Per TuxOnIce usar:
+
Per TuxOnIce usare:
  
 
  TryMethod tuxonice.conf
 
  TryMethod tuxonice.conf
  
Le opzioni specifiche per TuxOnIce sono nel file {{Filename |/etc/hibernate/tuxonice.conf}}. Assicurarsi che le seguenti righe siano decommentate e configurate adeguatamente:
+
Le opzioni specifiche per TuxOnIce sono nel file {{ic|/etc/hibernate/tuxonice.conf}}. Assicurarsi che le seguenti righe siano decommentate e configurate adeguatamente:
  
 
  UseTuxOnIce yes
 
  UseTuxOnIce yes
 
  Compressor lzo
 
  Compressor lzo
  
Ci sono altre opzioni aggiuntive e trucchi che possono essere impostati in {{Filename |/etc/hibernate/tuxonice.conf}} e {{Filename |/etc/hibernate/common.conf}},
+
Ci sono altre opzioni aggiuntive e trucchi che possono essere impostati in {{ic|/etc/hibernate/tuxonice.conf}} e {{ic|/etc/hibernate/common.conf}},
 
informazioni più dettagliate possono essere trovate sul sito ufficiale di [http://www.tuxonice.net/HOWTO-4.html TuxOnIce] o nella pagina [[Suspend to Disk]] di questo wiki.
 
informazioni più dettagliate possono essere trovate sul sito ufficiale di [http://www.tuxonice.net/HOWTO-4.html TuxOnIce] o nella pagina [[Suspend to Disk]] di questo wiki.
  
Line 95: Line 85:
 
  # hibernate -F /etc/hibernate/tuxonice.conf
 
  # hibernate -F /etc/hibernate/tuxonice.conf
  
Si può uscire dal ciclo di sospensione premendo il pulsante Esc. Premendo Shift + R, si forzerà il sistema a riavviarsi dopo l'ibernazione.
+
Si può uscire dal ciclo di sospensione premendo il pulsante {{Keypress|Esc}}. Premendo {{keypress|Shift + R}}, si forzerà il sistema a riavviarsi dopo l'ibernazione.
 
   
 
   
Se tutto è andato bene, dovresti essere in grado di effettuare il resuming usando la stessa voce del menù di Grub che usi normalmente per avviare il sistema. Se imposti questa opzione come default, effettuerai sempre il resuming se un file di ibernazione è disponibile su disco o sulla swap.  
+
Se tutto è andato bene, dovresti essere in grado di effettuare il resuming usando la stessa voce del menù di Grub che usi normalmente per avviare il sistema. Se imposti questa opzione come default, effettuerai sempre il resuming se un file di ibernazione è disponibile su disco o sulla swap. È bene testare la sospensione/ibernazione prima da terminale, e dopo essersi assicurati che funziona, provarla da X.
{{Attenzione | Non usare mai un kernel differente per effettuare il resume da quello che hai usato per l'ibernazione! Se pacman aggiorna il tuo kernel, non ibernare prima che tu abbia riavviato la macchina e avviato il nuovo kernel. It is recommended that you test the suspend/hibernate from a text console first and then once you have confirmed that it works try it from within X. }}  
+
 
 +
{{Attenzione | Non usare mai un kernel differente per effettuare il resume da quello che hai usato per l'ibernazione! Se pacman aggiorna il tuo kernel, non ibernare prima che tu abbia riavviato la macchina e avviato il nuovo kernel.}}
 +
 
 +
Si può rendere questa pratica più sicura aggiungendo il demone ''hibernate-cleanup'' nella stringa DAEMONS in {{ic| /etc/rc.conf}}. Questo script verifica che qualsiasi vecchia immagine per il resume sia cancellata della partizione di swap durante l'avvio. Questo dovrebbe rendere più sicuro il sistema anche nel caso si scelga il kernel sbagliato dal menù di Grub. Il demone hibernate-cleanup è incluso nel pacchetto hibernate-script.
 +
 
 +
== Configurazioni addizionali di pm-utils ==
 +
Se si usa [[GNOME (Italiano)|GNOME]] come [[Desktop Environment (Italiano)|DE]], o un qualunque altro DE che richieda [[pm-utils (Italiano)|pm-utils]] per spegnere e sospendere sono necessarie ulteriori configurazioni per TuxOnIce.
 +
 
 +
Tali configurazioni vanno fatte in {{ic|/etc/hibernate/hibernate.conf}} e dovrebbero funzionare. Alcune configurazioni però possono dare problemi con pm-utils. La compressione, per esempio, è di default lzo a meno che si intervenga manualmente. Editare il file sotto {{ic|/etc/pm/sleep.d/}} è un'ottima alternativa per far si che le configurazioni vengano lette correttamente.
 +
 
 +
Per cambiare la compressione usata da TuxOnIce, per esempio, editare {{ic|/etc/pm/sleep.d/00doit}} e aggiungere qualcosa del genere:
 +
 
 +
#!/bin/bash
 +
case $1 in
 +
hibernate)
 +
#Possible compressors include lzo, lzf, and none
 +
echo none > /sys/power/tuxonice/compression/algorithm
 +
;;
  
È bene testare la sospensione/ibernazione prima da terminale, e dopo essersi assicurati che funziona, provarla da X. Si può rendere questa pratica più sicura aggiungendo il demone ''hibernate-cleanup'' nella stringa DAEMONS in {{Filename | /etc/rc.conf}}. Questo script verifica che qualsiasi vecchia immagine per il resume sia cancellata della partizione di swap durante l'avvio. Questo dovrebbe rendere più sicuro il sistema anche nel caso si scelga il kernel sbagliato dal menù di Grub. Il demone hibernate-cleanup è incluso nel pacchetto hibernate-script.
+
Linee addizionali possono essere usate per cambiare altre opzioni come ad esempio il logging level di default (in {{ic|/sys/power/tuxonice/user_interface/default_console_level}}).
  
 
== Usare UserUI - Un'Interfaccia Utente per TuxOnIce (Opzionale) ==  
 
== Usare UserUI - Un'Interfaccia Utente per TuxOnIce (Opzionale) ==  
  
È anche possibile utilizzare un'interfaccia utente testuale o grafica (fbsplash) con una barra di avanzamento. Per fare questo, installare il pacchetto tuxonice-userui da AUR. Questo pacchetto dipende dalla libreria statica freetype2, fornita dal pacchetto freetype2-static (anche questo da AUR).
+
È anche possibile utilizzare un'interfaccia utente testuale o grafica ([[fbsplash (Italiano)|fbsplash]]) con una barra di avanzamento. Per fare questo, installare il pacchetto {{aur|tuxonice-userui}} da [[AUR (Italiano)|AUR]]. Questo pacchetto dipende dalla libreria statica freetype2, fornita dal pacchetto {{aur|freetype2-static}} (anche questo da AUR).
  
Nel file {{Filename | /etc/hibernate/tuxonice.conf}}, imposta l'interfaccia utente desiderata:
+
Nel file {{ic| /etc/hibernate/tuxonice.conf}}, imposta l'interfaccia utente desiderata:
  
  ProcSetting user_interface/program /usr/sbin/tuxoniceui_text #Interfaccia Testuale
+
  ProcSetting user_interface/program "/usr/sbin/tuxoniceui" #Interfaccia Testuale
  
 
o
 
o
  
  ProcSetting user_interface/program /usr/sbin/tuxoniceui_fbsplash #Interfaccia Grafica con fbsplash
+
  ProcSetting user_interface/program "/usr/sbin/tuxoniceui -f" #Interfaccia Grafica con fbsplash
  
 
L'interfaccia con fbsplash necessita di un symlink al tema fbsplash, in questo modo:
 
L'interfaccia con fbsplash necessita di un symlink al tema fbsplash, in questo modo:
Line 118: Line 125:
 
  # ln -s /etc/splash/arch-banner-noicons/ /etc/splash/tuxonice
 
  # ln -s /etc/splash/arch-banner-noicons/ /etc/splash/tuxonice
  
Without this symlink, there will be no progress indicators during suspend/resume.
+
Senza questo symlink, non ci saranno indicatori di progresso durante il suspend/resume.
  
It is probably necessary to regenerate the initramfs after changing the symlink above.
+
Probabilmente sarà necessario rigenerare l'initramfs dopo aver cambiato il link simbolico sopra.
  
The text interface may be good for debugging TuxOnIce, as it displays some messages.
+
L'interfaccia testuale può essere utile per il debug di TuxOnIce, in quanto visualizza alcuni messaggi.
  
You won't see a user interface for the first few seconds of the resume process unless you add the ''userui'' hook to your mkinitcpio (before the ''resume'' hook) configuration and regenerate your initramfs, but this is also optional.  
+
Non si vedrà un'interfaccia utente durante i primi secondi del processo di ripristino a meno che non si aggiunga l'hook '''userui''' alla propria configurazione mkinitcpio (prima dell'hook '''resume''') e si rigeneri l'initramfs, ma anche questo è opzionale.  
  
 
Generate initramfs:
 
Generate initramfs:
  
  # mkinitcpio -p kernel26-ice
+
  # mkinitcpio -p linux-ice
  
 
Per verificare se la userui funziona, da terminale eseguite:
 
Per verificare se la userui funziona, da terminale eseguite:
Line 141: Line 148:
 
*Il sito di [http://www.tuxonice.net TuxOnIce] e la sua [http://wiki.tuxonice.net wiki] sono un ottima fonte di informazioni.
 
*Il sito di [http://www.tuxonice.net TuxOnIce] e la sua [http://wiki.tuxonice.net wiki] sono un ottima fonte di informazioni.
 
*Altre informazioni generali sulla sospensione/ibernazione con gli hibernate-script si possono trovare nella pagina [[Suspend_to_Disk | Suspend to Disk]] di questa wiki. Questa tratta argomenti avanzati come problemi con certe configurazioni hardware.
 
*Altre informazioni generali sulla sospensione/ibernazione con gli hibernate-script si possono trovare nella pagina [[Suspend_to_Disk | Suspend to Disk]] di questa wiki. Questa tratta argomenti avanzati come problemi con certe configurazioni hardware.
*Un'altra buona fonte di informazioni è la [http://en.gentoo-wiki.com/wiki/TuxOnIce wiki] di Gentoo.
+
*Un'altra buona fonte di informazioni è la [http://en.gentoo-wiki.com/wiki/TuxOnIce wiki di Gentoo].

Revision as of 21:34, 30 June 2012

Questa è una guida veloce all'installazione di TuxOnIce (conosciuto anche come suspend2), un framework avanzato per la sospensione/ibernazione, che supporta l'ibernazione in una partizione swap o in un normale file con una compressione veloce LZO. Visita il sito di TuxOnIce per una lista completa delle caratteristiche.

Preparazione del kernel

TuxOnIce consiste in una patch del kernel, più un'interfaccia utente aggiuntiva. Solo la patch è necessaria, l'interfaccia utente fornisce un'interfaccia testuale o grafica durante il ciclo di sospensione/ibernazione.

È possibile usare il pacchetto linux-iceAUR o linux-pfAUR presenti su AUR. Questo automatizza la procedura di patch, compilazione ed installazione del kernel, e la generazione della initramfs con un hook adeguato. In questo modo si ha un buon controllo del processo di installazione e volendo si può personalizzare apportando i cambiamenti voluti.

Altrimenti, sarà necessario applicare la patch, configurare e compilare il proprio kernel, visitare le pagine Kernel Compilation From Source e Kernel Compilation with ABS per maggiori informazioni. Le patch necessarie possono essere ottenute presso il sito TuxOnIce di cui sopra.

Ora è necessario installare il pacchetto hibernate-scriptAUR da AUR che verrà richiamato da TuxOnIce. Questo pacchetto è lo script ufficiale fornito dal team di TuxOnIce.

I file di configurazione di hibernate-script sono in /etc/hibernate.

Ricreare initramfs

Se si vuole usare un initramfs (cosa che Arch fa di default) è necessario aggiungere "resume" agli HOOKS di mkinitcpio. In più, se si vuole usare la compressione veloce LZO aggiungere "lzo" all'array MODULES dello stesso file. Un esempio di /etc/mkinitpio.conf:

MODULES="lzo"
HOOKS="base udev autodetect pata scsi sata resume filesystems"

Ricreare ora l'initramfs:

# mkinitcpio -p linux-ice

o

# mkinitcpio -p linux-pf

Configurazione del Boot Loader

Prima che si possa usare la funzione di sospensione, bisogna aggiungere il parametro resume ai parametri passati al kernel nel file di configurazione del boot loader (se si sta usando un sistema con una partizione swap "specificata" nella configurazione del kernel questo passaggio non è necessario). Questo punterà alla partizione di swap o al file di ibernazione.

Ibernazione in una partizione di Swap

Note: A partire l'ultima versione di TuxOnIce (3.0.99.44), aggiungere il parametro "resume" al kernel non è più necessario, sarà rilevato automaticamente se l'unità di swap contiene un'immagine avviabile. Ci sarà solo bisogno di impostare il metodo di swap adeguatamente. Per maggiori informazioni, visitare [1].

Quindi configurare il metodo swap (assicurarsi che sia specificata la partizione giusta) in /etc/hibernate/tuxonice.conf

SuspendDevice swap:/dev/sda3

Ibernazione su un file di swap

Note: L'autorilevamento, come detto in precedenza, non sembra funzionare con i file di swap; sarà dunque necessario impostare manualmente il parametro "resume" del kernel.

Se si utilizza un file di swap invece di una partizione di swap, sarà necessario passare il percorso dei suoi header a TuxOnIce. TuxOnIce è in grado di elencare tutti gli header di swap disponibile.

cat /sys/power/tuxonice/swap/headerlocations

Utilizzare la stringa data così com'è in /etc/hibernate/tuxonice.conf e passarla al kernel come parametro "resume".

SuspendDevice swap:/dev/sda7:0x1087070

Aggiungere la seguente riga nei parametri del kernel nel file di configurazione del bootloader:

resume=swap:/dev/sda7:0x1087070
Note: Specificare il dispositivo di "resume" per mezzo degli UUID dovrebbe funzionare, ma non è del tutto garantito. Questo potrebbe essere un problema di TuxOnIce o di mkinitcpio. Specificando /dev/sdxx dovrebbe invece funzionare in tutti i casi.

Sospensione su file

Per l'allocatore di file, si dovrà preparare un file di ibernazione. Questo è diverso dal file di swap standard dato che questo file viene utilizzato SOLO per l'ibernazione e non come file di swap del sistema generale. Il metodo precedente è raccomandata per essere più efficiente in termini di spazio su disco. Configurare il file /etc/hibernate/tuxonice.conf e decommentare l'opzione "FilewriterLocation":

FilewriterLocation /suspend_file 1000

1000 è la quantità di spazio su disco riservato per il file di ibernazione, in questo caso 1000 megabyte. Di solito un valore pari al 50%-75% della quantità totale di RAM è sufficiente.

Successivamente, eseguire il seguente comando per creare il file di ibernazione:

# hibernate --no-suspend

Dare un'occhiata a /sys/power/tuxonice/resume per vedere cosa passare al kernel. Si dovrebbe vedere qualche file del genere:file:/dev/hda7:0x10011f, nel qual caso si dovrebbe aggiungere resume=file:/dev/hda7:0x10011f come parametro del kernel nel file /etc/lilo.conf (per LILO) o /boot/grub/menu.lst (per GRUB) o /boot/grub/menu.cfg (per GRUB2).

Sospensione e Resuming

Con gli hibernate-script, il metodo di ibernazione preferito può essere configurato nel file /etc/hibernate/hibernate.conf. Se si elencano diversi metodi, il primo sarà quello utilizzato. Notare che hibernate può essere anche usato con Suspend to RAM o vanilla swsusp, ma questo non è parte della guida.

Per TuxOnIce usare:

TryMethod tuxonice.conf

Le opzioni specifiche per TuxOnIce sono nel file /etc/hibernate/tuxonice.conf. Assicurarsi che le seguenti righe siano decommentate e configurate adeguatamente:

UseTuxOnIce yes
Compressor lzo

Ci sono altre opzioni aggiuntive e trucchi che possono essere impostati in /etc/hibernate/tuxonice.conf e /etc/hibernate/common.conf, informazioni più dettagliate possono essere trovate sul sito ufficiale di TuxOnIce o nella pagina Suspend to Disk di questo wiki.

Provare quindi l'ibernazione di TuxOnIce con questo comando:

# hibernate -F /etc/hibernate/tuxonice.conf

Si può uscire dal ciclo di sospensione premendo il pulsante Template:Keypress. Premendo Template:Keypress, si forzerà il sistema a riavviarsi dopo l'ibernazione.

Se tutto è andato bene, dovresti essere in grado di effettuare il resuming usando la stessa voce del menù di Grub che usi normalmente per avviare il sistema. Se imposti questa opzione come default, effettuerai sempre il resuming se un file di ibernazione è disponibile su disco o sulla swap. È bene testare la sospensione/ibernazione prima da terminale, e dopo essersi assicurati che funziona, provarla da X.

Attenzione: Non usare mai un kernel differente per effettuare il resume da quello che hai usato per l'ibernazione! Se pacman aggiorna il tuo kernel, non ibernare prima che tu abbia riavviato la macchina e avviato il nuovo kernel.

Si può rendere questa pratica più sicura aggiungendo il demone hibernate-cleanup nella stringa DAEMONS in /etc/rc.conf. Questo script verifica che qualsiasi vecchia immagine per il resume sia cancellata della partizione di swap durante l'avvio. Questo dovrebbe rendere più sicuro il sistema anche nel caso si scelga il kernel sbagliato dal menù di Grub. Il demone hibernate-cleanup è incluso nel pacchetto hibernate-script.

Configurazioni addizionali di pm-utils

Se si usa GNOME come DE, o un qualunque altro DE che richieda pm-utils per spegnere e sospendere sono necessarie ulteriori configurazioni per TuxOnIce.

Tali configurazioni vanno fatte in /etc/hibernate/hibernate.conf e dovrebbero funzionare. Alcune configurazioni però possono dare problemi con pm-utils. La compressione, per esempio, è di default lzo a meno che si intervenga manualmente. Editare il file sotto /etc/pm/sleep.d/ è un'ottima alternativa per far si che le configurazioni vengano lette correttamente.

Per cambiare la compressione usata da TuxOnIce, per esempio, editare /etc/pm/sleep.d/00doit e aggiungere qualcosa del genere:

#!/bin/bash
case $1 in
hibernate)
#Possible compressors include lzo, lzf, and none
echo none > /sys/power/tuxonice/compression/algorithm
;;

Linee addizionali possono essere usate per cambiare altre opzioni come ad esempio il logging level di default (in /sys/power/tuxonice/user_interface/default_console_level).

Usare UserUI - Un'Interfaccia Utente per TuxOnIce (Opzionale)

È anche possibile utilizzare un'interfaccia utente testuale o grafica (fbsplash) con una barra di avanzamento. Per fare questo, installare il pacchetto tuxonice-useruiAUR da AUR. Questo pacchetto dipende dalla libreria statica freetype2, fornita dal pacchetto freetype2-staticAUR (anche questo da AUR).

Nel file /etc/hibernate/tuxonice.conf, imposta l'interfaccia utente desiderata:

ProcSetting user_interface/program "/usr/sbin/tuxoniceui"  #Interfaccia Testuale

o

ProcSetting user_interface/program "/usr/sbin/tuxoniceui -f"  #Interfaccia Grafica con fbsplash

L'interfaccia con fbsplash necessita di un symlink al tema fbsplash, in questo modo:

# ln -s /etc/splash/arch-banner-noicons/ /etc/splash/tuxonice

Senza questo symlink, non ci saranno indicatori di progresso durante il suspend/resume.

Probabilmente sarà necessario rigenerare l'initramfs dopo aver cambiato il link simbolico sopra.

L'interfaccia testuale può essere utile per il debug di TuxOnIce, in quanto visualizza alcuni messaggi.

Non si vedrà un'interfaccia utente durante i primi secondi del processo di ripristino a meno che non si aggiunga l'hook userui alla propria configurazione mkinitcpio (prima dell'hook resume) e si rigeneri l'initramfs, ma anche questo è opzionale.

Generate initramfs:

# mkinitcpio -p linux-ice

Per verificare se la userui funziona, da terminale eseguite:

# tuxoniceui_test --test

Per l'interfaccia grafica eseguite:

# tuxoniceui_fbsplash --test

Riferimenti

  • Il sito di TuxOnIce e la sua wiki sono un ottima fonte di informazioni.
  • Altre informazioni generali sulla sospensione/ibernazione con gli hibernate-script si possono trovare nella pagina Suspend to Disk di questa wiki. Questa tratta argomenti avanzati come problemi con certe configurazioni hardware.
  • Un'altra buona fonte di informazioni è la wiki di Gentoo.