显示已合并其覆盖内容的 systemd 单元文件

显示已合并其覆盖内容的 systemd 单元文件

systemctl cat myunit.service打印主文件的内容myunit.service,后面跟着任何覆盖文件。有没有办法打印 systemd 实际使用的单元文件,即由覆盖合并到主单元中形成的单元文件?

答案1

您可以使用它systemctl show myunit.service来显示单元的属性。它将打印与该单元文件相关的所有属性、全局配置以及在单元文件中进行的任何自定义。

默认情况下,空属性会被隐藏。使用 --all 也可以显示这些属性。

systemctl show myunit.service --all

如果您想检查给定的属性,请使用以下语法:

systemctl show myunit.service --property=<PROPERTY_NAME> 

#example
#systemctl show myunit.service --property=ExecStart 

请注意,输出可能并不完全符合您的预期:

请注意,该命令显示的属性通常是原始配置设置的更低级、标准化版本,除了配置之外,还公开运行时状态。例如,服务单元显示的属性包括服务当前主进程标识符“MainPID”(即运行时状态),并且即使匹配的配置选项以“...Sec”结尾,时间设置也始终以“...USec”后缀结尾的属性公开,因为微秒是系统和服务管理器内部使用的标准化时间单位。

有关这些属性的详细信息,请参阅支持这些属性的 D-Bus 接口的文档,请参阅org.freedesktop.systemd1(5)

相关内容