Estoy tratando de configurar un volumen encriptado siguiendo esta guía
Todo está configurado, pero el montaje del volumen cifrado falla en el momento del arranque con el error:
fsck.ext4:No existe tal archivo o directorio al intentar abrir
/dev/mapper/safe_vault ¿Dispositivo posiblemente inexistente?
Esta es mi configuración:
ficha criptográfica
$ sudo cat /etc/crypttab
safe_vault /dev/disk/by-uuid/d266ae14-955e-4ee4-9612-326dd09a463b none luks
El uuid
viene de:
$ sudo blkid /dev/mapper/<my_logical_group>-safe_vault
/dev/mapper/<my_logical_group>-safe_vault: UUID="d266ae14-955e-4ee4-9612-326dd09a463b" TYPE="crypto_LUKS"
fstab
$ sudo cat /etc/fstab | grep safe_vault
/dev/mapper/safe_vault /safe-vault ext4 defaults 0 2
Lo que he hecho...
Así que fui al sitio web del desarrollador y en las Preguntas frecuentes sobre problemas comunes dicen:
Compruebe que tiene el mapeador de dispositivos y el objetivo de cifrado en su núcleo
. La salida de "objetivos dmsetup" debe incluir un objetivo "criptificado".
Si no está allí o el comando falla, agregue el mapeador de dispositivos y
el objetivo criptográfico al núcleo.
Así lo hice, resulta que no tengo una crypt
objetivo:
$ sudo dmsetup targets
striped v1.4.1
linear v1.1.1
error v1.0.1
El problema es que no sé cómo agregar ese objetivo.
Creo que esto (no tener la crypt
objetivo) tal vez causando el crypttab
la configuración se ignorará en el momento del arranque y, por lo tanto, se intentará montar la entrada en fstab
falla porque cryptsetup
no ha asignado mi volumen cifrado a /dev/mapper/safe_vault
.
El volumen cifrado se puede asignar, montar y escribir manualmente con éxito:
$ sudo cryptsetup luksOpen /dev/mapper/<my_logical_group>-safe_vault safe_vault
Enter passphrase for /dev/mapper/<my_logical_group>-safe_vault:
$ sudo mount /dev/mapper/safe_vault /safe_vault
Así es como se ve después de mapearlo y montarlo:
$ sudo lsblk -o name,uuid,mountpoint
NAME UUID MOUNTPOINT
sda
├─sda1 28920b00-58d3-4941-889f-6249357c56ee
├─sda2
└─sda5 uhBLE7-Kcfe-RMi6-wrlX-xgVh-JfAc-PiXmBe
├─<my_logical_group>-root (dm-0) 1bed9027-3cf7-4f8d-abdb-28cf448fb426 /
├─<my_logical_group>-swap_1 (dm-1) a40c16c4-7d0c-46d7-afc8-99ab173c20bb [SWAP]
├─<my_logical_group>-home (dm-2) e458abb7-b263-452d-8670-814fa737f464 /home
├─<my_logical_group>-other (dm-3) 0a1eec42-6534-46e1-8eab-793d6f8e1003 /other
└─<my_logical_group>-safe_vault (dm-4) d266ae14-955e-4ee4-9612-326dd09a463b
└─safe_vault (dm-5) 9bbf9f47-8ad8-43d5-9c4c-dca033ba5925 /safe-vault
sr0
ACTUALIZAR
- Resulta que tengo la
crypt
target pero para que se muestre condmsetup targets
Primero tuve quecryptsetup luksOpen <my-device>
- He intentado usar
UUID
s en cambio de acuerdo con la respuesta de @Mikhail Morfikov, pero aún falla en el momento del arranque.
Sigo pensando que el problema es que de alguna manera el volumen encriptado no está siendo mapeado (abierto con cryptsetup luksOpen
) en el momento del arranque, por lo tanto, no hay /dev/mapper/<safe_vault or UUID>
existe, luego falla el intento de montarlo (fstab).
ACTUALIZACIÓN 2
Resulta que no tenía los scripts necesarios para montar en el momento del arranque. Vea la nota en la respuesta de @MikhailMorfikov.
Respuesta aceptada:
Tienes que prestar atención a los UUID. Por ejemplo, esta es mi configuración:
# lsblk -o name,uuid,mountpoint
├─sda2 727fa348-8804-4773-ae3d-f3e176d12dac
│ └─sda2_crypt (dm-0) P1kvJI-5iqv-s9gJ-8V2H-2EEO-q4aK-sx4aDi
│ ├─debian_crypt-swap (dm-1) 3f9f24d7-86d1-4e21-93e9-f3c181d05cf0 [SWAP]
│ ├─debian_crypt-tmp (dm-2) 93fc8219-f985-45fb-bd5c-2c7940a7512d /tmp
│ ├─debian_crypt-home (dm-3) 12e8566c-8f0f-45ec-8524-6d9d9ee91eae /home
│ └─debian_crypt-root (dm-4) 9685570b-4c9e-43ea-815e-49d10dc7a1bf /
Tengo una partición cifrada (sda2) con 4 volúmenes (LVM). Lo que necesito es establecer dos UUID en los archivos correctos. El UUID sda2 va a /etc/crypttab
y el UUID del volumen (por ejemplo, debian_crypt-root) va a /etc/fstab
.
Entonces, sería:
# cat /etc/crypttab
sda2_crypt UUID=727fa348-8804-4773-ae3d-f3e176d12dac none luks
# cat /etc/fstab
UUID=9685570b-4c9e-43ea-815e-49d10dc7a1bf / ext4 defaults,errors=remount-ro 0 1
Después de cambiar /etc/crypttab
archivo, tienes que reconstruir initramfs:
# update-initramfs -u -k all
NOTA
Relacionado:¿Hora de inicio del proceso con zona horaria?
El paquete cryptsetup
debe instalarse porque tiene secuencias de comandos de inicio que brindan soporte para el montaje automático de volúmenes cifrados en el arranque.
¿Por qué molestarse en mencionar esto? Bueno, si configura LVM durante la instalación, Debian Wheezy instala los paquetes cryptsetup-bin, libcryptsetup4
y lvm2
pero no cryptsetup
, por lo tanto, tiene las herramientas para configurar dispositivos LVM y LUKS, pero no los scripts necesarios para montar dispositivos LUKS en el momento del arranque. Esos vienen en el paquete cryptsetup.