声音在 root 中无法正常工作,但在普通用户中可以正常工作

声音在 root 中无法正常工作,但在普通用户中可以正常工作

我正在使用 debian 9 和 gnome。
当我使用 root 时,音量控制不起作用,并且没有扩音器符号(在 gnome 面板中也缺少该符号)。我可以移动滑块,但不会影响音量。

在此输入图像描述

Settings/中Sound没有任何输出/输入设备。
当您在终端中不断删除或使用fn不起作用的音量控件时,不会发出任何系统声音。
Fn 键适用于其他功能,但不适用于音频。
除了系统声音外,音频正在工作,我可以使用设置音量alsa-mixer(这不切实际)。

如果我使用普通用户,一切都很好:音量控制(在 gnome 面板中)可以工作并且有扩音器符号,系统声音可以工作,音频的 fn 键可以工作,并且有Settings输出Sound/输入设备。

我怎样才能修复根的音频?

不要告诉我这很危险以及为什么我想以 root 身份登录。
我真的很想这样做。
从评论中我可以看到 dirkt 指出:

根据设计,Pulseaudio 默认情况下仅适用于登录用户

知道如何修复吗pulseaudio

答案1

可惜你不知道所有这些问题都是由 引起的pulseaudio
如果您在终端中运行,pulseaudio您将看到如下内容:

W: [pulseaudio] main.c: This program is not intended to be run as root (unless --system is specified).

如果运行pulseaudio --system不行(至少在我的系统上),不知道有没有什么合适的解决办法。
但有一个非常简单且完美的解决方法仅使用pulseaudio

  1. 将此文件夹从另一个“普通”用户复制/home/normal-user/.config/pulse到您的主目录 ( ) 中。/root/.config

  2. /root/.config/autostart(如果该文件夹不存在,则创建它)中创建一个包含以下内容的文件:

    [Desktop Entry]
    Type=Application
    Terminal=false
    OnlyShowIn=GNOME;KDE
    Exec=pulseaudio
    Name=pulseaudio
    Comment=Volume/audio controls
    
  3. 并命名它pulseaudio.desktop(重要的是 .desktop)。
    双击就可以了(信任并启动)。

    现在,每次您(以 root 身份)登录时,您的声音都会很好。

其他图形用户界面:

它也适用于 KDE 等离子。
如果您的 GUI 使用pulseaudio您可以将其添加到条目中OnlyShowIn=
或者删除该行以始终启动pulseaudio(在每个GUI上)。

相关内容