archlinx下开启xrdp没有声音的问题

archlinx下开启xrdp没有声音的问题

我的是unraid下用kvm运行的archlinux

首选需要安装 pulseaudio 与 pulseaudio-module-xrdp 模块。

1
2
3
4
5
6
yay -S xrdp
sudo pacman -S xorgxrdp 
#将 allowed_users=anybody 添加到 /etc/X11/Xwrapper.config 以允许任何人启动 X 服务器。
sudo nano /etc/X11/Xwrapper.config 
sudo pacman -S pulseaudio
yay -S pulseaudio-module-xrdp

重启xrdp

1
sudo systemctl restart xrdp

如果没有声音或者声音设备

1
2
#尝试注释掉 /etc/pam.d/system-auth 中对 systemd-home 的所有引用。
sudo nano /etc/pam.d/system-auth

我的

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

[yanhui@archlinux ~]$ cat /etc/pam.d/system-auth
#%PAM-1.0

auth       required                    pam_faillock.so      preauth
# Optionally use requisite above if you do not want to prompt for the password
# on locked accounts.
-auth      [success=2 default=ignore]  #pam_systemd_home.so
auth       [success=1 default=bad]     pam_unix.so          try_first_pass nullok
auth       [default=die]               pam_faillock.so      authfail
auth       optional                    pam_permit.so
auth       required                    pam_env.so
auth       required                    pam_faillock.so      authsucc
# If you drop the above call to pam_faillock.so the lock will be done also
# on non-consecutive authentication failures.

-account   [success=1 default=ignore]  #pam_systemd_home.so
account    required                    pam_unix.so
account    optional                    pam_permit.so
account    required                    pam_time.so

-password  [success=1 default=ignore]  #pam_systemd_home.so
password   required                    pam_unix.so          try_first_pass nullok shadow sha512
password   optional                    pam_permit.so

-session   optional                    #pam_systemd_home.so
session    required                    pam_limits.so
session    required                    pam_unix.so
session    optional                    pam_permit.so

sudo systemctl restart xrdp 重启xrdp后 如果不行,如果手动运行 pulseaudio 后有声音 还一个方法

就是在 ~/.xinitrc 添加

1
2
nano ~/.xinitrc 
pulseaudio &

两个方法 二选一 或者都试试

官方wifi说明

1
2
3
4
5
6
7
没有声音
这可能是 loginctl 问题的征兆,因此请尝试以 以上内容修复。系统journal可能会遇到以下错误:

Failed to load module "module-x11-publish" (argument: "display=:10.0 xauthority="): initialization failed.
这是 systemd 不正确地启动 PulseAudio 的结果。一种解决方法是为您自己的用户或所有用户 禁用 user unit 文件 pulseaudio.service  pulseaudio.socket,然后启动 PulseAudio需要时通过在 /etc/pulse/client.conf 中将 autospawn 设置为 yes

如果仍然没有声音,请尝试使用 ~/.xinitrc 中的 pulseaudio & 手动启动 PulseAudio

我的~/.xinitrc

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[yanhui@archlinux system]$ cat ~/.xinitrc
#!/bin/sh

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then
    xrdb -merge $sysresources

fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f "$userresources" ]; then
    xrdb -merge "$userresources"

fi

if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi

# start some nice programs

if [ -d /etc/X11/xinit/xinitrc.d ] ; then
 for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
  [ -x "$f" ] && . "$f"
 done
 unset f
fi

#twm &
#xclock -geometry 50x50-1+1 &
#xterm -geometry 80x50+494+51 &
#xterm -geometry 80x20+494-0 &
#exec xterm -geometry 80x66+0+0 -name login

pulseaudio &

export DESKTOP_SESSION=plasma
/usr/lib/plasma-dbus-run-session-if-needed startplasma-x11
comments powered by Disqus