Windows下实现远程服务器X window应用显示 您所在的位置:网站首页 opengrads下载 Windows下实现远程服务器X window应用显示

Windows下实现远程服务器X window应用显示

2023-09-14 11:31| 来源: 网络整理| 查看: 265

实验环境:

服务器系统版本:CentOS Linux release 8.4.2105

Windows版本:Windows10 21H1 19043.1288

Xshell版本:Xshell 7(Build 0087)

Xming:6.9.0.31

1. Xming介绍

Xming是一个windows系统下运行的X window服务器。之前是个人开源软件,官网是http://www.straightrunning.com/XmingNotes/,后来作者开始要求捐款才能下载,其实就是收费了(要求捐款金额是10英镑£10 (GBP))。目前网上能找到的版本是6.9.0.31。当前(2021.10.30)最新版本是:7.7.0.71。经过验证,6.9.0.31这个版本在当前Win10上可以实现目标。该版本应该已经是非常老,代码包至少在2009年就有。github上的代码库是2020年建立,但只是该版本的一个拷贝。这么老的程序在当前可以正常运行,侧面说明质量还是比较高吧。

2. Xshell介绍

Xshell感觉不用太介绍了,收费软件,有个人免费版。全面,好用。这个公司的Xmanager也完全可以实现Xming同样功能,但没有个人免费版。Xshell国内想买正版需要通过国内代理商,Xshell 7 ¥989,Xftp 7 ¥639,Xmanager 7没有标价,需咨询客服,估计不便宜。

这里提一下Putty,这是一个优秀的开源ssh客户端,有很大的群众基础,而且Xming还与putty有专门的兼容,所以Putty+Xming应该是一个非常好组合。我自己是用惯了Xshell,懒得折腾putty了。

3. 软件下载与安装

这里主要介绍一下Xming。下载地址https://sourceforge.net/projects/xming/files/Xming/6.9.0.31/Xming-6-9-0-31-setup.exe/download。下载完成后双击安装,一路下一步安装完成。默认安装路径是C:\Program Files (x86)\Xming。作者在官网上强烈建议了不要更改默认路径,我也没给自己找麻烦:-)。

4. 软件配置Xming Server

XLaunch是Xming的启动配置软件。启动XLaunch,选择自己的配置,然后下一页直到完成。点击完成后,Xming Server会自己启动。

我自己全是用的默认配置。网上很多文章提到了其中的Dislay number这个配置项,需要与后续Xshell和远程服务器相匹配。Display number默认为0,个人认为可以与传输层的端口号类比,意思是Xming在监听端口0。可以同时启动多个Xming Server,这时每次启动XLaunch时要求输入不同的Display number。

网上有文档提到了要修改C:\Program Files (x86)\Xming路径下的X*.hosts文件,在里面添加远程服务器ip。我自己测试过发现这个不添加似乎也没什么问题。

Xshell

新建Xshell会话,连接和连接-用户身份验证两页正常配置,在连接-SSH-隧道页中,选中X11转移中的转发X11连接到,再选择X DISPLAY,其后的输入框中输入localhost:0.0,这里的第1个0要与上面Xming Server设置中的Display number对应。

远程服务器

网上很多文章提到了要在服务器端设置export DISPLAY=localhost:0.0之类。这个问题验证后发现,当Xshell选中转发X11连接到,连接到服务器后,终端会自动设定DISPLAY的值,不同终端冒号后的值不同,此时如果unset DISPLAY,应用图形无法输出,如果将DISPLAY值中冒号后的数值改为其它,应用图形也无法输出。所以图形显示确实需要DISPLAY环境变量支持,并且有一定的对应规则,该规则还没搞清楚,但肯定不需要跟上面设置的Xming的Display number对应。在我的实验环境中DISPLAY会自动设置,不需要手动,但这个自动配置到底是Xshell的功能,还是CentOS 8的什么特殊组件/参数的功劳,目前还不清楚。

经过以上步骤,登陆后即可运行图形应用命令,并在Win10上显示对应软件。如virt-manager/gedit/eog/gimp等。

5. 一点经验:

Xming要先启动,ssh连接建立后启动Xming无效

另外说一点,我在实验过程遇到问题时,查到一篇文章说可以在服务器的sshd启动参数里加-d启动debug模式,说是可以帮助排查。但我加上后,每次应用输出出错时,都会连带着干掉sshd,导致无法远程登陆。没有细查这个问题,但强烈建议不要打开sshd的debug模式,除非你到服务器终端前重启一下sshd是一件非常简单的事情。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有