¿Usa fsck para verificar y reparar el disco cifrado LUKS?

13

Mi máquina Ubuntu 11.04 usa encriptación LUKS para root, swap y home. Una rutina fsck -n reveló un conjunto de errores que necesito reparar. fsck requiere desmontar las particiones. Antes de la suerte, simplemente arrancaría desde una memoria USB y arreglaría ejecutar fsck desde allí. ¿Cuáles son los pasos para hacer eso para las particiones cifradas LUKS?

Stwissel
fuente

Respuestas:

26

El método exacto depende de cómo haya configurado luks, y si tiene LVM encima de luks o si solo tiene un sistema de archivos dentro del volumen de luks.

Si no tiene LVM además de luks, entonces probablemente haría algo como esto.

cryptsetup luksOpen /dev/rawdevice somename
fsck /dev/mapper/somename

# or

cryptsetup luksOpen /dev/sda2 _dev_sda2
fsck /dev/mapper/_dev_sda2

Si utilizó la opción LVM en LUKS provista por el instalador Debian / Ubuntu, entonces deberá iniciar LVM. Entonces, vgchange -alydespués de abrir el volumen cifrado, ejecute fsck contra el /dev/mapper/lvname.

(Si faltan comandos, es posible que deba hacerlo apt-get install cryptsetupprimero. De manera similar, si necesita vgchangehacerlo apt-get install lvm).

Zoredache
fuente
Por alguna razón cryptsetup luksOpen /dev/rawdevice somename, no estaba funcionando para darme algo con lo que correr fsck, aunque aparecía vgscanmuy bien después vgchange -aycomo 'activo' ... Tuve que crear los dispositivos en bruto manualmente vgscan --mknodesy luego fscken el volumen lógico que aparece en vgscancon fsck /dev/cryptVG/root- Espero que esto ayude a alguien más
Dmitri DB
Hm, no importa si uso cryptsetupo cryptdisk_start, consigo el mismo resultado cuando intento fsck: /dev/mapper/ext_crypt is in use. Lo comprobé mounty no está montado en ningún lado.
Nikodemus RIP
9

Primero debe abrir el volumen LUKS.

cryptsetup luksOpen /dev/(whatever) someName

Esto le pedirá la contraseña, luego creará /dev/mapper/someName, que es el dispositivo de texto plano en el que puede ejecutar fsck. Cuando termines,

cryptsetup luksClose someName

eliminará el /dev/mapper/someNamedispositivo de texto sin formato,.

Wyzard
fuente
1

El procedimiento debe ser el mismo.

Usando una memoria USB Debian (7.7.0 amd64 netinst, en mi caso), uno puede entrar en modo de rescate, que debe identificar la partición LUKS, solicitar una contraseña y mapearla. También identifica y asigna cualquier partición LVM que contenga. Si no monta la partición raíz, desde el indicador de shell puede simplemente e2fsck -f -c /dev/system_name/partition_name, etc.

Esta pregunta tiene cuatro años, pero no creo que el procedimiento haya cambiado.


Sin embargo, debo señalar que hacer un fsck -nen un sistema de archivos montado es casi seguro que informará de errores que realmente no existirán cuando fsckse desmonte.

Miguel
fuente