为什么我无法在远程 ssh 服务器主机上的默认“$DISPLAY”上启动 GUI 程序?

为什么我无法在远程 ssh 服务器主机上的默认“$DISPLAY”上启动 GUI 程序?

我通过 ssh 连接到远程主机(没有 X 转发)。

在远程主机上sshd创建的shell中,为什么不能在默认情况下启动GUI程序$DISPLAY

$ eog
Unable to init server: Could not connect: Connection refused

(eog:31542): Gtk-WARNING **: 23:11:16.793: cannot open display: 

$ echo "$DISPLAY"

$

当明确指定$DISPLAY=:0在远程主机上创建一个窗口时?

$ DISPLAY=:0 eog

(eog:31546): dbind-WARNING **: 23:11:42.415: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files

:0 默认值不是吗$DISPLAY

答案1

没有默认值DISPLAY。如果未设置,并且您没有以其他方式指定目标显示,X 程序将无法连接到服务器。

这可能很有用,例如当您在 X 会话中运行时启动没有 X 连接的程序:临时清除DISPLAY将确保找不到 X 会话。

如何更改当前正在运行的应用程序的显示有关如何DISPLAY使用的详细信息,以及在远程 X 显示器上打开窗口(为什么“无法打开显示器”)?了解连接到 X 服务器所需信息的详细信息。

相关内容