起動時にD-Busを介して着信コマンドを受け取るPythonスクリプトを起動したいと思いますpydbus
。 root権限が必要です。を停止して再起動してこれを行うことができれば良いでしょう。systemctl
に入力したくありません/etc/rc.local
。
このスクリプトは以下に基づいています。この例。
ターミナル(X11セッションとtty)でスクリプトを正しく実行し、自分のdbusサーバーにコマンドを送信できます。ただし、.service
システムファイルを介して実行すると、gi.repository.GLib.Error: g-io-error-quark: Cannot autolaunch D-Bus without X11 $DISPLAY (0)
SessionBusを使用しているため、苦情が表示されます。だからSystemBusを使用するように切り替えましたが、これで権限エラーが発生しConnection ":1.474" is not allowed to own the service
ます。これは/etc/dbus-1/system.d/
。
それで、他のサービスがどのように機能するかを見ました。
/usr/share/dbus-1/system-services/org.manjaro.pamac.daemon.service
/etc/dbus-1/system.d/org.manjaro.pamac.daemon.conf
/usr/lib/systemd/system/pamac-daemon.service
これが私が使うべきすべてですか?これはとても面倒で、私が試しているすべてのもので新しいエラーが発生します。
これを行う方法について良い資料がありますか?
システムファイルを使用して.service
起動時に上記のリンクされた例をどのように起動できますか?
答え1
私は実際の例を作りました。
https://github.com/sezanzab/systemd-pydbus-example
/usr/share/dbus-1/system-services/org.manjaro.pamac.daemon.service
結局、このファイルは不要になりました。