7.2. Le montage des volumes chiffrés

Si vous avez créé des volumes chiffrés et leurs points de montage pendant l'installation, vous devrez fournir pendant le démarrage la phrase secrète pour chaque volume. La procédure diffère légèrement pour les méthodes dm-crypt et loop-AES.

7.2.1. dm-crypt

Pour les partitions chiffrées avec dm-crypt, l'invite pendant l'amorçage sera :

Starting early crypto disks... part_crypt(starting)
Enter LUKS passphrase:

Le mot part sur la première ligne de l'invite est le nom de la partition, par exemple, sda2 ou md0. Vous vous demandez probablement pour quel volume vous saisissez la phrase secrète. Est-ce pour /home, pour /var ? Bien sûr, si vous n'avez chiffré qu'un seul volume, c'est facile et vous n'avez qu'à saisir la phrase utilisée. Si vous avez chiffré plusieurs volumes, les notes que vous avez prises pendant l'installation (étape Section 6.3.3.6, « Configuration des volumes chiffrés ») vous seront utiles. Si vous n'avez pas noté la correspondance entre part_crypt et les points de montage, vous pouvez les trouver dans les fichiers /etc/crypttab et /etc/fstab de votre nouveau système.

L'invite peut être légèrement différente quand un système de fichiers racine chiffré est monté. Cela dépend du type d'« initramfs » qui a servi à créer l'« initrd » utilisé pour amorcer le système. Voici par exemple l'invite pour un initrd créé avec initramfs-tools :

Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Enter LUKS passphrase:

Quand vous saisissez la phrase, aucun caractère (même pas l'astérisque) n'est montré. Si vous faites une erreur, vous aurez deux possibilités de correction. Après la troisième tentative, le processus de démarrage sautera ce volume et continuera avec les autres volumes. Veuillez consulter Section 7.2.3, « En cas de problèmes » pour d'autres informations.

Une fois toutes les phrases saisies, le processus de démarrage se poursuit normalement.

7.2.2. loop-AES

Pour les partitions chiffrées avec loop-AES, l'invite pendant l'amorçage sera :

Checking loop-encrypted file systems.
Setting up /dev/loopX (/mountpoint)
Password:

Quand vous saisissez la phrase, aucun caractère (même pas l'astérisque) n'est montré. Si vous faites une erreur, vous aurez deux possibilités de correction. Après la troisième tentative, le processus de démarrage sautera ce volume et continuera avec les autres volumes. Veuillez consulter Section 7.2.3, « En cas de problèmes » pour d'autres informations.

Une fois toutes les phrases saisies, le processus de démarrage se poursuit normalement.

7.2.3. En cas de problèmes

Quand vous n'avez pas pu monter certains volumes à cause d'une mauvaise phrase secrète, vous devez les monter après le démarrage. Il y a plusieurs cas.

  • Le premier cas concerne la partition racine. Si elle n'est pas montée correctement, le processus de démarrage s'arrête et vous devez réamorcer la machine.

  • Le cas le plus simple concerne les volumes contenant des données comme /home ou /srv. Vous pouvez les monter après le démarrage. Avec loop-AES, une seule opération est nécessaire :

    # mount /mount_point
    Password:
    

    /mount_point doit être remplacé par un répertoire (par exemple, /home). La différence avec le montage d'une partition ordinaire est qu'on vous demandera de saisir la phrase secrète.

    Avec dm-crypt, c'est un peu plus compliqué. Vous devez d'abord enregistrer les volumes avec l'application device mapper de cette façon :

    # /etc/init.d/cryptdisks start
    

    Tous les volumes listés dans /etc/crypttab seront examinés et les périphériques seront créés dans le répertoire /dev après avoir saisi les bonnes phrases de passe. Les volumes déjà enregistrés sont ignorés et vous pouvez répéter cette commande sans souci. Quand l'enregistrement des volumes sera terminé, vous pouvez simplement les monter de la façon habituelle :

    # mount /mount_point
    

  • Quand des volumes contenant des systèmes de fichiers non critiques (/usr ou /var) n'ont pas été montés, le système doit s'amorcer malgré tout et vous pouvez monter ces volumes comme dans le cas précédent. Mais vous aurez besoin de (re)lancer les services qui fonctionnent habituellement car il est probable qu'ils n'auront pas été lancés. Le plus simple est de passer sur le premier niveau de fonctionnement (« runlevel ») avec la commande :

    # init 1
    

    et en pressant les touches Control+D quand le mot de passe du superutilisateur est demandé.