我以某种方式升级并丢失了引导分区上的内核。
我已经成功地恢复了其中的大部分(通过引导一个旧的14,挂载加密的分区并对其进行着色--因此下面的/mnt ),但是我仍然无法启动。它从不要求我的根分区密码,并且被卡在initramfs shell中。
我尝试过将它添加到/etc/缺省/grub中
GRUB_CMDLINE_LINUX="cryptdevice=/dev/disk/by-uuid/8711af09-1c70-414a-af43-e859ddabf09f:cryptroot root=/dev/mapper/cryptroot"UUID在我/etc/crypttab中的位置:
sda5_crypt UUID=8711af09-1c70-414a-af43-e859ddabf09f none luks,discard但是,当我这样做并运行grub-安装如下:
grub-install --boot-directory=/mnt/boot /dev/sda1我明白了:
Installing for i386-pc platform.
grub-install: error: attempt to install to encrypted disk without cryptodisk enabled. Set `GRUB_ENABLE_CRYPTODISK=1' in file `/etc/default/grub'..据我所知,GRUB_ENABLE_CRYPTODISK只适用于您加密整个磁盘时使用--我不是。我已经在/boot上安装了一个单独的/boot引导分区(或者在USB引导计算机上安装了/mnt/boot )。
当我打开这个选项时:
GRUB_ENABLE_CRYPTODISK=y运行grub-安装,我得到:
Installing for i386-pc platform.
grub-install: warning: Filesystem `ext2' doesn't support embedding.
grub-install: error: embedding is not possible, but this is required for RAID and LVM install.我能找到的所有例子似乎都是为了整个光盘的安装,似乎没有人谈论这个案例。
请帮帮我!
发布于 2017-02-23 19:52:52
据我所知,您不需要将GRUB_CMDLINE_LINUX设置为加密块设备。相反,请确保以下内容正常:
我推荐以下干净的方法(来自liveUSB或您的救援磁盘):
sudo -i cryptsetup open /dev/sda5 my_encrypted_device mount /dev/mapper/my_encrypted_device /mnt mount --bind /dev/ /mnt/dev && mount --bind /dev/pts /mnt/dev/pts && mount --bind /proc /mnt/proc && mount --bind /sys /mnt/sys mount /dev/<YOUR_BOOT_PARTITION> /mnt/boot chroot /mnt apt purge --auto-remove grub-pc按回车确认删除。
apt install grub-pc
在终端内部,使用空格键选择安装grub的位置,然后按选项卡输入。
目标SOURCE_DEVICE KEY_FILE选项
(例如my_encrypted_device /dev/sda5 5无luks)
请记住,密钥文件参数none请求用户交互地给出密钥文件。
update-initramfs -u -k all你现在应该开始工作了。
注意:如您所说,GRUB可以安装在您的加密设备上。
https://askubuntu.com/questions/857028
复制相似问题