Audio
在命名空間中未檢測到聲音
我創建了一個命名空間並像這樣執行了一個終端:
ip netns exec <namespace> gnome-terminal
由於預設命名空間在 root 中處理,當我打開終端時,我更改為我的普通使用者:
su <user>
然後我執行 firefox、spotify 等。耳機中聽不到聲音,您注意到在聲音配置 (gnome) 中沒有應用程序發出聲音。正常完成後,發出聲音的應用程序會顯示在列表中,但是按照說明完成後,列表顯示為空。
PulseAudio 通過環境變數XDG_RUNTIME_DIR選擇路徑。當您更改為 root 時,您必須確保您需要的環境變數已失去給我們。
在我的情況下,為了在使用netns exec和setuidgid執行時使用 chrome ,我相應地設置了“PULSE_SERVER”、“PULSE_COOKIE”變數:
sudo ip netns exec myNamespace setuidgid drgecko \ bash -c "HOME='/home/drgecko' PULSE_SERVER=/run/user/$(id -u drgecko)/pulse/native PULSE_COOKIE=/home/drgecko/.config/pulse/cookie google-chrome"