D-Bus

提供: ArchWiki
2022年5月12日 (木) 12:17時点におけるKgx (トーク | 投稿記録)による版 (→‎デバッグ: 翻訳)
ナビゲーションに移動 検索に移動

関連記事

D-Bus はプロセス間のやりとりを行うためのメッセージバスシステムです。システム全体とユーザーセッション両方で実行できるデーモンと、アプリケーションが D-Bus を使うためのライブラリのセットから構成されています。

dbussystemd の依存関係としてインストールされ、ユーザーセッションバスは各ユーザーごとに自動的に開始されます。

代替実装

dbus-broker

dbus-brokerlibdbus リファレンス実装のドロップインの置き換えで、D-Bus リファレンス実装との互換性を維持しつつ、高い性能と信頼性を提供する ことを目的としています。[1]

システムバスとして dbus-broker を有効にするには、まず dbus サービスを無効にしてから dbus-broker を有効にしてください。

# systemctl disable dbus.service
# systemctl enable dbus-broker.service

ユーザーバスとして有効にするには、目的のユーザーとして実行します:

$ systemctl --user enable dbus-broker.service

または、すべてのユーザーに対して有効にするには、root として実行します:

# systemctl --global enable dbus-broker.service

これらの設定を有効にするために再起動します。

ヒントとテクニック

dbus サービスの無効化

~/.local/share/dbus-1/services にある dbus のサービスを上書きすることができます。

デバッグ

  • D-Feet — 使いやすい D-Bus デバッガ GUI ツールです。D-Feet を使うことで実行中のプログラムの D-Bus インターフェイスを調べることができます。
https://wiki.gnome.org/DFeet || d-feet
  • QDbusViewer — GUID-Bus デバッガー、D-Bus サービスを検査し、それらのメソッドを呼び出すために使用できます。
https://doc.qt.io/qt-5/qdbusviewer.html || qt5-tools

busctl(1) から systemd を使用することもできます

参照