プロセスが特定のデバイスを使用できるように権限を設定する方法はありますか?

プロセスが特定のデバイスを使用できるように権限を設定する方法はありますか?

例えば読むことができるようにここ、logind は systemd の一部であり、ユーザーセッションに対して特定のデバイスの権限を設定できます。映像もあります。この動作が実際にどのように機能するかを教えてください。簡単に言えば、amarokを起動して一部の曲を再生すると、ログインプロンプトだけを持つ他のユーザーまたはTTYに切り替えるまで音が鳴ります。アクティブなセッションが無効になっているためです。

特定のグループ(この場合は「オーディオ」)に1人以上のユーザーを追加すると、この問題が「解決」される可能性があることがわかりますが、他の回避策があるかどうか疑問に思います。私が本当に望むのは、すべてのユーザーがセッションをロックした場合でも常にサウンドカードを使用できるように、プロセスにいくつかの権限を設定することです。

それは可能ですか?音楽をたくさん聴くのにディスプレイをほとんどオンにしておく必要がないので、ただ画面をロックしているので、どうぞ。ただし、画面をロックするとアクティブセッションが無効になり、amarokの再生が停止します。はい、画面を消すのではなく、ロックする必要があります。

編集する:

私が使用するディストリビューションが重要だとは思わない。なぜなら、私がシステムをマウントしているなら、同じ問題になるからです。とにかく私はdebian sidを使用していますが、systemd、udev(およびいくつかの依存関係)などのいくつかのパッケージは実験用ブランチから来ており、現在バージョン219-9にあります。

ベストアンサー1

使用しているLinuxのバージョン/種類は不明ですが、サウンドデバイスのACLはudevルールを介してConsoleKitによって制御されているようです。私のDebianホストの/lib/udev/rules.d/70-udev-acl.rulesに次のようなものがあります。

# sound devices
SUBSYSTEM=="sound", TAG+="udev-acl"

コンソールキットがデータベースにサウンドデバイスを追加せず、サウンドデバイスのACLを管理しないようにマークを解除しようとしています。

おすすめ記事