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

systemd-machine-id-setup 中文手册

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

名称

systemd-machine-id-setup — 初始化 /etc/machine-id 文件

大纲

systemd-machine-id-setup

描述

systemd-machine-id-setup可被操作系统安装程序用来初始化/etc/machine-id 中的"machine ID"值,可以设为一个指定值,也可以设为一个随机生成的值。详见machine-id(5)手册。

如果没有明确使用 --commit选项并且 /etc/machine-id 不存在或其中的值不合格,那么将初始化一个新的"machined ID"。此新"machine ID"将依次使用下列方法获得:

  1. 如果已经存在一个有效的 D-Bus "machine ID",那么就使用此 D-Bus "machine ID"来初始化/etc/machine-id 文件。

  2. 如果运行在已经配置了UUID(通过 -uuid 选项)的KVM虚拟机中,那么就使用此UUID来初始化 /etc/machine-id 文件。KVM虚拟机的创建者必须确保UUID的唯一性。

  3. 如果运行在已经配置了UUID的Linux容器中,那么就使用此UUID来初始化 /etc/machine-id 文件。详见 ContainerInterface 文档。

  4. 如果上述方法都不可用,那么随机生成一个新的"machine ID"来初始化 /etc/machine-id 文件。

可以使用 --commit选项将新生成的临时"machine ID"写入到磁盘中永久保存。详见下文。

可以使用systemd-firstboot(1)初始化已挂载(但未启动)的系统镜像的"machine ID"。

选项

能够识别的命令行选项如下:

--root=root

指定一个"根目录",包括配置文件在内的所有路径都将加上 root 前缀,包括 /etc/machine-id 自身。

--commit

将生成的临时"machine ID" 写入到磁盘中永久保存。所谓"临时"的意思是指在 系统启动的早期绑定挂载的 "tmpfs" 文件系统中的 /etc/machine-id 文件。这可能是由于在系统启动的早期,/etc 依然处于只读状态 并且其中并不包含合格的 /etc/machine-id 文件。

如果 /etc/machine-id 未被绑定挂载到 "tmpfs" 文件系统,或者 /etc 处于只读状态,那么此选项将不执行任何操作。否则,此命令将会把临时生成的"machine ID"写入到磁盘中,然后卸载 /etc/machine-id 所在的文件系统,以确保"machine ID" 确实被永久保存。

此选项主要被系统启动早期的 systemd-machine-id-commit.service(8) 使用。

--print

操作完成之后打印出"machine ID"的值

-h, --help

显示简短的帮助信息并退出。

--version

显示简短的版本信息并退出。

退出状态

返回值为 0 表示成功,非零返回值表示失败代码。

参见

systemd(1),machine-id(5),systemd-machine-id-commit.service(8),dbus-uuidgen(1),systemd-firstboot(1)