只有一些应用程序可以使用 Ubuntu 22.04 Virtualbox 客户机上的 X11 转发到 XcXsrv

只有一些应用程序可以使用 Ubuntu 22.04 Virtualbox 客户机上的 X11 转发到 XcXsrv

我有一台运行 Virtualbox 的 Windows 10 主机,其中安装了 Ubuntu 22.04 客户机。它使用 NAT 网络,将端口 22 转发到客户机。然后,我在另一台 Windows 10 机器上安装了 VcXsrv X Server v1.20.14.0。从那里,我设置了 Putty 以允许在 ssh 会话期间将 X11 转发到另一台机器上的 Ubuntu 22.04 客户机。

我发现只有部分应用程序可显示。xclock 和 gvim 会立即弹出,并且表现如您所期望的那样。shotwell 和 gedit 不会显示,但也不会给出任何错误消息。firefox 不会显示,并且会抱怨不支持授权协议。

Using username "user".
Welcome to Ubuntu 22.04 LTS (GNU/Linux 5.15.0-37-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

0 updates can be applied immediately.

Last login: Fri Jun 10 21:00:39 2022 from 10.0.2.2
user@ubuntu:~$ echo $XDG_SESSION_TYPE x11
tty x11
user@ubuntu:~$ sudo cat /etc/ssh/ssh_config | grep X11
[sudo] password for user:
ForwardX11 yes
ForwardX11Trusted yes
user@ubuntu:~$ xclock
user@ubuntu:~$ gvim
user@ubuntu:~$ gedit
^C
user@ubuntu:~$ firefox
PuTTYNG X11 proxy: Unsupported authorisation protocol
Error: cannot open display: localhost:10.0

答案1

我今天为此奋斗了几个小时。

X-!Snaps! 未启动

上面的帖子链接指向我使用的解决方案。我不完全了解细节,但以下行允许我成功运行 Firefox:

XAUTHORITY=$HOME/.Xauthority /snap/bin/firefox

这也适用于我遇到问题的其他应用程序。这很令人惊讶,因为我是通过 APT 而不是通过 snap 安装的 chromium 和 firefox。我重新安装了 firefox,并注意到它在安装时提到了 snap。

我认为 snap 不知道 XAUTHORITY 在哪里,执行此操作会告诉它 XAUTHORITY 在哪里。不要引用我的话。

相关内容