dbus サービスの systemd サービスを開始します。

dbus サービスの systemd サービスを開始します。

起動時に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結局、このファイルは不要になりました。

おすすめ記事