pulseaudioはrootとして実行されます。

pulseaudioはrootとして実行されます。

私のPCにUbuntu 12.04がインストールされていますが、最近編集して/etc/passwd 変更しました。

user1:x:00:00:user1,,,:/home/user1:/bin/bash

user1にroot権限を与えます。一部のカスタムソフトウェアを実行するには、システムに常にrootとしてログインする必要があります。

これでサウンドが機能せず、音量アイコンが無効になっているようです。私はpulseaudio悪魔がrootとして実行することができないので、オーディオが動作しないことを知っています。 pulseaudioの権限をrootとして実行するように設定するなどの問題をどのように解決できますか?

コマンドを入力すると

 /usr/bin/pulseaudio --start

私に出力を与える

W: [pulseaudio] main.c: This program is not intended to be run as root (unless --system is specified).
E: [autospawn] core-util.c: Home directory /home/user1 not ours.
W: [autospawn] lock-autospawn.c: Cannot access autospawn lock.
E: [pulseaudio] main.c: Failed to acquire autospawn lock

編集する

トラブルシューティング方法:

パルスオーディオイコライザーのルートチェックを無効にすることでこの問題を解決しました。

sed -i 's/exit 1/#exit1/g' /usr/bin/pulseaudio-equalizer 

答え1

「user1 ルート許可」は正確ではありません。実際に行うことは、user1rootユーザーのエイリアスを作成することです。ユーザーのアイデンティティを決定するのは、名前ではなくユーザーIDです。名前はログイン時に入力することです(これはまた、取得するシェルと属するグループを決定しますが、それはすべてです)。今「何らかの理由でシステムは常にrootとしてログインします」 - はい、その理由はまさにあなたですはいルートとしてログインします。

一部のプログラムはrootとして実行したくないので、正しく動作しません。

ユーザーIDを返す/etc/passwdには、アイテムを回復する必要があります。user1次に、user1のホームディレクトリにあるすべてのファイルの所有権を再度次に変更します。

find /home/user1 ! -type l -uid 0 -exec chown user1 {} +

その後、ログアウトして再度ログインすると、システムは再び機能します。現在の問題により、いくつかの望ましくない副作用が依然として存在する可能性がある。実行している操作がわからない場合は、ファイルの権限と所有権を変更するときに注意してください。ご質問はこちらまでお問い合わせください。

関連情報