0

私は dbus を初めて使用し、その使用方法を理解しようとしていますが、求めている答えが見つからないようです。

サービス名が一意であり、他のサービス名と競合しない限り、独自のサービス名を発明できるというのは正しいですか?

独自のサービス名を要求する dbus_bus_request_name() を呼び出すと、構成ファイルのセキュリティ ポリシーにより、そのサービスを所有することは許可されていないというエラーが表示されます。/etc/dbus-1 構成ディレクトリを見ると、1 つのシステム構成ファイル (/etc/dbus-1/system.conf) と、さまざまなサービス用の他の構成ファイルのサブディレクトリ (/etc/ dbus-1/system.d サブディレクトリ)。

他の .conf ファイルを例として使用して、サービス名の構成ファイルを追加しました。しかし、system.conf ファイルが個々の .conf ファイルを読み取っていることはわかりません。個々の構成ファイルが何らかの方法で読み込まれると想定するのは正しいですか? では、system.d ディレクトリ内の個々の .conf ファイルの 1 つを編集した後、または私が行ったように新しいサービス構成ファイルを追加した後に、システム バスに system.conf ファイルを再読み込みさせるにはどうすればよいでしょうか?

これは、2 つのプロセス パス メッセージを持つことができるようにシステム バスを構成する適切な方法ですか? 私のアプリケーションは、いくつかのプロセスで構成されるクローズド アプリケーションであるため、システム dbus を介して行う予定の唯一の通信は、自分のプロセス間のみであり、他のパブリック サービスやその他のよく知られているサービスではありません。

ありがとう、

-アンドレス

4

1 に答える 1

4

サービス名が一意であり、他のサービス名と競合しない限り、独自のサービス名を発明できるというのは正しいですか?

はい

独自のサービス名を要求する dbus_bus_request_name() を呼び出すと、構成ファイルのセキュリティ ポリシーにより、そのサービスを所有することは許可されていないというエラーが表示されます。

SYSTEM バスを使用していると思います。SYSTEM バスを使用する理由がない限り、特にテストの場合は SESSION バスを使用する方が簡単です。システムのセキュリティを確保するために SYSTEM バスが使用するセキュリティ機能は他にもあります。サービスの構成ファイルのいくつかを見てください。特定のサービスがバス上で特定の名前を所有できるようにする方法が示されています。

個々の構成ファイルが何らかの方法で読み込まれると想定するのは正しいですか?

はい、system.conf を見ると<includedir>、そのディレクトリ内のすべてを含むタグを確認できます。

では、system.d ディレクトリ内の個々の .conf ファイルの 1 つを編集した後、または私が行ったように新しいサービス構成ファイルを追加した後に、システム バスに system.conf ファイルを再読み込みさせるにはどうすればよいでしょうか?

SIGHUPaを dbus-daemon に送信します。

これは、2 つのプロセス パス メッセージを持つことができるようにシステム バスを構成する適切な方法ですか?

それはうまくいくはずです。

于 2013-11-14T21:48:59.993 に答える