Расскажу как Я восстанавливал загрузчик системы с LUKS

Alexandr Sokolov
2 min readDec 2, 2022

--

Введение

Что делать, Я удалил загрузчик! И при включении нет даже консоли с grub.

При установке Linux с шифрованием, установщик делит диск на 3 раздела: EFI раздел, boot раздел и зашифрованный раздел с файлами ОС.

Вот такая разметка дисков у меня была на обоих NVME. Возможно, было бы проще перенести содержимое EFI и boot разделов с рабочего на нужный, а Я решил не искать легких путей и попросту отформатировал первый диск, тем самым лишившись возможности загрузиться и предоставив себе возможность научиться восстанавливать загрузку ОС.

В работе

Гружусь в Live режиме и расшифровываю LUKS раздел.

cryptsetup luksOpen /dev/nvme1n1p3 crypt

Немного магии администрирования LVM

vgscan && vgchange -ay && lvscan

Последняя команда покажет расшифрованные тома

  ACTIVE            '/dev/vgmint/root' [473,79 GiB] inherit
ACTIVE '/dev/vgmint/swap_1' [980,00 MiB] inherit

Монтирую том с корнем

mount /dev/vgmint/root /mnt

И забиндил следующие пути

mount -o bind /proc /mnt/proc
mount -o bind /dev /mnt/dev
mount -o bind /sys /mnt/sys

Далее, сменил корень на /mnt

chroot /mnt

И примонтировал разделы EFI и boot.

mount /dev/nvme1n1p2 /boot
mount /dev/nvme1n1p1 /boot/efi

Все точки монтированы и пришло время ставить grub

grub-install /dev/nvme1n1 && update-grub

Все прошло без ошибок и Я на радостях перезагрузился.

А перед выключением стараюсь правильно отключить LUKS раздел.

umount /boot/efi
umount /boot
exit # выходим из chroot
umount -l /mnt
vgchange -an # снова LVM магия
cryptsetup luksClose crypt

Однако, после расшифровки LUKS, ОС долго думала и выпала мне в черный экран

Команда mount -a показала, что не может найти раздел и до меня дошло, что Я забыл поправить /etc/fstab, так как в нем осталась запись с монтированием старого efi раздела.

Последний шаг — актуализировать /etc/fstab.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Alexandr Sokolov
Alexandr Sokolov

Written by Alexandr Sokolov

Software Engineer. Python Developer.

No responses yet

Write a response