解決策

解決策

私は2つの異なるユーザーで2つのKDEセッションを実行します。 2つのアカウントを切り替えると(Ctrl + Alt + F8など)、あるアカウントで再生された音楽は別のアカウントでミュートされます。仮想端末(Ctrl + Alt + F1)に切り替えても同じことが発生します。

私が知る限り、これは意図的なものであり、複数の人間のユーザーに適していますが、私の設定では面倒です。

他のKDEセッションや仮想端末に切り替えるときは、音楽を聴き続けますか?

私はKDE 5.36.0とPulseaudio 8.0と組み合わせてUbuntu 16.04 LTS(Xenial Xerus)ベースのKDE Neon 5を使用しています。

ベストアンサー1

解決策

  1. プレイできる必要があるすべてのユーザーを追加してください。パルスアクセスグループ

    # adduser problemofficer pulse-access

  2. 作る/etc/systemd/system/pulseaudio.service次のコンテンツが含まれています。

    [Service]
    Type=simple
    PIDFile=/var/run/pulse/pid
    ExecStart=/usr/bin/pulseaudio --daemonize=yes --system=yes --disallow-module-loading=yes --disallow-exit=yes
    
    [Install]
    WantedBy=multi-user.target
    
  3. 起動時に起動するようにこの新しいシステムサービスを有効にします。# systemctl enable pulseaudio

  4. 参考までに、この設定は

    • 安全性が低い(たとえば、他のユーザーがマイクで聞くことができる)
    • サウンド出力が自動的にヘッドフォンに切り替わったり、ヘッドフォンから自動的に切り替わったりしません。
    • Bluetoothが機能しない可能性があります。以下の警告セクションも参照してください。
  5. 再起動

理由

サウンドがオフになる理由は、ログインするたびにそのユーザー権限でPulseaudioが起動し、システムが他のユーザーが他のユーザーの音声を聞くことを許可していないためです。

ソリューションの背景

パルスオーディオ

この問題を解決するには、Pulseaudioがroot権限で起動され、すべてのユーザーのみが使用できるシステム全体のデーモンとして実行する必要があります。誰もがこのインスタンスに接続し、他のユーザーが再生または録音したすべてを再生して聞くことができます。

Pulseaudioは実際には常にrootとして実行されるわけではありませんが、これらの権限を放棄してユーザーを想定しています。脈拍

~からman pulseaudio

ユーザー 脈拍、グループ 脈拍:PulseAudioがシステムデーモンとして実行され(上記の--systemを参照)、rootで起動すると、デーモンは権限を放棄し、このユーザーとグループを使用する一般ユーザープロセスになります。 PulseAudioがユーザーデーモンとして実行されている場合、このユーザーとグループは意味がありません。

「ユーザーデーモン」は「システムデーモン」と同じではありません。前者は以前にPulseaudioが実行された方法であり、後者は変更を適用した後に実行される方法です。

Pulseaudioシステムサービスに接続するには、次のものが必要です。パルスアクセスグループ。

再びman pulseaudio

グループ パルスアクセス:PulseAudioがシステムデーモンとして実行されている場合(上記の--systemを参照)、このグループのメンバーはAF_UNIXソケットを介して接続するとアクセスできます。 PulseAudioがユーザーデーモンとして実行されている場合、このグループは意味がありません。

システムサービス

簡単な解決策として、Pulseaudioのすべての「ユーザーデーモン」インスタンスを終了してから、/usr/bin/pulseaudio --system=yes概念証明チェックを実行すると便利です。

これを継続的に作成し、起動時にPulseaudioデーモンが自動的に起動されるようにするには、systemdサービスとして追加する必要があります。ファイルの内容です/etc/systemd/system/pulseaudio.serviceです。

Pulseaudioはすでにシステムデーモン²を見つけたときにユーザーデーモン²を起動しないため、このソリューションは機能します。

警告する

Pulseaudio 公式ドキュメントPulseaudioをシステムデーモンとして使用するための提案。上記の問題のいくつかは次のとおりです。

  • ...セキュリティの観点から特に問題となる点の1つはモジュールロードです。アクセス権を持つ人は誰でもモジュールをロードおよびアンロードできます。モジュールの読み込みを無効にできますが、Bluetoothおよびalsaホットプラグ機能は機能しません。

(これは、ヘッドフォンを接続してもサウンド出力が自動的にスピーカーからヘッドフォンに切り替わらないことを意味します。

  • ...システムモードでは、メモリ使用量とCPU負荷が高いです...

    (個人的にはロッドの変化が感じられませんでした。)

  • ...サーバーにアクセスできるすべてのユーザーは、互いのオーディオストリームをスニッフィングしてマイクを聞くことができます。

  • ...また、ジャック接続などの追加機能も多く失われます。

ここを含む私が理解していないので価値がないと思う他のものがあるかもしれません。

thecarpyの回答に関する注意事項:このソリューションでは、彼の回答に記載されている手順は必要ありません。

リソース


1 誰かがこの内容を詳しく説明していただきありがとうございます。

² 家庭[引用が必要]

おすすめ記事