我有带全盘加密的笔记本电脑。有一个未加密的 /boot 分区,另一个分区 /dev/sda5 是。
为了解密,它要求我输入密码,然后将其传递给命令 /sbin/cryptsetup luksOpen ${name} ${device}。
如果命令 /sbin/cryptsetup 在加密分区上,它如何解密分区,这是不可访问的。我想也许 /boot 分区中有该命令的副本,但我没有找到。
有人可以对此有所了解吗?
许多 Linux 发行版在启动时使用内存文件系统作为临时根文件系统。这种内存文件系统有两种形式:initrd,传统形式,它是一个 RAM 驱动器,和 initramfs,现代形式,它是一个由存档中的数据填充的文件系统。
initrd(或initramfs,这里的区别无关紧要)上的程序的工作是执行挂载根文件系统所需的一切工作。这包括加载相关驱动程序的模块(用于硬盘、根文件系统类型以及任何其他数据层,例如 RAID 和卷加密)。这还包括准备好根卷以供使用。提示用户输入加密密码是这些任务之一。
initrd 由引导加载程序(Grub、Lilo 等)与内核同时加载。它通常与内核存储在同一目录中,在/boot
.
大多数发行版都会在内核升级时重新生成 initrd。您可能还需要在其他情况下重新生成 initrd,例如更改根文件系统的位置或卷类型。如果根文件系统被加密,发行版将确保 initrd 包含cryptsetup
和crypttab
(这些是从生成 initrd 时制作的根文件系统的副本)。
归档时间: |
|
查看次数: |
407 次 |
最近记录: |