7.2. 挂载加密卷
假如您在安装的时候创建了加密卷并设置了挂载点,在启动的时候每个这样的卷将会要求输入密码。
通过 dm-crypt 加密的分区,启动的时候会有下面的提示信息:
- Starting early crypto disks...
part
_crypt(starting)- Enter LUKS passphrase:
提示的第一行,part
是底下分区的名称,如:sda2 或 md0。您也许想知道输入密码的具体 是哪一卷。它是与 /home
相关?或者是 /var
?当然,如果您只有一个加密卷,只需输入密码就可以轻松地建立起该卷。假如您在安装过程中建立了多个加密卷,把上一步第 6.3.4.6 节 “配置加密卷”里的记录放在手边。要是之前没有记下 *`part`*_crypt
和挂载点之间的映射关系,仍然可以在新系统的 /etc/crypttab
和 /etc/fstab
里面找到它。
根文件系统加载的时候,提示信息或许会有些不同。这取决于使用了哪个 initamfs 生成器制作用于启动的 initrd。下面的例子是使用 initramfs-tools
生成的 initrd:
Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Enter LUKS passphrase:
输入密码时不会有字符(包括星号)回显。如果密码输错,您还有两次机会修正。第三次输错后,启动过程将跳过该卷进入到下一个文件系统。请参阅第 7.2.1 节 “故障处理”了解更多信息。
输入密码之后,启动过程与通常情况相同。
7.2.1. 故障处理
如果由于输错密码造成无法加载加密卷,您只能在启动以后手动加载。有下面这些情况。
第一种情况是与根分区相关。如果它不能正确加载,启动过程将中止,您不得不重新启动计算机再试一次。
最简单的例子就是保存诸如
/home
或/srv
数据的加密卷。启动后,您可以手动挂载它们。对于 dm-crypt 需要一些技巧。首先,您需要用 device mapper 注册卷,需要运行:
#
这将扫描
/etc/crypttab
里面的所有卷,输入正确的密码之后,将在/dev
目录下面创建对应的设备。(已注册的卷会被跳过,因此您可以放心地多次运行该命令。) 正确注册以后,就可以按普通的方法加载这些卷:#
如果保存着非临界系统文件(
/usr
或/var
)的卷不能加载,系统仍然可以启动,并且您仍然可以按前一种情况手动加载。但是,您需要(重新)启动默认 runlevel 下的任何 service,因为它们很可能没有启动。最简单的做法是切换到第一个 runlevel 再返回#
在 shell 提示符下输入该命令,并在要求输入 root 口令时按下 Control+D。