我使用 X11 通过网络导出多个 GUI,通过使用 -X 选项通过 SSH 连接到服务器并运行可执行文件来启动 GUI。
如果远程计算机突然关闭或连接丢失,本地计算机上的窗口将停止响应,并且无法通过正常方式关闭(例如单击右上角的关闭图标)。 Java Swing GUI 和 QT GUI 会发生这种情况。
我可以设置 X11 或 SSH 配置参数吗?如果连接丢失,该参数将导致窗口正常关闭?
能够设置超时将是理想的。
答案1
你可以尝试相当低级的杀戮实用程序,如果没有指定参数,则允许您单击要关闭连接的 X11 客户端窗口。也许您的窗口管理器还在其菜单中提供了“kill”项。
您可以配置 ssh 以更快地检测丢失的连接~/.ssh/config
,方法是在发出 ssh 命令的计算机上编辑 ,以以下行结尾:
# --- all following applies to myserver only
Host myserver
ServerAliveCountMax 3
ServerAliveInterval 5
使用该Host
命令将其后面的选项限制为仅 host myserver
。客户端每 5 秒向服务器发送一条消息,当 3 秒没有回复时,它将关闭连接。