• 通过X11实现 Linux服务器图形化界面显示


    背景描述

    有些LINUX服务器出于性能和效率的考虑,通常都是没有安装图形化界面的,那么图形化程序在服务器上压根儿就跑不起来,或者无法直接显示出来,这就很尴尬了!那么如何解决这个问题呢?可以基于X11 Forwarding技术 + MobaXterm 工具,就可以轻松搞定,似不似很简单?

    原理介绍

    2.1 X协议

     

    Linux 本身是没有图形化界面的,所谓的图形化界面系统只不过中 Linux 下的应用程序。这一点和 Windows 不一样。Windows Windows 95 开始,图形界面就直接在系统内核中实现了,是操作系统不可或缺的一部分。Linux 的图形化界面,底层都是基于 X 协议。

    X 协议由 X server X client 组成:

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

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

    举个例子,如果用户点击了鼠标左键,因为鼠标归 X server 管理,于是 X server 就捕捉到了鼠标点击这个动作,然后它将这个动作告诉 X client,因为 X client 负责程序逻辑,于是 X client 就根据程序预先设定的逻辑(例如画一个圆),告诉 X server 说:“请在鼠标点击的位置,画一个圆”。最后,X server 就响应 X client 的请求,在鼠标点击的位置,绘制并显示出一个圆。

    2.2 X11 Forwarding

     

    这么绕,有啥意义呢?当然有!

    许多时候 X server X client 在同一台主机上,这看起来没什么。但是, X server X client 完全可以运行在不同的机器上,只要彼此通过 X 协议通信即可。于是,我们就可以做一些“神奇”的事情,比如像本文开头谈到的,在本地显示 (X server),运行在服务器上的 GUI 程序 (X client)。这样的操作可以通过 SSH X11 Forwarding (转发) 来实现。

    X11 中的 X 指的就是 X 协议,11 指的是采用 X 协议的第 11 个版本。

    2.3 MobaXterm

     

    MobaXterm 又是什么鬼?MobaXterm 是一款开源、免费的、全功能终端软件。它与 PuTTY 类似,但却比 PuTTY 要强大得多,其中一个很实用的功能就是 MobaXterm 自带 X Server。这样我们就不用劳神地去想怎么在 Windows 上启动 X server 了。

    小结一下,整个实现逻辑就是:

    本地机器采用 MobaXterm (自带 X server) 连接远程服务器。然后,在服务器上运行 GUI 程序 (X client),通过 SSH X11 Forwarding,转发到本地 (Windows 机器上)

    实战介绍

    3.1 服务器端(LINUX7.x

    3.1.1 修改SSH配置

    [root@linux-template-7 ~]# cat /etc/ssh/sshd_config

    X11Forwarding yes

    X11UseLocalhost no -- 禁止将X11转发请求绑定到本地回环地址上

    AddressFamily inet -- 强制使用IPv4通道

    3.1.2 重启SSH服务

    [root@linux-template-7 ~]# systemctl restart sshd.service

    3.2 客户端(WIN7

    3.2.1 安装MobaXterm 

    https://mobaxterm.mobatek.net/download.html

     

    3.2.2 打开本地终端

     

    3.2.3 SSH连接服务器

     

    3.2.4 执行xclock程序

    已经弹出xclock图形界面了,似不似很简单,似不似很Easy,那就一起实践下吧:)

     

  • 相关阅读:
    CSS
    表单
    框架
    表格
    列表
    定位--position属性
    浮动
    选择结构
    数组
    TextView(标签控件)
  • 原文地址:https://www.cnblogs.com/lixiaochun/p/8547815.html
Copyright © 2020-2023  润新知