Arch Linux 扬声器测试在我成为 root 之前就可以工作了

问题描述 投票:0回答:1

我最近在我的笔记本电脑上安装了 arch linux,配有 amd ryzen 5500u 处理器。 一旦我启动 root,我的扬声器就无法在 arch linux 中工作。 如果我登录到 arch 后

speaker-test -c 2

我的扬声器可以工作并发出声音。 我什至可以用 alsamixer 控制音量

但是一旦我这样做了

sudo su

成为root用户一切都停止了

[root@archlinux wraient]# speaker-test

speaker-test 1.2.11

Playback device is default
Stream parameters are 48000Hz, S16_LE, 1 channels
Using 16 octaves of pink noise
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
Playback open error: -2,No such file or directory

speaker-test 在 root 中提供此输出,即使我改回以前的用户(wraient),它也会说同样的事情,并且我无法在不重新启动的情况下使用我的扬声器。但问题是我无法

startx
如果没有 root 权限并启动我的 dwm、dmenu 和 st 环境。

我尝试重新安装pulseaudio、alsa-utils。

如果相关,对于某些命令,例如

[root@archlinux wraient]# systemctl --user daemon-reexec
Failed to connect to bus: No medium found

出现“找不到介质”错误。我不知道这是否正常,但这就是我所掌握的所有信息。

archlinux pulseaudio x-dwm dmenu
1个回答
0
投票

重新安装 Arch linux。

我认为没有任何效果的主要原因是每当我尝试使用时都会出现“无法联系总线错误”

systemctl --user 

我想我打破了一些包裹,导致 d-bus 无法工作。 我用的时候还发现没有d-bus地址

echo $DBUS_SESSION_BUS_ADDRESS

在提升用户之前它返回了

unix:path=/run/user/1000/bus

但是一旦我提升用户,它总是会返回

(没什么)

我什至尝试将 d-bus 地址手动设置为提升用户之前的 d-bus 地址,但它不起作用并且仍然返回

d-bus error : Endpoints are not connected.

即使我是普通用户。

d-bus 工作的唯一方法是在登录后提升用户权限。

由于我的 arch 安装方式,我只能使用 root 用户启动 dwm,因此使用 dwm 不是一个选项。

因此我不得不重新安装 arch linux。如果你也有类似的问题,我只能说一件事,

祝你好运!

© www.soinside.com 2019 - 2024. All rights reserved.