当前位置: 首页 > 文档资料 > systemd 中文手册 >

systemd-cryptsetup-generator 中文手册

优质
小牛编辑
147浏览
2023-12-01

名称

systemd-cryptsetup-generator — /etc/crypttab 单元生成器

大纲

/usr/lib/systemd/system-generators/systemd-cryptsetup-generator

描述

systemd-cryptsetup-generator用于在系统启动的早期以及 systemd 重新加载其配置的时候,将 /etc/crypttab 中配置的加密卷,按照systemd-cryptsetup@.service(8)模板,生成对应的单元实例。

systemd-cryptsetup-generator 遵守systemd.generator(7) 规范。

内核引导选项

systemd-cryptsetup-generator可以识别下列内核引导选项:

luks=, rd.luks=

接受一个布尔值。默认值为 "yes" 。设为 "no" 表示彻底禁用该单元生成器。rd.luks= 仅适用于初始内存盘(initrd); luks= 则同时适用于 initrd 与主系统。

luks.crypttab=, rd.luks.crypttab=

接受一个布尔值。默认值为 "yes" 。设为 "no" 表示生成器将会完全忽略 /etc/crypttab 文件中配置的所有加密卷(但下面的 luks.uuid= 引导选项依然有效)。rd.luks.crypttab= 仅适用于初始内存盘(initrd); luks.crypttab= 则同时适用于 initrd 与主系统。

luks.uuid=, rd.luks.uuid=

接受一个 LUKS 超级块的 UUID 值。这将在系统启动过程中激活此 UUID 对应的加密块设备(就像该加密卷已经配置在 /etc/crypttab 中一样)。可以多次使用此引导选项以激活多个加密块设备。rd.luks.uuid= 仅适用于初始内存盘(initrd); luks.uuid= 则同时适用于 initrd 与主系统。

如果已经在 /etc/crypttab 中配置了此 UUID 所对应的加密卷,那么将使用已有的配置(映射名称, 密码文件, 加密卷选项)。否则该加密卷将使用 "luks-UUID" 作为映射名称。

如果使用了此引导选项,并且存在 /etc/crypttab 文件,那么无论是在 initrd 环境中、还是在主系统中,只有那些已经在此引导选项中列出的 UUID 所对应的加密卷才会被激活。

luks.name=, rd.luks.name=

接受一个 "UUID=映射名称" 格式的值。此选项隐含了 rd.luks.uuid=luks.uuid= 引导选项,相当于在指定了加密卷的 UUID 的同时 还指定了加密卷的映射名称。

rd.luks.name= 仅适用于初始内存盘(initrd); luks.name= 则同时适用于 initrd 与主系统。

luks.options=, rd.luks.options=

接受一个 "UUID=选项列表" 格式的值。"选项列表"是一个逗号分隔加密卷选项列表,它将会强制覆盖 与此 UUID 对应的加密卷选项(若存在)。

如果仅给出了"选项列表"(省略了UUID),那么表示设置默认的加密卷选项。也就是仅作用于那些既没有在内核引导选项中列出、也没有在 /etc/crypttab 中列出的加密卷。

rd.luks.options= 仅适用于初始内存盘(initrd); luks.options= 则同时适用于 initrd 与主系统。

luks.key=, rd.luks.key=

接受一个 "UUID=密码文件" 格式的值。"密码文件"必须是一个绝对路径。它将会强制覆盖与此 UUID 对应的密码文件(若存在)。

如果仅给出了"密码文件"(省略了UUID),那么表示设置默认的密码文件。也就是当 rd.luks.uuid=luks.uuid= 指定的 UUID 找不到对应的 rd.luks.key=luks.key= 选项时,将使用默认的密码文件。

还可以指定一个 必须在解密 LUKS 设备之前先行挂载的外部设备。systemd-cryptsetup 将使用存储在该设备上的密码文件。可以在密码文件路径中附加冒号和设备标识符来指定 包含密码文件的设备(例如 rd.luks.uuid=b40f1abf-2a53-400a-889a-2eccc27eaa40 rd.luks.key=b40f1abf-2a53-400a-889a-2eccc27eaa40=/keyfile:LABEL=keydev)。因此,在本例中,将会尝试挂载卷标为 "keydev" 的块设备上的文件系统。此语法目前仅支持可以明确定位的单个设备,也就是必须明确指定 LUKS 设备的 UUID 值。

rd.luks.key= 仅适用于 初始内存盘(initrd); luks.key= 则同时适用于 initrd 与主系统。

参见

systemd(1),crypttab(5),systemd-cryptsetup@.service(8),cryptsetup(8),systemd-fstab-generator(8)