![Arch linux grub 配置中的“dmname”是什么](https://linux22.com/image/185165/Arch%20linux%20grub%20%E9%85%8D%E7%BD%AE%E4%B8%AD%E7%9A%84%E2%80%9Cdmname%E2%80%9D%E6%98%AF%E4%BB%80%E4%B9%88.png)
您好,感谢您点击此处查看。
我注意到在 arch wiki 中,在 dm-crypt 的 cryptdevice 下有这个:
密码设备
此参数将使系统提示输入密码,以在冷启动时解锁包含加密根的设备。它由加密钩子解析以识别哪个设备包含加密系统:
cryptdevice=设备:dmname
device 是支持加密设备的设备的路径。强烈建议使用持久块设备命名。
dmname 是解密后赋予设备的设备映射器名称,
/dev/mapper/dmname.
如果 LVM 包含加密根,则 LVM 首先被激活,包含加密根逻辑卷的卷组将用作设备。然后是要映射到根的相应卷组。参数遵循以下形式cryptdevice=/dev/vgname/lvname:dmname
在此,我想知道为什么有些人说:root
,而有些人说cryptoroot
,还有人说vgname
。我很困惑,哪一个应该是官方的?我做到了:root:allow-discards
并且效果很好。在此我请你承担。顺便说一句,仅当您想创建加密的拱门时才编辑此行。
感谢您再次查看并祝您度过愉快的一天。
答案1
您可以使用任何您想要的dmname
参数,只要确保在其他地方(例如在fstab
)引用设备时使用相同的名称或使用 UUID 即可。当使用 cryptsetup ( ) 手动打开设备时cryptsetup luksOpen <device> <name>
,您还需要指定一个名称,该名称也可以是您想要的任何名称,这是同样的情况。甚至可以在每次打开设备时使用不同的名称(但这对于需要安装的系统设备等来说是不切实际的)。
打开加密设备时,cryptsetup 在加密设备之上创建一个新的设备映射器设备,该设备(从系统角度来看)未加密(系统看到具有 ext4 文件系统的“正常”设备,唯一的区别是所有写入在将数据写入底层块设备之前它会被加密)并且您需要为其命名,正如我已经说过的,您可以使用任何您想要的名称。有些工具(例如 UDisks 和 systemd)luks-<UUID>
仅用于确保名称在系统范围内是唯一的,但这不是必需的。
这是加密(解锁)分区在 Fedora 中的样子,名称为luks-<UUID>
:
└─sda2 8:2 0 930,5G 0 part
└─luks-094c2ba3-eb59-48fe-83ab-eca3fe533c03 253:0 0 930,5G 0 crypt
这是/dev/mapper
符号链接:
$ ls -la /dev/mapper/luks*
lrwxrwxrwx. 1 root root 7 19. pro 08.25 /dev/mapper/luks-094c2ba3-eb59-48fe-83ab-eca3fe533c03 -> ../dm-0