LUKS/Cryptosetup и LVM: не могу вводить пароли после загрузки
Так что я много раз с успехом следил за этим конкретным учебником http://thesimplecomputer.info/full-disk-encryption-with-ubuntu
С двумя немного другими вещами: lubuntu вместо ubuntu и установите его на USB-ключ вместо обычного диска.
Однако с моей последней попыткой с этим в новом ключе USB что-то случилось. Все хорошо в первые несколько дней использования, пока я не выполнил dist-upgrade с помощью apt-get. Я закончил это без проблем или перерывов.
Однако теперь, когда я в основном загружаюсь, я вижу обычную заставку Lubuntu, но без поля ввода, где я обычно набираю пароль.
Я пытался нажимать клавиши со стрелками вверх или вниз, чтобы увидеть, могу ли я печатать в режиме терминала, но безуспешно. Все, что вы видите - это сообщение "cryptsetup: lvm is not available", повторяемое бесконечное количество раз, после чего в основном запускается режим busybox.
Обратите внимание: это сообщение "cryptsetup: lvm is not available" часто случалось со мной случайно и с другими USB-ключами (то же самое cryptsetup + lubuntu в USB-ключах), но у меня все еще было поле ввода, и я мог просто перейти к разблокировке Крипто тома без проблем.
Так что я не могу понять, где сейчас проблема. Я не думаю, что причина в grub или boot, иначе он вообще не загрузится.
Это последнее dist-upgrade наверняка вызвало это, я только что увидел, что он обновил заголовки linux и многое другое, но я не могу понять эту проблему.
Я использую lubuntu yakkety, установленный на диске с таблицей разделов MBR, если это вообще имеет значение.
Что я могу попытаться исправить это? Любой способ исправить эту проблему через busybox? Я на самом деле не эксперт в использовании такого рода терминала
ОБНОВИТЬ
Следуя предложению из ответа ниже, я попробовал на неоновом концерте:
- Используйте KDE Partition Manager и разблокируйте зашифрованный том LUKS. Теперь вам нужно активировать LVM. Либо нажмите F5 (обновить) в KDE Partition Manager, либо введите sudo vgchange -ay в терминале. Ваша корневая файловая система должна теперь появиться как блочное устройство в /dev/mapper/. Опять же, в KDE Partition Manager визуально легче увидеть имя вашей корневой файловой системы. Допустим, это /dev/mapper/rootfs, но вам нужно будет указать правильный путь в командах ниже.
Затем выполните следующие команды для chroot в вашей корневой файловой системе:
sudo mount /dev/mapper/rootfs / mnt1 sudo mount --bind / dev / mnt / dev sudo mount --bind / sys / mnt / sys sudo chroot / mnt
Наконец, с помощью команды 'sudo update-initramfs -u -k all' я получаю следующий вывод:
update-initramfs: Generating /boot/initrd.img-4.8.0-32-generic
cat: /proc/cmdline: No such file or directory
/proc/devices: fopen failed: No such file or directory
Failed to set up list of device-mapper major numbers
Incompatible libdevmapper 1.02.130 (2016-07-06) and kernel driver (unknown version).
Command failed
cryptsetup: WARNING: failed to determine cipher modules to load for root
/proc/devices: fopen failed: No such file or directory
Failed to set up list of device-mapper major numbers
Incompatible libdevmapper 1.02.130 (2016-07-06) and kernel driver (unknown version).
Command failed
cryptsetup: WARNING: failed to determine cipher modules to load for swap
Warning: couldn't identify filesystem type for fsck hook, ignoring.
update-initramfs: Generating /boot/initrd.img-4.8.0-30-generic
cat: /proc/cmdline: No such file or directory
/proc/devices: fopen failed: No such file or directory
Failed to set up list of device-mapper major numbers
Incompatible libdevmapper 1.02.130 (2016-07-06) and kernel driver (unknown version).
Command failed
cryptsetup: WARNING: failed to determine cipher modules to load for root
/proc/devices: fopen failed: No such file or directory
Failed to set up list of device-mapper major numbers
Incompatible libdevmapper 1.02.130 (2016-07-06) and kernel driver (unknown version).
Command failed
cryptsetup: WARNING: failed to determine cipher modules to load for swap
Warning: couldn't identify filesystem type for fsck hook, ignoring.
ОБНОВЛЕНИЕ 2:
Вот новый вывод ошибок, который я получаю, после того, как просто удалил все и повторил всю процедуру. Я включаю 2 экрана, которые я вижу после меню загрузки grub.
После команды "update-initramfs -u -k all" я вижу этот журнал ошибок:
root@lubuntu:/# update-initramfs -u -k all
update-initramfs: Generating /boot/initrd.img-4.8.0-22-generic
device-mapper: table ioctl on root failed: No such device or address
Command failed
cryptsetup: WARNING: failed to determine cipher modules to load for root
device-mapper: table ioctl on swap failed: No such device or address
Command failed
cryptsetup: WARNING: failed to determine cipher modules to load for swap
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
Warning: couldn't identify filesystem type for fsck hook, ignoring.
И здесь вы можете увидеть, как lubuntu появляется после загрузки, ввод пароля не отображается
1 ответ
Я предлагаю скачать Neon Live CD, который уже упакован в KDE Partition Manager 3.0 (но в Ubuntu 17.04 он также будет). Затем откройте окно терминала и запуститеsudo apt update; sudo apt install cryptsetup lvm2 partitionmanager
- Запустите KDE Partition Manager и разблокируйте зашифрованный том LUKS. В качестве альтернативы вы можете сделать это из терминала:
sudo cryptsetup open /path/to/USB_device decrypted
, После этого шага/dev/mapper/decrypted
будет содержать объем LVM PV. - Теперь вам нужно активировать LVM. Либо нажмите F5 (обновить) в KDE Partition Manager, либо введите
sudo vgchange -ay
в терминале. Ваша корневая файловая система должна теперь появиться как блочное устройство в/dev/mapper/
, Опять же, в KDE Partition Manager визуально легче увидеть имя вашей корневой файловой системы. Скажем так/dev/mapper/rootfs
но вам придется заменить правильный путь в командах ниже.
Затем выполните следующие команды для chroot в вашей корневой файловой системе:
sudo mount /dev/mapper/rootfs /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /sys /mnt/sys
sudo mount --bind /proc /mnt/proc
sudo chroot /mnt
sudo mount /boot
Теперь вам нужно восстановить initramfs. Попробуйте запустить:
sudo update-initramfs -u -k all
и посмотрите, показывает ли он какие-либо ошибки в lvm, которые вам нужно исправить. Я постараюсь найти чуть больше ссылок позже... Пожалуйста, опубликуйте сообщения об ошибках здесь.