http://blog.chinaunix.net/uid/16979052.html
全部博文(286)
分类: LINUX
2013-01-31 09:52:52
Linux/Unix上的GUI应用程序使用X Window系统( Window System),它旨在允许多个用户使用窗口化的应用程序通过网络访问计算机。
X显示器是通过DISPLAY环境变量并以hostname:displaynumber.screennumber形式的名称描述。关于X系统详细描述请参考X Window规范。
在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处。直接登陆图形界面或者登陆命令行界面后使用startx启动图形,DISPLAY环境变量自动设置为:0:0,此时可以打开终端来启动X程序,图形将显示在本地窗口上,在终端上输入echo $DISPLAY查看当前环境变量如下:
echo $DISPLAY
|
:0.0
|
也使用xdpyinfo可以查看到当前显示的更详细的信息.
xdpyinfo
|
name of display: :0.0
version number: 11.0
vendor string: The X.Org Foundation
vendor release number: 11204000
X.Org version: 1.12.4
。。。。。。。。。。。。。。。 visual:
visual id: 0x60
class: TrueColor
depth: 32 planes
available colormap entries: 256 per subfield
red, green, blue masks: 0xff0000, 0xff00, 0xff
significant bits in color specification: 8 bits
|
DISPLAY环境变量中对hostname指的是Xserver所在的主机主机名或者ip地址(图形将显示在这一机器上),可以是启动了图形界面的Linux/Unix机器,也可以是安装了Exceed,Xmanager等Windows平台运行的Xserver的Windows机器,如果hostname为空,则表示Xserver运行于本机(图形程序Xclient使用unix socket方式连接到Xserver,而不是TCP方式)。使用TCP方式连接时,displaynumber为连接的端口减去6000的值,使用unix socket方式连接时则表示连接的unix socket的路径。screennumber是Xserver上对应对screen号码,一般都是0。
验证环境采用两个主机(可采用虚拟机,网路使用bridge模式)
Xclient机(ip:10.0.0.2)Linux
Xserver机(ip:10.0.0.3)Windows/linux
确认Xserver运行。
Linux:
确认X进程在监听(6000端口是0#display),并使用xhost命令打开X对访问控制。 |
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 2202/X
xhost +
access control disabled, clients can connect from any host
|
Windows:
Xmanager passive运行。
在Xclient设置DISPLAY变量,并执行X程序。
export DISPLAY= 10.0.0.3:0.0 xclock |
结果:xclock出现在远程对Xserver屏幕上。 |