我正在尝试启动 systemd 服务 usnig dbus 服务。我正在关注下面提到的链接的示例 5:http://www.freedesktop.org/software/systemd/man/systemd.service.html
我的 dbus 服务是:
[D-BUS Service]
Name=com.native.Test_Dbus_060
Exec=/usr/sbin/server_060
User=apps
StandardOutput=tty
TTYPath=/dev/ttyS0
SystemdService=com.native.Test_Dbus_060.service
我的 systemd com.native.Test_Dbus_060.service 是:
[Unit]
Description=dbus test server
[Service]
Type=dbus
BusName=com.native.Test_Dbus_060
ExecStart=/usr/sbin/server_060
StandardOutput=tty
TTYPath=/dev/ttyS0
[Install]
WantedBy=multi-user.target
现在当我尝试激活时com.native.Test_Dbus_060.service
通过在dbus中获取上述总线来服务,它没有启动。
server_060 和 client_060 都使用 dbus API 进行 IPC。
注意:在没有 systemd 服务和 dbus 服务的情况下直接使用时,我的 server_060 和 client_060 可以正常通信。
我的第一个疑问是,这种类型的 systemd 服务是否可以启动?
如果是,那么为什么它在我的情况下不起作用?
好吧,如果您仔细查看所引用的页面,您会注意到以下注释:
对于总线可激活服务,不要在 systemd 服务文件中包含“[Install]”部分,而是在相应的 DBus 服务文件中使用 SystemdService= 选项,例如 (/usr/share/dbus-1/system-服务/org.example.simple-dbus-service.service)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)