我想我已经基本理解了这些systemd drop-in files
工作,喜欢/etc/httpd/conf.d/
或/etc/sudoers.d/
我的问题:是否有一些辅助命令可以显示当前的聚合结果?
即查看.d
文件夹中所有内容如何一起播放,并验证fooProperty
最终true
不是false
……
答案1
systemctl show
对于服务单元,您可以使用或选项列出所有属性-p
,或--property
仅列出一个。您还可以使用systemctl cat
连接所有不同的文件,但不合并任何信息。例如,对于我的http.service
:
$ systemctl cat httpd
# /usr/lib/systemd/system/httpd.service <--highlighted
....
[Unit]
Description=The Apache HTTP Server
...
[Service]
...
PrivateTmp=true
...
# /etc/systemd/system/httpd.service.d/override.conf <--highlighted
[Service]
PrivateTmp=false
UMask=0002
上面的注释(在终端中突出显示)显示了 2 个文件的名称及其内容。您可以看到文件如何override.conf
为 提供不同的值PrivateTmp
。您可以使用以下命令查看结果值
$ systemctl show --property=PrivateTmp httpd
PrivateTmp=no
但是,这不适用于其他单位,例如httpd.socket
,您可以show
按照上述方法操作,但在我覆盖的文件中的属性上失败:
$ systemctl show --property=ListenStream httpd.socket
Property ListenStream does not exist.
我正在使用 231 版本,情况可能发生了变化。