我有以下傀儡服务:
service { "[email protected]": provider => systemd, ensure => running, enable => true, }
当我尝试在我的客户端上应用此configuration时,会引发以下错误:
err:/Stage[main]//Node[puppetclient]/Service[[email protected]]/enable:从false更改为true失败:无法启用[email protected]:
该服务运行良好,我可以确保它通过添加一个符号链接到getty.target.wants启动系统启动:
ln -s /lib/systemd/system/[email protected] /etc/systemd/system/getty.target.wants/[email protected]
在源文件中,我可以继续,从服务定义中删除“enable => true”,并在puppetconfiguration中手动添加符号链接,但是不应该由木偶来处理? 我在做一些非常错误的事情吗?
Puppet中的systemd提供者今天只使用两个命令来enable服务:
systemctl is-enabled <unit> ,检查当前启用状态的返回码 systemctl enable/disable <unit>来改变它 启用尚不存在的getty @ service实例时,enable命令会引发错误:
$ sudo systemctl enable [email protected] Failed to issue method call: No such file or directory
这会导致Puppet中显示的错误(尽pipestderr似乎没有显示)。
它看起来像我systemd中的差距,你不能启用模板的新实例。 Fedora中已经有了BZ#752774 ,但是评论表明它可能不会很快被添加。
您可能会更好地提交针对Puppet的function请求 ,以添加专门用于启用新实例的支持。 在你的function请求,我build议链接到Lennart的单位背景的解释 。