我希望将加密的根分区映射到设备映射程序名称system,即它最终应该出现在/dev/mapper/system下面。我的操作系统是Fedora 24工作站Linux,它在启用UEFI的计算机上使用Grub2启动。
内核已经通过UUID正确标识了加密的根分区,在安装过程中使用内核参数rd.luks.uuid=luks-144255e7-7a9a-4957-ad6e-d4a2a71c861a对其进行了Fedora配置。
有了上面配置的内核参数rd.luks.uuid,加密的根分区将被映射为与内核参数值相同的设备映射程序名,即出现在/dev/mapper/luks-144255e7-7a9a-4957-ad6e-d4a2a71c861a下面。
在阅读了systemd-cryptsetup-generator的手册之后,我认为它的内核参数rd.luks.name是选择另一个设备映射程序名称的合适参数,而不是单独使用rd.luks.uuid配置的名称。
不幸的是,Grub2似乎既不考虑rd.luks.name=luks-144255e7-7a9a-4957-ad6e-d4a2a71c861a=system,也不考虑rd.luks.name=144255e7-7a9a-4957-ad6e-d4a2a71c861a=system (没有luks-前缀)。
您知道如何在/dev/mapper/system下映射加密的根分区吗?
发布于 2016-09-14 05:20:34
来自man systemd-cryptsetup-generator:
rd.luks.name=仅由初始RAM磁盘( initrd )授予,而luks.name=则由主系统和initrd授予。
因此,即使在引导之后,使用luks.name=144255e7-7a9a-4957-ad6e-d4a2a71c861a=system而不是rd.luks.name=...也会使您的名字成为system。
如果这不起作用(我不明白文档的这一行到底想说什么,或者rd.是否会起作用),您可以尝试在/etc/crypttab中使用这个名称。再次来自man systemd-cryptsetup-generator:
如果/etc/crypttab包含具有相同UUID的条目,那么将使用其中指定的名称、密钥文件和选项。否则,设备的名称将为"
luks-UUID“。
例如,让行
system UUID=144255e7-7a9a-4957-ad6e-d4a2a71c861a可能需要将文件命名为/etc/crypttab.initramfs,而不仅仅是/etc/crypttab,以确保足够早(在打开分区之前)它是可见的。
在进行任何这些更改时,一定要将root=内核参数从/dev/mapper/luks-144255e7-7a9a-4957-ad6e-d4a2a71c861a更改为/dev/mapper/system。
https://unix.stackexchange.com/questions/291798
复制相似问题