首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为加密的根分区安装引导?

如何为加密的根分区安装引导?
EN

Ask Ubuntu用户
提问于 2016-12-04 20:06:41
回答 1查看 14K关注 0票数 5

我以某种方式升级并丢失了引导分区上的内核。

我已经成功地恢复了其中的大部分(通过引导一个旧的14,挂载加密的分区并对其进行着色--因此下面的/mnt ),但是我仍然无法启动。它从不要求我的根分区密码,并且被卡在initramfs shell中。

我尝试过将它添加到/etc/缺省/grub中

代码语言:javascript
复制
GRUB_CMDLINE_LINUX="cryptdevice=/dev/disk/by-uuid/8711af09-1c70-414a-af43-e859ddabf09f:cryptroot root=/dev/mapper/cryptroot"

UUID在我/etc/crypttab中的位置:

代码语言:javascript
复制
sda5_crypt UUID=8711af09-1c70-414a-af43-e859ddabf09f none luks,discard

但是,当我这样做并运行grub-安装如下:

代码语言:javascript
复制
grub-install --boot-directory=/mnt/boot /dev/sda1

我明白了:

代码语言:javascript
复制
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 )。

当我打开这个选项时:

代码语言:javascript
复制
GRUB_ENABLE_CRYPTODISK=y

运行grub-安装,我得到:

代码语言:javascript
复制
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.

我能找到的所有例子似乎都是为了整个光盘的安装,似乎没有人谈论这个案例。

请帮帮我!

EN

回答 1

Ask Ubuntu用户

发布于 2017-02-23 19:52:52

据我所知,您不需要将GRUB_CMDLINE_LINUX设置为加密块设备。相反,请确保以下内容正常:

  1. 安装grub:确保grub安装在您的/boot分区上。如果它还在抱怨ext2,那么将您的/boot格式化为ext3或ext4 (我假设您在/boot方面没有任何有价值的数据)。

我推荐以下干净的方法(来自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的位置,然后按选项卡输入。

  1. /etc/crypttab:您的条目应以下列形式填写:

目标SOURCE_DEVICE KEY_FILE选项

(例如my_encrypted_device /dev/sda5 5无luks)

请记住,密钥文件参数none请求用户交互地给出密钥文件。

  1. /etc/fstab:您/条目的第一个字段应该包含相同的设备映射名(即my_encrypted_device)
  2. 更新-initramfs:不要忘记更新您的RAM文件系统!update-initramfs -u -k all

你现在应该开始工作了。

注意:如您所说,GRUB可以安装在您的加密设备上。

票数 3
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/857028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档