を経由してユーザーにsystemdサービスを開始:Starting a systemd service via pythonこの使用:例えば、サービスを制御するためのdbus経由にsystemdのマネージャーを使用することが可能であるPythonとdbusの
import dbus
sysbus = dbus.SystemBus()
systemd1 = sysbus.get_object('org.freedesktop.systemd1', '/org/freedesktop/systemd1')
manager = dbus.Interface(systemd1, 'org.freedesktop.systemd1.Manager')
job = manager.RestartUnit('test.service', 'fail')
をしかし、systemdにも--user
とユーザのサービスファイルを扱うことができますフラグ、例:
ユーザのマネージャはdbus(pythonを使用)からどのように使用できますか?これが与えるとして、トリックをしませんでしたがdbus.Bus()
かdbus.SessionBus()
とdbus.SystemBus()
の交換:
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1