Расположение моего единственного диска следующее:
/dev/sda1 for the plaintext boot partition
/dev/sda2 for the encrypted root partition
Моя система - ArchLinux, и я следовал это руководство настроить корневое шифрование (без lvm, без рейда). Вот что я сделал: побежал cryptsetup
на /dev/sda2
и сопоставил это в /dev/mapper/cryptroot
мой /etc/fstab
выглядит так:
UUID=of /dev/mapper/cryptroot / ext4 rw,relatime,data=ordered,discard 0 1
UUID=of /dev/sda1 /boot ext4 rw,relatime,data=ordered,discard 0 2
В моем /etc/default/grub
Я изменил одну строку, чтобы быть:
GRUB_CMDLINE_LINUX="cryptdevice=UUID of /dev/sda2:cryptroot:allow-discards"
в /etc/mkinitcpio.conf
крючки выглядят так:
HOOKS="base udev autodetect modconf block encrypt filesystems keyboard fsck"
Наконец я не забыл бежать mkinitcpio -p linux
а также grub-mkconfig -o /boot/grub/grub.cfg
соответственно.
Я перечислил свои действия таким быстрым способом, потому что ранее я успешно настраивал шифрование для моей корневой файловой системы. Итак, в конце я получаю следующую ошибку:
ERROR: device *UUID of /dev/mapper/cryptroot* not found. Skipping fsck.
ERROR: unable to find root device *UUID of /dev/mapper/cryptroot*
You are being dropped into recovery shell
Странно то, что он пытается найти незашифрованные /dev/mapper/cryptroot
и все же он не спрашивает у меня пароль (который я создал, когда cryptsetup
на /dev/sda2
в начале). Поэтому, естественно, он не может найти незашифрованное блочное устройство, потому что он не спрашивал у меня его пароль. Не могли бы вы сказать мне, что я настроил неправильно?