Fedoraを[〜#〜] gnome [〜#〜]で実行し、最近インストールしました Linuxの場合はViber 。それはとても良いです、そしてすべてがうまく働いています。
Viberはオープンソースソフトウェアではないので、別のユーザーとして実行することにしましたuser:groupviber:viber
を作成して、concentなしでファイルにアクセスできないようにします。私または他のユーザーに属するViberファイルの内部から開こうとすると、それらを読み取ることができません。 目標は達成されましたが、部分的にです。さて、別の問題に遭遇しました。それは、Viberはmessagesそして私が電話をかけようとすると、それはマイクもスピーカーも見つからないということですか? 理由がわかっているように感じます(X Server(GNOME)をmyselfおよびViberとして実行しています)asviber:viber(user:group))。
Viberをviber:viber
として実行すると同時に、GNOMEセッションの実行中にマイクとスピーカーを使用できるようにする方法as myusername:myusername
?
SELinuxソリューションも歓迎しますが、具体的な例があります! chrootは解決策ではありません。私が理解しているように、上記と同じ問題が発生するからです。
それを実行するためのexecは次のとおりです:su - viber -c /opt/viber/Viber
FedoraでオーディオサーバーとしてPulseaudioが実行されていることに気づいていませんでした。
調査した結果、Pulseaudioを通常のユーザー(自分)として実行し、システムモードではなく、他のユーザー間でオーディオ(マイクとスピーカー)を共有する方法をようやく見つけました。
これを行うには、初期構成ファイルをホームディレクトリにコピーするだけで済みます。
cp /etc/Pulse/default.pa ~/.Pulse/default.pa
その後、次の構成オプションを追加します(~/.Pulse/default.pa
):
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
さて、オーディオを共有したいsers/userの下で、彼らのホームディレクトリ(あなたではない)にPulseaudioカスタムuser-configファイル~/.Pulse/client.conf
を作成し、次のオプションを追加します:
default-server = 127.0.0.1
新しい設定を適用するには、オーディオサーバーまたはコンピューター/サーバーを再起動することを忘れないでください。
最終的には、Viberを別のユーザーviber:viber
として実行し、GNOMEセッションをmyusername:myusername
として実行しながら、マイクとスピーカーにアクセスできるようになります。
Fedora 2で正常にテストされました。
システムモードのpulseaudio を実行し、すべてのユーザーにアクセスを許可する必要がありますが、残念ながら、これは アップストリームのPulseaudio開発者によって強く推奨されていません です。
上記を改善する必要があるsystemdサービススクリプトは次のとおりです。
# /etc/systemd/system/pulseaudio.service:
[Unit]
Description=PulseAudio Daemon
[Install]
WantedBy=multi-user.target
[Service]
Type=simple
PrivateTmp=true
ExecStart=/usr/bin/pulseaudio --system --disallow-exit
SELinuxを有効にして実行したい場合は、ここに 必要なSELinuxルールを説明する投稿 があります。
注意してください、/opt/viber/Viber
にはSUIDがあり、GUIDビットが設定されています。それでもrootとして実行される可能性があります(ただし、テストはしていません)。