passpark
作者passpark·2022-03-14 10:14
系统工程师·浪潮商用机器有限公司

使用SSH的X11 forwarding执行远程GUI程序

字数 874阅读 2578评论 0赞 1

使用 SSH 的 X11 forwarding 执行远程 GUI 程序

什么是 X11-forwarding

X11 中的 X 指的就是 X 协议; 11 指的是采用 X 协议的第 11 个版本。
X11-forwarding 说的简单明白点就是:可以通过一个支持 X Server 的 SSH 客户端,例如: MobaXterm 。 连接到远程 Linux 服务器,可以在本地通过 MobaXterm 运行操作一个远程 Linux 服务器上有图形界面的程序。

X 协议由 X server 和 X client 组成:

X server 管理主机上与显示相关的硬件设置(如显卡、硬盘、鼠标等),它负责屏幕画面的绘制与显示,以及将输入设置(如键盘、鼠标)的动作告知 X client 。

X client ( 即 X 应用程序 ) 则主要负责事件的处理(即程序的逻辑)。

让 Linux 支持 X11 Forwarding

使用的 Linux 环境: CentOS 8

安装 X11 client

yum install xorg-x11-xauth xorg-x11-fonts-* xorg-x11-utils

修改 sshd 的配置

vi /etc/ssh/ssh_config

X11Forwarding Yes

支持 X11-forwarding 的 SSH 客户端

推荐使用 MobaXterm, 自带 Xserver ,支持 SSH Forwarding 。

https://mobaxterm.mobatek.net/

测试在 windows 上通过 MobaXterm 执行 Linux 服务器上的图形程序,以 Oracle DBCA 为例:

以 oracle 用户登录,执行 dbca 程序

执行 dbca 程序

注意:由于 dbca 程序必须由 oracle 用户执行,使用 MobaXterm 时,需要直接用 oracle 用户登录,不能通过其它用户切换而使用,例如,通过 root 用户切换到 oracle 用户, $DISPLAY 环境变量无法继承过来。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

1

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广