3 votes

L'automontage de la partition LUKS échoue au démarrage

J'ai une configuration chiffrée du bureau Ubuntu 14.04. La partition racine cryptée est créée en utilisant les paramètres par défaut du programme d'installation d'Ubuntu (choix "Effacer le disque et installer Ubuntu" et "Crypter la nouvelle installation Ubuntu"). Cette partie fonctionne bien (elle demande le mot de passe au démarrage et ouvre les partitions racine et swap).

Plus tard, j'ai ajouté un deuxième disque, crypté séparément avec un fichier clé stocké sur la partition racine. L'intention était de le faire ouvrir automatiquement dès que la partition racine est ouverte. À cette fin, le deuxième lecteur a été ajouté à crypttab (par UUID) et son système de fichiers crypté -- à fstab (par étiquette, point de montage /stg ).

Au démarrage, après avoir entré le mot de passe de décryptage principal, j'obtiens ceci : Une erreur s'est produite lors du montage de /stg. Appuyez sur S pour ignorer le montage ou M pour une récupération manuelle. .

Ce qui est étrange, c'est que si j'appuie sur M et simplement exécuter mount -a il se monte avec succès. Je ne vois rien de suspect dans /var/log/syslog .

Qu'est-ce qui se passe avec ça ? Que puis-je vérifier pour diagnostiquer le problème ?


[UPD - ajout de quelques détails] L'entraînement sdb a une table de partition MBR avec une partition. Le système de fichiers crypté a été initialisé à l'aide des commandes suivantes :

cryptsetup luksFormat /dev/sdb1 /root/stg.key
cryptsetup luksOpen /dev/sdb1 stg_crypt -d/root/stg.key
mkfs.ext4 /dev/mapper/stg_crypt -Lstg-tmp

/etc/crypttab (les uuids réels sont remplacés par le texte "uuid-of-..." pour des raisons de concision) :

# this entry was created by Ubuntu installer
sda5_crypt UUID=uuid-of-sda5 none luks,discard

# this entry was added by me
stg_crypt  UUID=uuid-of-sdb1 /root/stg.key luks,discard

/etc/fstab :

# these entries were created by Ubuntu installer
/dev/mapper/ubuntu--vg-root   /      ext4 errors=remount-ro 0 1
UUID=uuid-of-sda1             /boot  ext2 defaults          0 2
/dev/mapper/ubuntu--vg-swap_1 none   swap sw                0 0

# this entry was added by me
LABEL=stg-tmp                 /stg   ext4 errors=remount-ro 1 2

1voto

playerum Points 41

Il est amusant de constater que le remplacement de la référence de l'étiquette dans fstab avec le chemin du dispositif résout le problème ! C'est-à-dire : LABEL=stg-tmp changé en /dev/mapper/stg_crypt .

J'ai également essayé la référence UUID, cela n'a pas fonctionné. Donc apparemment les références LABEL et UUID pendant le démarrage fonctionnent pour les partitions physiques mais ne fonctionnent pas pour les partitions cryptées. Mais elles fonctionnent dans mount -a pour toutes les partitions.

Ce n'est pas très satisfaisant comme solution (par exemple, il manque une explication) mais cela résout le problème en question donc je suppose que c'est bon pour le moment .

0voto

linuxdev2013 Points 1212

La première idée est que l'intramfs ne voit pas le keyfile (comportement normal).

Les corrections de couple incluent :

ajout/création d'une phrase de passe de repli pour /stg comme mentionné ici

Ajout de Fallback à Luks (faites défiler la page jusqu'à la section Ajout de la phrase de passe de secours)

en ajoutant dd if=/dev/usbkey bs=512 skip=4 count=8 | cryptsetup luksOpen /dev/md0 luksVolume --key-file=- && mount /dev/mapper/luksVolume /mnt/

à la création ou en utilisant cryptsetup-reencrypt (dans les dépôts mais pas installé par défaut)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X