如果出现此错误,我该如何解决 Putty 的 x11 问题?PuTTY X11 代理:不支持的授权协议

如果出现此错误,我该如何解决 Putty 的 x11 问题?PuTTY X11 代理:不支持的授权协议

在我的客户端电脑上,我运行的是 Windows 10,并且安装了 XMing 和 Xming 字体。

我正在运行 Putty,并已将其配置为启用 X11 转发。我尝试将 X 显示位置留空(默认),并尝试使用值:0.0

在我的服务器上,我在 AWS 上运行 Ubuntu。我编辑了 /etc/ssh/ssh_config 文件以包含以下两行:

ForwardX11 yes
ForwardX11Trusted yes

我还使用安装了 xauthsudo apt-get install xauth

每当我尝试运行应用程序时,xterm &或者xclock我收到相同的错误:

PuTTY X11 proxy: Unsupported authorisation protocol
Error: Can't open display: localhost:10.0

我在网上搜索了一下,发现很多人报告了同样的问题,但没有明确的解决办法,至少对我来说是有效的。还有人解决了这个问题吗?

答案1

我终于找到了解决方案。问题似乎出在 .Xauthority 文件上。该文件的所有者是 root(见下文)。

-rw-------  1 root   root      124 May 13 18:19 .Xauthority
-rw-------  2 ubuntu ubuntu      0 May 14 19:56 .Xauthority-c
-rw-------  2 ubuntu ubuntu      0 May 14 19:56 .Xauthority-l

我尝试删除该文件并重新启动 xauth 和 ssh,但没有成功,因此我使用 sudo apt-get purge xauth 完全删除了 xauth。然后,我删除了主目录中的所有 .Xauthority 文件。然后,我重新安装了 xauth,再次使用 sudo apt-get install xauth。新的 .Xauthority 文件归 ubuntu 所有。

-rw-------  1 ubuntu ubuntu    100 May 14 20:27 .Xauthority

我最终用 X 显示位置 :localhost.0 和 :0.0 测试了 Putty,但似乎没什么关系,因为两者都有效。然后我用 xclock & 测试,最后它就弹出来了。

相关内容