当 vnc 进入 ubuntu 服务器时无法访问服务器声卡

当 vnc 进入 ubuntu 服务器时无法访问服务器声卡

我已经使用 xfce、nxserver 和现在的 tightvncserver 设置了我的 ubunutu 10 服务器,以便我可以从我的 Windows 7 笔记本电脑远程控制它。NX 可以很好地进行远程访问,但是当我运行(例如)exaile 时,服务器的声卡不会发送任何声音。我安装了 tightvncserver 并连接,但遇到了同样的问题。Exaile 打开了,声音没有静音,我可以看到声卡已安装(通过cat /proc/asound/cards),但我似乎无法让远程会话访问服务器的声卡。

另外,为了确认声卡正常工作,我将显示器/键盘连接到服务器并打开本地 xfce 会话。这工作正常。在运行本地会话的同时,我还能够使用 NXClient 打开远程会话并启动 exaile - 然后成功将声音传送到本地卡。但是,在断开显示器/键盘并将盒子移回正常位置后,我无法通过 NX 或 VNC 会话播放声音。

有人有什么建议吗?当然可以配置我的远程会话以将声音传输到服务器的声卡,对吗?或者至少在没有显示器或键盘的情况下启动并运行 xfce,但可以访问声卡,以便我可以通过 VNC 进入它?

谢谢!

答案1

在 Ubuntu 上,控制台套件管理设备权限等。当前活动(前台)会话的所有者被添加到设备节点的 ACL 中:在本地会话中/dev运行,您应该在那里看到您的用户名。getfacl /dev/audio

但是,这还不适用于 SSH。我尝试ck-launch-session通过 SSH 连接,ConsoleKit 不会将会话标记为“活动”。[ConsoleKit TODO] 文件仍然列出:

  • 使 openssh 正确报告会话
    并不像使用 PAM 模块那么简单。

我没有安装 VNC 服务器,因此无法测试,但编辑 VNC 会话启动脚本(我假设 VNC例如,运行会话启动脚本,ck-launch-session xfce4-session而不仅仅是xfce4-session 可以工作。

使用ck-list-sessions来查看您的是否被标记为active = TRUE


分配权限的旧方法是将您自己添加到audio拥有 中的所有音频设备节点的组中/dev。使用sudo gpasswd -a $USER audio(并记住它不会影响当前打开的会话)。

相关内容