Montare volumi cifrati Se durante l'installazione si creano dei volumi cifrati e si assegnano a dei punti di mount allora, durante l'avvio, viene richiesto l'inserimento della passphrase per ognuno di questi volumi. La procedura da seguire è leggermente diversa fra dm-crypt e loop-AES. dm-crypt Le partizioni cifrate con dm-crypt sono mostrate durante l'avvio con un prompt simile a questo: Starting early crypto disks... part_crypt(starting) Enter LUKS passphrase: Nella prima riga la part è il nome della partizione sottostante, per esempio sda2 o md0. Probabilmente adesso si vorrebbe conosce per quale volume si sta inserendo la passphrase. Si tratta di /home? Oppure di /var? Certamente se nel sistema esiste un solo volume cifrato la risposta è semplice, si deve inserire la stessa passphrase usata durante la configurazione. Invece, se durante l'installazione sono stati preparati più volumi cifrati, gli appunti presi durante l'ultimo passo descritto in risultano molto utili. Se non si hanno appunti su come sono mappati i diversi part_crypt sui vari punti di mount allora si possono trovare nei file /etc/crypttab e /etc/fstab del nuovo sistema. Il prompt potrebbe essere leggermente diverso quando viene montato il file system di root. Dipende da quale strumento è stato usato per la creazione dell'initramfs per l'avvio del sistema. Il prossimo esempio si riferisce a un initrd creato con initramfs-tools: Begin: Mounting root file system... ... Begin: Running /scripts/local-top ... Enter LUKS passphrase: Durante l'inserimento della passphrase non sono mostrati dei caratteri, nemmeno degli asterischi. Se la passphrase inserita è sbagliata si hanno a disposizione altri due tentativi, dopo il terzo tentativo il processo di avvio salta il montaggio del volume e prosegue con il filesystem successivo. Si veda per maggiori informazioni. L'avvio prosegue normalmente dopo l'inserimento di tutte le passphrase. loop-AES Per le partizioni cifrate con loop-AES viene mostrato il seguente prompt durante l'avvio: Checking loop-encrypted file systems. Setting up /dev/loopX (/mountpoint) Password: Durante l'inserimento della passphrase non sono mostrati dei caratteri, nemmeno degli asterischi. Se la passphrase inserita è sbagliata si hanno a disposizione altri due tentativi, dopo il terzo tentativo il processo di avvio salta il montaggio del volume e prosegue con il filesystem successivo. Si veda per maggiori informazioni. Dopo aver inserito tutte le passphrase l'avvio prosegue in modo usuale. Risoluzione dei problemi Se alcuni dei volumi cifrati non sono stati montati perché è stata inserita una passphrase sbagliata, è comunque possibile montarli manualmente al termine dell'avvio. Si possono verificare diversi casi: Il primo caso riguarda la partizione root. Quando non è correttamente montata il processo di avvio si arresta ed è necessario riavviare la macchina per fare un nuovo tentativo. Il caso più semplice riguarda i volumi che contengono dati, come /home o /srv. Si possono montare manualmente al termine dell'avvio. Con loop-AES questa operazione richiede un solo comando: # mount /mount_point Password: dove /mount_point deve essere sostituito dalla directory specifica (per esempio /home). L'unica differenza rispetto a un normale mount è la richiesta di inserire la passphrase del volume. Con dm-crypt è leggermente più complesso. Prima si devono registrare i volumi con device mapper eseguendo: # /etc/init.d/cryptdisks start Questo esegue la scansione di tutti i volumi elencati in /etc/crypttab e dopo aver richiesto la passphrase crea i rispettivi file di device nella directory /dev. I volumi già registrati sono saltati, quindi è possibile ripetere più volte questo comando senza preoccupazioni. Se la registrazione avviene con successo è possibile montare i volumi nel modo consueto: # mount /mount_point Se alcuni dei volumi che contengono file non critici per il sistema non possono essere montati (/usr o /var) l'avvio dovrebbe continuare e dovrebbe essere possibile montare i volumi manualmente con la stessa procedura descritta al punto precedente. Inoltre è necessario anche (ri)avviare tutti i servizi che sono normalmente in esecuzione nel runlevel predefinito dato che, molto probabilmente, non sono partiti. Il modo più semplice per fare questa operazione è passare al primo runlevel e poi tornare indietro; dal prompt della shell eseguire: # init 1 poi premere Control D quando viene richiesta la password di root.