因为我们团队有几个人需要做仿真,一个工作站不够用,经常是一个人操作的时候另一个人就眼巴巴等着。
我在想能不能实现一种方案,能使两个人一起操作仿真软件呢?
需求这种方案,目前网上比较流行是x11-forwarding实现软件的GUI化。
但是我在尝试的时候,发现这种方式太卡,于是我又尝试了其他方法,各位看官敬请享用!
友情提示1:下面各种方式,一个账户只能登一个桌面,不是说你用方式一和方式二能同时创建一个关于账户一的桌面。
友情提示2:下面各种方式,都是基于基本的X协议,你需要安装一些依赖项,例如XRDP、X11-FORWARDING等等,这个自己百度,有很多文章教程,我这里主要是测试一下各种方案的快慢、可行性。
首先,你需要在linux工作站上配置x11-forwarding。
其次,你需要在你自己的电脑(win)上安装xshell和xmanager。
最后,当你通过xshell连接上工作站后,你可以在xshell中输入启动软件的命令,来创建软件的图形界面。
例如文本编辑器gedit,在xshell中输入gedit后回车,然后就会自动弹出该软件的GUI界面。
软件界面如图
因为这个方案实在太慢,我测试的时候感觉帧率只有个位数,所以并不建议使用。
如下图所示,你直接创建一个XRDP会话,把IP地址等设置好,用户名和密码输入,然后确定。
就可以进入XRDP桌面!!!!
这个方案相比X11转发,要快将近1.5倍,而且可以对多个账户的桌面进行标签页式管理,不像微软电脑自带的那个远程桌面,启动软件进去,一次只能登一个账户,如果还要登其他账户,就需要再启动一次软件。
但是还不够,还是有卡顿的感觉!!!
本来想用VNC实现,但是这个VNC在网上的风评不好。
缺点有:1、很多VNC软件不是免费;2、免费的VNC软件速度不快(帧率不高)。
鉴于此,我并没有用VNC做测试,转而使用网上风评比较好的Nomachine,大家普遍认为帧率更快的Nomachine,它对应的协议是NX协议。
nomachine官网:https://www.nomachine.com/
在linux中安装nomachine的服务器端和客户端(有人可能会疑惑为啥工作站也要安装客户端,这是因为服务器端那个软件需要用到客户端的一些依赖项)。
在安装linux版本时,千万要注意一个问题,你要知道你的CPU用的指令集是啥,一般来说是AMD64,有的是Intel 80386架构的。
一般选择,amd64。
在windows中安装nomachine的客户端(windows版本)。
你在linux的桌面打开nomachine的服务端,然后查看nx协议的那个IP和端口是多少,默认端口是4000。
然后在Windows中,打开nomachine的客户端,通过这个IP和端口,以及你的账户和密码来访问GUI界面。
上面的步骤设置完后,你在Windows上用nomachine,会发现虽然图形分辨率差一些,但是帧率刷新速度有了一个质的提升。
如下图所示。
在一次偶然中,我同时登录多个账户,发现会挤占掉我的另一个账户。
结果发现,原来nomachine的免费个人版,只能一个账户使用。要想多个账户同时控制工作站,必须买企业版,收费的。
网上也没有很好的资源,至少目前没发现。
所以多用户同时登陆这个需求,恐怕还是得由XRDP系列担任了。
通过命令mstsc可以打开。
输入ip地址,连接之后。
这里是让你选择session方式,有VNC和RDP两种基本方式。
默认的Xorg是使用XRDP的方式进行远程账户桌面访问,你也可以用VNC-any和xvnc。
我测试的时候发现,Xorg和xvnc不用设置端口,看起来相对更加简单,我发现他们两个也没有速度上明显的差距。
如果你遇到下面的问题,那么你可以重新创建窗口登录,多重新输入几次密码(你密码可能输错了),或者命令reboot重启一下,当时我就是这么解决的!
上面我提到在用微软远程桌面,同时登录多个账户的时候出现错误,通过重启解决的。
后来我发现我登录默认账户时,输入密码后回车,卡顿住不动,试了很多遍,最后还是通过重启解决的。
另外,还有root账户的GUI界面登录容易出现的问题——Sorry, that didn’t work. Please try again。
我也可以用重启大法来解决。
所以重启大法好,工作站出问题的时候,如果其他人没有连接,你直接重启,是最快速便捷De解决办法。