Windows转发Linux系统的X11(二):By MobaXterm

1、背景

在上一篇博客(Windows转发Linux系统的X11(一):By XMing)中,笔者展示了如何使用XMing来实现X11 server的转发,但是在文章的最后,笔者提到,在使用XMing转发某些大型GUI程序(例如Spyder)时,就会产生奔溃错误(The X11 connection broke (error 1). Did the X11 server die?):

笔者猜测,这可能是XMing程序对于这种大型的GUI程序转发存在一些缺陷。

解决这个问题的一个方法,就是使用MobaXterm自带的内置X11 forwarding工具来实现Linux GUI的转发。

2.Windows (Client端)设置


2.1安装Mobaxterm

在Mobaxterm的官网MobaXterm Xserver with SSH, telnet, RDP, VNC and X11 - Download上下载一个免费版本的Mobaxterm,然后安装。


这里不多赘述,一步一步往下就好。

2.2设置Mobaxterm

点击Session->SSH,在Remote host中输入Linux服务器IP,如A.A.A.A,点击“OK”,输入用户名和密码,连接到Linux服务器。

2.3查看Mobaxterm的监听端口设置

一般来说,此时,Mobaxterm右上角的标致已经亮了,表示此时Mobaxterm已经在监听X11 server了,(如果没亮请点击这个标志来启动监听服务)。启动后,鼠标放到这个标志上,右键,可以看到Mobaxterm的所有监听端口:

找到Windows主机对应的IP(上面红色遮挡的IP及端口),记下IP及后面的端口号,例如:

B.B.B.B:0.0

3.Linux (Server端)设置

这里的设置和上一篇博客(Windows转发Linux系统的X11(一):By XMing)中关于Linux设置一样。

3.1 ssh/sshd配置设置

进入Linux,使用管理员(root)权限进行如下操作:

[root@xxx]vi /etc/ssh/ssh_config

ssh_config中和X11相关条目进行如下设置(注意记得去掉前面的注释符号):

ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes

为了保险起见,将sshd_config(注意和ssh_config不是一个文件)中的相关内容也进行改变:

[root@xxx]vi /etc/ssh/sshd_config
AllowAgentForwarding yes
X11Forwarding yes

编辑完成后,重启sshd服务:

systemctrl restart sshd

3.2 添加DISPLAY变量设置

将DISPLAY变量增加到bash环境中。

a.假如想让所有用户都生效,则编辑/etc/profile文件;

[root@xxx]vi /etc/profile

增加如下内容: 

if [[ -n $SSH_CONNECTION ]]; then
  export DISPLAY="B.B.B.B:0.0"     #这里Windows IP即为能够前面安装了Mobaxterm的windows的IP
fi

注意千万不要将去掉if语句,这将会导致Linux系统图形界面/xrdp远程界面无法登录或闪退。 

source一下/etc/profile 使得环境变量生效,或者重新打开一个terminal登录进Linux 

[root@xxx]source /etc/profile

b.假如只想让某个用户生效,那么编辑该用户~目录下的.bashrc文件

[someone@xxx]vi ~/.bashrc
if [[ -n $SSH_CONNECTION ]]; then
  export DISPLAY="B.B.B.B:0.0"     #这里Windows IP即为能够前面安装了Mobaxterm的windows的IP
fi

注意千万不要将去掉if语句,这将会导致Linux系统图形界面/xrdp远程界面无法登录或闪退。

 source一下~/.bashrc使得环境变量生效,或者重新打开一个terminal登录进Linux

[someone@xxx]source ~/.bashrc

注:也可以不适用系统变量SSH_CONNECTION,直接在~/.ssh/rc中编辑export命令使得环境变量DISPLAY生效,这儿不再赘述。

4.打开Spyder

在Windows MobaXterm连接中输入Spyder打开:

[someone@xxx]sypder &

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值