Использование fsck для проверки и восстановления зашифрованного диска LUKS?

13

Моя машина с Ubuntu 11.04 использует шифрование LUKS для root, swap и home. Подпрограмма fsck -n выявила ряд ошибок, которые мне нужно исправить. fsck требует размонтировать разделы. До luks я просто загружался с флешки и исправлял запуск fsck оттуда. Как это сделать для зашифрованных разделов LUKS?

stwissel
источник

Ответы:

26

Точный метод зависит от того, как вы настроили luks, и если у вас есть LVM поверх luks или у вас просто есть файловая система в томе luks.

Если у вас нет LVM в дополнение к Luks, то вы, вероятно, сделали бы что-то вроде этого.

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

# or

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

Если вы использовали опцию LVM on LUKS, предоставляемую установщиком Debian / Ubuntu, то вам необходимо запустить LVM. Поэтому vgchange -alyпосле открытия зашифрованного тома запустите fsck против /dev/mapper/lvname.

(Если команды отсутствуют, вам, возможно, придется apt-get install cryptsetupсначала сделать это . Аналогично, если вам нужно vgchangeсделать apt-get install lvm.)

Zoredache
источник
По какой-то причине cryptsetup luksOpen /dev/rawdevice somenameне получалось дать мне что-то для запуска fsck, хотя оно показывалось vgscanпросто отлично после vgchange -ay«активного» ... Мне пришлось вручную создавать необработанные устройства, vgscan --mknodesа затем fsckна логическом томе, отображаемом в vgscanс fsck /dev/cryptVG/root- Надеюсь, что это помогает кому-то еще там
Дмитрий Д.Б.
Хм, независимо от того , если я использую cryptsetupили cryptdisk_startя получаю тот же результат , когда я пытаюсь fsck: /dev/mapper/ext_crypt is in use. Я проверил mountи он нигде не монтируется .
Никодим РИП
9

Вы должны сначала открыть том LUKS.

cryptsetup luksOpen /dev/(whatever) someName

Это попросит вас ввести пароль, а затем создать /dev/mapper/someName, которое является открытым текстом, на котором вы можете запустить fsck. Когда вы закончите,

cryptsetup luksClose someName

удалит /dev/mapper/someNameустройство с открытым текстом,.

Wyzard
источник
1

Процедура должна быть такой же.

Используя USB-накопитель Debian (7.7.0 amd64, в моем случае), можно перейти в режим восстановления, который должен определить раздел LUKS, запросить пароль и сопоставить его. Он также идентифицирует и отображает любые разделы LVM, содержащиеся в нем. Если вы не монтируете корневой раздел, из командной строки вы можете просто e2fsck -f -c /dev/system_name/partition_nameи т.д.

Этому вопросу четыре года, но я не думаю, что процедура изменилась.


Тем не менее, я должен отметить, что выполнение fsck -nнадмонтированной файловой системы почти наверняка сообщит об ошибках, которые на самом деле не будут существовать, когда вы fsckразмонтируетесь!

Майк
источник