MobaXterm里的X11-forwarding

举报
黄生 发表于 2022/06/15 09:56:50 2022/06/15
【摘要】 Linux系统也是有图像界面的。它的方式和Windows不一样,叫做 X Window,采用的是X11协议。X11 中的 X 指的就是 X 协议;11 指的是采用 X 协议的第 11 个版本。原理图如上。那么我们使用客户端来登陆到一个服务器时,做图像界面展示时,哪个是X client,哪个是X server呢?答案是客户端是X server,比如我们用MobaXterm登录服务器,MobaX...

Linux系统也是有图像界面的。它的方式和Windows不一样,叫做 X Window,采用的是X11协议。X11 中的 X 指的就是 X 协议;11 指的是采用 X 协议的第 11 个版本。
image.png
原理图如上。那么我们使用客户端来登陆到一个服务器时,做图像界面展示时,哪个是X client,哪个是X server呢?
答案是客户端是X server,比如我们用MobaXterm登录服务器,MobaXterm就是X Server,而Linux服务器是X Client哦~
image.png
当我登陆我的ECS时,最开始这个图像界面是不可用的:X11-forwarding : ✘ (disabled or not supported by server)。
也就是说当我在服务器上运行一个要展示图形界面的程序,结果会是失败的,就像下面这样:

[root@ecs-d589 ~]# xclock
Error: Can't open display:

那么要怎么办呢?实际上在两个地方操作就可以,一个是安装X认证包,一个打开ssh转发。
安装X认证包的命令是: yum install xorg-x11-xauth
它的描述如下:
Summary : X.Org X11 X authority utilities
Description : xauth is used to edit and display the authorization information used in connecting to an X server.
打开ssh转发的方法是编辑 /etc/ssh/sshd_config

#AllowAgentForwarding yes
AllowTcpForwarding yes   #这里打开
#GatewayPorts no
X11Forwarding yes      #这里原本就是打开的
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes

然后重启sshd服务:
[root@ecs-d589 ~]# service sshd restart
Redirecting to /bin/systemctl restart sshd.service

并且退出登录后重新登录。
image.png
可以看到首先提示X11-Forwarding就是已经正常打开,然后我们在服务器上运行一个简单的程序xclock,就可以在屏幕上正确的将该程序的时钟图形界面显示出来。
另外登录后多了一个报错提示如下,我们暂且可以不用去管它。
/usr/bin/xauth: file /root/.Xauthority does not exist

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。