encryption的根分区无法正常引导

我有一个Debian 8 VPSencryption的根分区。 在几个月前内核更新之后(软件包版本3.2.73-2 + deb7u3),它在引导时停止了正确解密。 据我所知,initramfs没有加载crypt库,所以不知道该怎么做。

我find了这个答案,但是这并没有解决问题,不pipe我们尝试了什么UUID。 https://unix.stackexchange.com/questions/107810/why-my-encrypted-lvm-volume-luks-device-wont-mount-at-boot-time

我们目前使我们能够启动的错误是在/etc/initramfs-tools/conf.d/cryptroot中用内容创build一个cryptroot文件

CRYPTOPTS=target=root,source=/dev/vda5,lvm=cloud--vg-root 

和一个带有内容的/ etc / crypttab

 # <target name> <source device> <key file> <option> crypt-vda5 /dev/vda5 none luks 

在启动期间,它要求input密码并挂载vg-root,然后再次要求我们input密码,并且抱怨分区已经挂载,并且抛出了一堆错误,我必须反复esc重复过去。 如果我们删除其中一个文件或更改它们,它不会在启动时提示input密码,从而挂载root失败。

任何想法如何删除kludge和解决这个好?

谢谢!

如果将以下内容添加到/etc/initramfs-tools/initramfs.conf并将/etc/initramfs-tools/conf.d/cryptroot移开,它可能会正常工作。

 CRYPTSETUP=Y 

然后重buildinitramfs,使用-k和-v选项运行它,它会告诉你它在做什么以及它是否增加了crypt支持。 -k选项将保留在临时目录mkinitramfs使用,这可以帮助调查是怎么回事。 当然,保留旧的initramfs的副本,以便在必要时启动。

另外/ etc / crypttab应该包含逻辑卷名称,如果是vg-root而不是crypt-vda5,请确保将其replace。 该名称是在以下使用的stringexample-name:

 cryptsetup -v luksOpen /dev/vda5 example-name 

哪些应该可以访问下:

 /dev/mapper/example-name