有些Linux程序需要依赖图形界面才能启动,例如Kettle的配置页面。之前都是使用VNC,通过在服务器和客户端分别安装VNCServer和VNCViewer来完成。今天介绍另外一种方式,在客户端利用Putty+Xming登录服务器的图形界面。
Xming
Xming是一个在 Microsoft Windows 操作系统上运行 X Window System 的开源软件。
X Window System
X Window System(常被简称为X11或X),是一套基于X display protocol的windowing system,X GUI环境的功能包括窗口的绘制、移动,以及与鼠标、键盘等输入设备的交互。
X采用C/S模型(这是关键):一个X server 和多个应用程序(client)通信。server接收client的请求绘制窗口,并将来自鼠标、键盘等设备的输入传递给client。
因此 X server和client可以位于同一计算机上,例如在Linux主机上使用KDE等桌面环境就是这种模式。X server也可以通过同构网络、异构网络或Internet与client通信。
X server与client之间的通信是不加密的,这个问题可以通过SSH解决。SSH是Secure Shell的简称,SSH可以看作是通信被加密压缩版的telnet。
需要用到SSH的forwarding功能,当X server与client所在计算机都支持SSH协议时,X server与client之间不安全的TCP/IP连接可以转送到(forwarding)二者之间建立的SSH连接上。
环境:
服务器操作系统:CentOS6.9
客户端操作系统:Win10
客户端软件:Putty0.7,Xming6.9
一、在客户端安装Xming
1、下载Xming
可在以下网址下载Xming安装文件:
/projects/xming/
2、安装并启动XLaunch
安装过程比较简单,一直Next。安装完成后,启动XLaunch,出现设置页面,一步步往后走。
二、使用Putty登录服务器图形界面
我这里根据实际情况(服务器的网络要求),是先登录的跳板机shared-jump,再登录服务器oracle02(10.200.4.117)。
1、在Putty启用X11 forwarding配置
打开Putty客户端,在左侧菜单栏选择Connection->SSH->X11,在右侧配置界面勾选Enable X11 forwarding。
2、登录跳板机
在Putty输入跳板机的IP登录,查看环境变量DISPLAY值为localhost:12.0。
3、登录服务器
在跳板机输入以下命令登录服务器:
ssh -X root@10.200.4.117
查看环境变量DISPLAY值为localhost:10.0。
DISPLAY环境变量
DISPLAY环境变量用来设置将图形显示到何处,格式为host:NumA.NumB。
host指Xserver所在的主机主机名或者ip地址,图形将显示在这一机器上, 可以是启动了图形界面的Linux/Unix机器, 也可以是安装了Exceed, X-Deep/32等Windows平台运行的Xserver的Windows机器。如果Host为空, 则表示Xserver运行于本机, 并且图形程序(Xclient)使用unix socket方式连接到Xserver, 而不是TCP方式。
使用TCP方式连接时,NumA为连接的端口减去6000的值,如果NumA为0, 则表示连接到6000端口; 使用unix socket方式连接时则表示连接的unix socket的路径, 如果为0,则表示连接到/tmp/.X11-unix/X0 。NumB则几乎总是0。
4、在服务器执行命令并打开图形化界面
我这里是要打开kettle配置界面,所以先在命令行窗口进入kettle安装目录,再执行spoon.sh。
这时候看Xming界面,里面已经出现Kettle启动的画面了。
完毕。