Я использую ArchLinux и следовал их руководству по шифрованию корневой файловой системы:
https://wiki.archlinux.org/index.php/Использование_DM-Crypt
Но я не могу заставить grub загрузить зашифрованный раздел.
Мой файл grub выглядит так:
root (hd0,2)
kernel /vmlinuz-linux cryptdevice=/dev/sda4:root root=/dev/mapper/root ro
initramfs /intiramfs-linux.img
Я пытался редактировать это всем, что мог придумать, и всем, что мог найти в сети, но ничего не загружается. Он всегда выдает мне эту ошибку:
ERROR: device '/dev/mapper/root' not found. Skipping fsck.
ERROR: unable to find root device '/dev/mapper/root'.
Любая помощь будет высоко оценена.
решение1
КакВиланд сказал, необходимо указать образу ramfs расшифровать корневой раздел.
Что означает добавитьшифроватькрючок к/etc/mkinitcpio.confдофайловые системыхук, изменив эту строку (это должно быть настройкой по умолчанию в стандартной установке Arch):
HOOKS="base udev autodetect modconf block filesystems keyboard fsck"
к этому:
HOOKS="base udev autodetect modconf block encrypt filesystems keyboard fsck"
(Более подробную информацию см.:https://wiki.archlinux.org/index.php/Dm-crypt/Шифрование_всей_системы#Настройка_mkinitcpio)
А затем перекомпилируйте образ ramfs с помощью следующей команды (в arch-chroot с помощью/ботиноксмонтирован):
# mkinitcpio -p linux
(Опять же, для более подробной информации см.:https://wiki.archlinux.org/index.php/mkinitcpio#Создание_и_активация_изображения)