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, которые вам нужно исправить. Я постараюсь найти чуть больше ссылок позже... Пожалуйста, опубликуйте сообщения об ошибках здесь.

Другие вопросы по тегам