有没有人用过 影驰大将和骁将GTX 1070大将,这款显卡怎样

下次自动登录
现在的位置:
XenServer安装Linux虚拟机系统如何显示图形界面
XenServer安装Linux虚拟机系统如何显示图形界面
客户需要安装LINUX操作系统,利用XenCenter管理控台管理LINUX操作系统。在xenserver上面安装LINUX虚拟机不支持图形界面。这是由于LINUX默认安装在XenServer是以HVM模式安装的,无法使用图形界面。这个需要进行模式转换,这就对于我们对不习惯命令行界面的人来说就比较麻烦了。而且通过思杰官网的方式修改比较麻烦,本人英文比较一般,命令比较复杂,看不懂。
今天给大家介绍相对比较容易的方法,让XenServer上LINUX虚拟机看到图形界面。就是VNC服务器。VNC服务(简要介绍):
Telnet和SSH服务只能实现基于字符界面的远程控制,对于习惯于使用X-Window的用户而言,使用字符界面就不太方便了,是否可以远程使用X-Window呢?答案是肯定的,利用免费的VNC软件可以很好地解决这个问题。 VNC提供了远程X-Window界面操作的功能。它是Virtual Network Computing的缩写。
VNC的中文名称为虚拟网络计算,它提供了一种在本地系统上显示远程计算机整个“桌面”的轻量型协议。VNC与Symantec公司的pcAnywhere可以实现类似的功能,但是VNC与其他远程控制软件不同的是它的跨平台性。
即VNC可以在各种流行的操作系统间实现远程控制。利用VNC可以在Windows环境下看到Linux的桌面,也可以在MacOS环境下看到Windows的桌面。
1、如何安装VNC服务器:
检查LINUX系统中有木有安装VNC软件:
命令:rpm -qa vnc*
我的系统上面显示以安装
若系统显示未安装VNC服务器,可进行如下安装:
挂载LINUX镜像,一般VNC的rpm包都在镜像里有。
vnc-4.1.2-14.el5_5.4.rpm
#rpm -ivh vnc-server-4.1.2-14.el5_5.4.rpm
2、启动VNC服务器配置
#vncserver
第一次启动执行vncserver时会进行一些配置,比如会要求输入用户在访问VNC服务器时的密码,并返回访问VNC服务器的地址,如CentOS:1。其中“:1”表示桌面号。
输入密码******,Verify意思是确认密码******。
#service vncserver status
//查看VNC服务的状态
正在运行,进程号pid 1928
由于这是第1次运行该命令,因此系统会提示用户设置口令。该口令会被加密保存在用户主目录下的.vnc子目录中的passwd文件(如root/.vnc/passwd)。
此外,系统还会在该子目录中自动建立xstartup配置文件,以后每次启动VNC服务器时,都会读取该文件中的配置选项。
3、测试VNC服务器
在客户机需要安装java软件,打开Web浏览器,输入服务器的IP或域名:5801,测试打不开网页如图:
这就需要你检查LINUX中的防火墙有没有关闭。可以手动关闭,这个只是暂时的。重启linux后防火墙会自动开启,那样又出现打不开。你可以把开启服务关闭或者直接修改配置文件。
再测试就能打开了,就会出现“VNC Viewer for Java”(即使用Java编写的VNC客户程序)的界面。同时还会出现一个连接对话框,如下图所示:
在该对话框中输入Linux服务器的IP和桌面号后,单击“OK”按钮,然后输入访问口令进行登录。
在这个登录对话框中不能输入用户名,只能输入访问口令。这是因为VNC服务只允许访动该桌面号的用户进行登录。连接成功后会出现X-Window图形桌面环境。如下
4、VNC服务器的配置
在上面的步骤中,虽然成功地连接到了VNC服务器,但这个图形桌面环境的界面也太简陋,功能也非常简单,只提供了一个SHELL供用户使用,与KDE或GNOME图形桌面环境相差甚远。
这是VNC服务默认使用twm图形桌面环境的原因造成的。为了能使用功能强大的KDE或GNOME图形桌面环境(前提是在Linux服务器上已安装KDE或GNOME)。还要编辑/root/.vnc/xstartup文件。
(1)把用户名加入到配置文件中:
[root@CentOS ~]#vi /etc/sysconfig/vncservers
# The VNCSERVERS variable is a list of display:user pairs.
# Uncomment the lines below to start a VNC server on display :2
# as my 'myusername' (adjust this to your own).
You will also
# need to set a VNC run 'man vncpasswd' to see how
# to do that.
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted!
For a secure way of using VNC, see
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
# Use "-nohttpd" to prevent web-based VNC clients connecting.
# Use "-localhost" to prevent remote VNC clients connecting except when
# doing so through a secure tunnel.
See the "-via" option in the
# `man vncviewer' manual page.
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
VNCSERVERS="1:root"
#新增加的部分
编辑xstartup文件
(2)编辑/root/.vnc/xstartup文件
若要使用KDE图形桌面环境,则将文件最后一行的“twm”改为“startkde”;
若要使用GNOME图形桌面环境,则将文件最后一行的“twm”改为“gnome-session”。
在修改之前先做好备份
[ ~]# cp /root/.vnc/xstartup /root/.vnc/xstartupbak
修改xstartup如下图:
[root@CentOS ~]# vi /root/.vnc/xstartup
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
#去掉注释‘#’
exec /etc/X11/xinit/xinitrc
#去掉注释‘#’
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
gnome session &
#‘twm’替换成‘gnome session’
修改该文件之后,需关闭桌面号,并重新启动桌面号:
#vncserver
//停止显示端口号为“:1”的VNC服务器进程
#vncserver
在浏览器输入的ip地址:5801,输入登录口令。如下图:
至此,就可以不用官网的HVM模式转换成PV模式,就可以使用图形界面了。是不是很简单呢。
5、配置多个桌面号:
使用同一用户帐号启动多个VNC服务器。同一用户可以使用vncserver命令启动多个VNC服务器。同一个用户便可以多次连接到VNC服务。即可以多次执行vncserver命令,并将其中的“桌面号”从“:1”改为“:2”或“:3”,依此类推。
#vncserver:2
#vncserver:3
#vncserver
//直接执行该命令,也可以。
6、修改VNC服务器的访问口令
#vncpasswd
希望对大家有所帮助。。。。
【上篇】【下篇】
您可能还会对这些文章感兴趣!
2015年十一月
2014年五月
2014年二月
2013年十二月
2013年五月
2013年四月
2013年三月
2013年二月
2013年一月
2012年十二月
2012年十一月
2012年十月
2012年九月
2012年八月
2012年七月
2012年六月
2012年五月
2012年四月
2012年三月
2012年二月
2011年八月
2011年六月
2011年三月
2011年一月
2010年十一月
2010年十月
2010年九月
2010年一月
同分类最新文章
日志:118篇
评论:577条
分类:16个
标签:162个
运行:1614天
最后更新:日suse linux redhat linux vnc server图形界面设置_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
suse linux redhat linux vnc server图形界面设置
上传于|0|0|暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
白手起家, 积分 12, 距离下一级还需 188 积分
论坛徽章:0
系统是Redhat9,昨天不小心在X-windows中设置时,在主程序栏里的“桌面主题转换”一栏里点了以后,里面有两个选项:gonme和TWM,这个TWM也是系统自带的, gnome是默认选项,由于不知道TWM是怎么回事,所以就改成了TWM耍了一下,不过在重启之后,发现TWM非常使用不惯,想换回来,但是又不知道在哪里可以设置,要改哪个配置文件可以让我回到心爱的gnome呢?谁能告诉我呢?太感谢了!
&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp
家境小康, 积分 1114, 距离下一级还需 886 积分
论坛徽章:1
怎样在两种图形界面之间转换?比如gnome和TWM
switchdesk
白手起家, 积分 196, 距离下一级还需 4 积分
论坛徽章:0
怎样在两种图形界面之间转换?比如gnome和TWM
[quote]原帖由 &寂寞烈火&]switchdesk[/quote 发表:
且要在终端里
白手起家, 积分 18, 距离下一级还需 182 积分
论坛徽章:0
我也碰到这个问题,suse linux 11,也是不能换回到gnome下,通过查找配置文件,问题解决:
在用户下有个一个.dmrc文件;将里面的
Session=twm
Session=gnome
从新登陆,ok了
论坛徽章:4
我建议楼主不要用rh9啊,换个新点的发行版吧。
北京皓辰网域网络信息技术有限公司. 版权所有 京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处博客访问: 457694
博文数量: 40
博客积分: 3063
博客等级: 少校
技术积分: 565
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: LINUX
1。桌面的全局配置(所有用户有效) /etc/sysconfig/desktop 在...=""的引号中可以设置:(--为注释,不要添加) KDE --KDE桌面 GNOME --GNOME桌面 WINDOWMAKER --twm桌面 说明:前面说的所有用户有效,是没有~/.Xclients或./Xclients-default设置错误的时候才起作用 2。用户自定义设置(各个用户可以配置自己的默认桌面)~/.Xclients-default 可以设置如下行之一: exec startkde exec gnome-session exec /usr/X11R6/bin/twm
说明:当用户设置了默认桌面后,全局设置无效。 3。桌面的切换 1)命令行方式
switchdesk 桌面名称 --kde,gnome,twm之一 2)图形界面方式 系统设置/更多系统设置/桌面切换
补充: 当用户或系统配置的桌面不存在的时候,系统首先尝试gnome桌面,如果失败,继续尝试kde,如果再失败,则告诉错误,返回字符界面。 以上设置是在RH AS3 Update4下测试的。相信其他版本类似,要研究X的详细配置,请参考/etc/X11下的各个文件,相信大家会收获不小的。 ========================= xdm,kdm,gdm都是X的登陆界面,可以支持远程登录的。但在本地登陆之后很难返回,一般需要重新启动,我发现可以用一个方法强行返回命令行状态,那就是将推出X的快捷键和中断程序的快捷键联合使用,能成功地。具体方法是,首先按下ctrl+alt+space(退出X),然后快速按下CTL+C,当X刚返回的时候,不知道设计的目的是什么,又马上开始重新进入登陆界面,这是时候可以快速按下中断进程的快捷键,可以中断X的重新登陆。大家不妨试试。
阅读(3680) | 评论(0) | 转发(1) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。关于XFree86、KDE、Gnome、xdm、twm关系的说明
发信人:&JJCH&(纵横四海),&信区:&UNIX
标&&题:&关于XFree86、KDE、Gnome、xdm、twm关系的说明
发信站:&红果园&(Wed&Sep&14&18:50:58&2005)
转自红旗社区论坛
作者:&紫竹&高级会员
日期:&&10:19:59
X&Window&System运行原理与启动过程&
一)&基本运行原理&
X&Window&System采用C/S结构,但和我们常见的C/S不同。常见的C/S结构中,称提供服务
的一方为server,即服务器端(如&HTTP服务,FTP服务等),使用服务的称为client,即客
户端。但在X&Window&System中,client是执行程序的一方,在上面执行各种X程序,而se
rver则是负责显示client运行程序的窗口的一方。&
X&Window&System的组成可以分为X&server,X&client,X&protocol三部分。X&server主要
控制输入输出,维护字体,颜色等相关资源。它接受输入设备的输入信息并传递给X&clie
nt,X&client将这些信息处理后所返回的信息,也由X&server负责输出到输出设备(即我们
所见的显示器)上。X&server传递给X&client的信息称为Event,主要是键盘鼠标输入和窗
口状态的信息。&X&client传递给X&server的信息则称为Request,主要是要求X&server建
立窗口,更改窗口大小位置或在窗口上绘图输出文字等。&X&client主要是完成应用程序计
算处理的部分,并不接受用户的输入信息,输入信息都是输入给X&server,然后由X&serv
er以Event&的形式传递给X&client(这里感觉类似Windows的消息机制,系统接收到用户的
输入信息,然后以消息的形式传递给窗口,再由窗口的消息处理过程处理)。X&client对收
到的Event进行相应的处理后,如果需要输出到屏幕上或更改画面的外观等,则发出Reque
st给X&server,由&X&server负责显示。&
常见的情况是X&server与X&client都在同一台电脑上运行,但他们也可分别位于网络上不
同的电脑上。在X&Window&System中,&X&client是与硬件无关的,它并不关心你使用的是
什么显卡什么显示器什么键盘鼠标,这些只与X&server相关。我们平常安装完XFree86后运
行xf86config或xf86cfg进行的配置实际上只是与X&server有关,可以说就是配置X&serve
r吧,不配置照样可以运行&X&client程序(如:xeyes&-display&xserver:0就可以在xserv
er这台机器上的0号屏幕(屏幕编号&displaynumber为0)上显示那对大眼睛了)。&
X&protocol就是X&server于X&client之间通信的协议了。X&protocol支持现在常用的网络
通信协议。我只能测试&TCP/IP,可以看到X&server侦听在tcp&6000端口上。那X&protoco
l就是位于运输层以上了,应该属于应用层吧?。&
总结下运行过程吧:&
(1)&用户通过鼠标键盘对X&server下达操作命令&
(2)&X&server利用Event传递用户操作信息给X&client&
(3)&X&client进行程序运算&
(4)&X&client利用Request传回所要显示的结果&
(5)&X&server将结果显示在屏幕上&
二)&启动过程&
我们从控制台进入X一般是用startx命令。下面就从startx分析起。首先man&startx和man
&xinit可以看到staratx和xinit的使用方法:&
startx&[[client]&options&.....]&[--&[server]&options&....]&
xinit&[[client]&options&]&[--&[server]&[display]&options]&
把上面[client]和[server]分别称为client程序和server程序。man手册里写明其必须以/
或者./开头。&
下面看看startx这个脚本,中文为我加的注释,这个脚本是安装x-window-system-core后
得到的,都是XFree86,不同发行版的linux里该脚本应该大同小异:&
#!/bin/sh&
userclientrc=$HOME/.xinitrc&#用户的client定义文件&
userserverrc=$HOME/.xserverrc&#用户的server定义文件&
sysclientrc=/usr/X11R6/lib/X11/xinit/xinitrc&#系统的client&
sysserverrc=/usr/X11R6/lib/X11/xinit/xserverrc&#系统的server&
defaultclient=/usr/X11R6/bin/xterm&#默认的client程序&
defaultserver=/usr/X11R6/bin/X&#默认的server程序&
defaultclientargs=""&#下面定义了client和server的参数变量&
defaultserverargs=""&
clientargs=""&
serverargs=""&
#如果用户client文件存在则使用用户文件里定义的client,否则使用系统定义的client&
if&[&-f&$userclientrc&];&then&
defaultclientargs=$userclientrc&
elif&[&-f&$sysclientrc&];&then&
defaultclientargs=$sysclientrc&
#如果用户server文件存在则使用用户文件里定义的server,否则使用系统定义的server&
if&[&-f&$userserverrc&];&then&
defaultserverargs=$userserverrc&
elif&[&-f&$sysserverrc&];&then&
defaultserverargs=$sysserverrc&
#下面循环处理client和server的参数&
whoseargs="client"&
while&[&x"$1"&!=&x&];&do&#若第一个参数为空,退出循环&
case&"$1"&in&
#&''&required&to&prevent&cpp&from&treating&"/*"&as&a&C&comment.&
/''*|\./''*)&#如果$1是/*或者./*形式(xinit程序要求其参数里的client程序和server程
序必须以/或./开头,否则会被视为client程序和server程序的参数,见man&xinit)&
if&[&"$whoseargs"&=&"client"&];&then&#如果当前是在处理client的参数&
if&[&x"$clientargs"&=&x&];&then&#如果clientargs为空,则赋值$1给client变量,也即
上面#startx使用方法里的[client]参数&
client="$1"&
clientargs="$clientargs&$1"&#否则clientargs赋值为$clientargs&$1,即上面#startx
使用#方法里的options参数&
else&#当前在处理server的参数,代码的含义同上&
if&[&x"$serverargs"&=&x&];&then&
server="$1"&
serverargs="$serverargs&$1"&
--)#如果$1为--,则表示开始处理server的参数,--为client和server参数的分界&
whoseargs="server"&
if&[&"$whoseargs"&=&"client"&];&then&#处理给client程序的参数&
clientargs="$clientargs&$1"&
else&#处理给server程序的参数&
#&display&must&be&the&FIRST&server&argument&
#屏幕编号必须为第一个给server程序的参数,以:x的形式(x为数字),这可从上面startx
的使用方法的区别看出,xinit多了个[display],这里即过滤出这个[display]。试试看这
两个命令:&
xinit&/usr/bin/X11/xeyes&-display&localhost:1&--&/usr/bin/X11/X&:1&-dpi&70&&
xinit&/usr/bin/X11/xeyes&-display&localhost:1&--&/usr/bin/X11/X&-dpi&70&:1&&
即可看出不把屏幕编号作为第一个server参数的后果&
if&[&x"$serverargs"&=&x&]&&&&expr&"$1"&:&':[0-9][0-9]*$'&&&/dev/null&2&&1;&the
display="$1"&
else&#处理屏幕编号以外的参数&
serverargs="$serverargs&$1"&
shift&#所有参数左移一次&
#&process&client&arguments&
if&[&x"$client"&=&x&];&then&#如果client程序为空&
#&if&no&client&arguments&either,&use&rc&file&instead&
if&[&x"$clientargs"&=&x&];&then&#且clientargs为空,赋值$defaultclientargs给cli
client="$defaultclientargs"&
client=$defaultclient&#使用默认的client程序&
#&process&server&arguments处理server参数,同上&
if&[&x"$server"&=&x&];&then&
#&if&no&server&arguments&or&display&either,&use&rc&file&instead&
if&[&x"$serverargs"&=&x&-a&x"$display"&=&x&];&then&
server="$defaultserverargs"&
server=$defaultserver&
#…………省略授权代码若干&
xinit&$client&$clientargs&--&$server&$display&$serverargs&#把处理过的参数交由x
init程序处理&
#…………&
由上面代码可以得出startx主要是置X&client和X&server所在的位置,并处理相关参数,
最后交给xinit处理。可以看出&startx&设置X&client的位置是先搜寻$HOME/.xinitrc,然
后是/etc/X11/xinit/xinitrc;设置&X&server的位置是先搜寻$HOME/.xserverrc,然后是
/etc/X11/xinit/xserverrc。这就解释了我们平常为什么说启动X&Window时用户目录下的
.xinitrc和.xserverrc文件优先级要高。所以我们用startx命令启动X时,如果用户目录存
在.&xinitrc和.xserverrc文件,则实际上等价于命令xinit&$HOME/.xinitrc&--&$HOME/.
xserverrc&。如果用户目录不存在那两个文件,则等价于xinit&/usr/X11R6/lib/X11/xin
it/xinitrc&--&/usr/X11R6/lib/X11/xinit/xserver。别的情况类推。&
至于xinit,则根据startx传过来的参数启动X&server,成功后根据xinitrc启动X&client
以上即为X&Window&System的启动过程,startx只是负责一些参数传递,真正的X启动由xi
nit实现。实际上可以分为启动&X&server和启动X&client两部分。下面在用户目录下构造
.xinitrc(即X&client)和.xserverrc(即&X&server)文件。在.xserverrc里写入/usr/bin/
X11/X&:1。.xinitrc里写入&/usr/bin/X11/xeyes&-display&localhost:1。这就是最简单
的X&server+&X&client了,只不过把屏幕编号从默认的0改为了1,这里X&server即是/usr
/bin/X11/X&程序,X&client即是/usr/bin/X11/xeyes&程序。&
总结下单机用startx启动过程吧:&
(1)&startx置X&client和X&server的位置,处理参数并调用xinit&
(2)&xinit根据传过来的参数启动X&server,成功后呼叫X&client&
(3)&根据xinitrc设置相关资源,启动窗口管理器,输入法和其他应用程序等X&client程序
但还未搞清楚gnome是怎么起来的!gnome当然属于X&client了,看上面启动过程第(3)步。
这里分两种情况看吧,第一种是用系统的xinitrc文件。看/etc/X11/xinit/xinitrc文件(
我的sarge装x-window-&system-core和gnome-core),里面只包含了.&/etc/X11/Xsession
一句话。接着看&/etc/X11/Xsession这个脚本,只看关键部分吧。最后面有:&
SESSIONFILES=$(run_parts&$SYSSESSIONDIR)&
if&[&-n&"$SESSIONFILES"&];&then&
for&SESSIONFILE&in&$SESSIONFILES;&do&
.&$SESSIONFILE&
接着看run_parts(),位于本文件中间:&
run_parts&()&{&
#&until&run-parts&--noexec&is&implemented&
if&[&-z&"$1"&];&then&
internal_errormsg&"run_parts()&called&without&an&argument."&
if&[&!&-d&"$1"&];&then&
internal_errormsg&"run_parts()&called,&but&\"$1\"&does&not&exist&or&is"&\&
"not&a&directory."&
for&F&in&$(ls&$1);&do&
if&expr&"$F"&:&'[[:alnum:]_-]\+$'&&&/dev/null&2&&1;&then&
if&[&-f&"$1/$F"&];&then&
echo&"$1/$F"&
大概意思就是run_parts&()&把$SYSSESSIONDIR目录下的文件名取出来赋值给$SESSIONFIL
ES,然后循环运行该目录下的文件。看看该目录,即/etc/X11/Xsession.d目录,可以看到
几个以数字开头的文件,实际上这些数值就表示了这几个文件被运行的优先级,数字小的
优先级高,因为在上面的run_parts&()&里是用ls命令显示该目录下的文件,所以前面数字
小的被ls时显示在前面,所以被&
for&SESSIONFILE&in&$SESSIONFILES;&do&
.&$SESSIONFILE&
这个for循环执行时也先被执行。看到/etc/X11/Xsession.d目录下有个55gnome-session_
gnomerc文件,里面提到了STARTUP变量。然后运行:&
xdkui@Debian:/etc/X11/Xsession.d$&grep&STARTUP&*&
看到50xfree86-common_determine-startup文件。里面有&
if&[&-z&"$STARTUP"&];&then&
if&[&-x&/usr/bin/x-session-manager&];&then&
STARTUP=x-session-manager&
elif&[&-x&/usr/bin/x-window-manager&];&then&
STARTUP=x-window-manager&
elif&[&-x&/usr/bin/x-terminal-emulator&];&then&
STARTUP=x-terminal-emulator&
即设置启动程序,实际上设置STARTUP变量,如果以上程序都没有找到,则会报错退出,即
X环境没有被启动。再运行&
xdkui@Debian:/etc/X11/Xsession.d$&grep&STARTUP&*&
看到优先级最低也即最后被运行的99xfree86-common_start文件,里面只有一句话:&
exec&$STARTUP&
好了,到这里就启动我们的X&client了,终于完了^_^。总结下这第一种方式的启动过程,
简单的说就是依次顺序查找/usr/bin/x-&session-manager&,x-window-manager,/usr/b
in/x-terminal-emulator&这三个文件。如果存在则启动之,也即X&client。如果三个都不
存在则报错退出了。看/usr/bin/x-session-manager文件可以看到是个符号连接,最终连
接到/usr/bin/gnome-session,也就是gnome&了。至于我们在gnome&启动时可能会设置启
动输入法等程序,那就归&gnome-session管了,也就不再分析了。可以试着把/usr/bin/x
-session-manager&改为指向xfce4-&session(如果安装了的话)&,再startx就会启动xfce
4环境了。大概RedHat的switchdesk工具就是改这个连接实现的吧?。或者删掉/usr/bin/
x-session-manager&,再startx,只启动了/usr/bin/x-window-manager&所指向的window
&manager了吧,我这里是blackbox。&
下面看第二种情况,即用户目录的xinitrc文件$HOME/.xinitrc。对比hiweed-debian-&de
sktop_0.55_i386,存在$HOME/.xinitrc文件,在里面有exec&xfce4-session。故其X&cli
ent可以说最主要的x-session-manger是从$HOME/.xinitrc启动的。也就不会经过上面第一
种情况的执行过程了。&
终于把gnome(或者说x-session-manger)的启动过程弄明白了,下面说点别的吧。xinit程
序同时启动X&server和&X&client,这在单机上还可。要是位于网络上的两台电脑分别是c
lient和server,则xinit就无能为力了。这时就得靠纯“手工”来启动&X了。下面简单的
“手工”启动X&server和X&client:在CUI模式下运行命令:&
xdkui@Debian:~$X&:1&&
看到了一个灰色的全屏幕和一个鼠标指针,这就是X&server了,其屏幕编号为1。下面构造
X&client,按Ctrl+Alt+F1回到刚才的CUI(Ctrl+Alt+F7对应本机的第一个启动的X&server
,Ctrl+Alt+F8对应第二个,有人说F7对应屏幕编号为0的&X&server实际上是不对的,如果
第一个启动的屏幕编号为1,第二个启动的编号为0,则F7对应1屏幕,F8对应0屏幕),运行
命令:&xdkui@Debian:~$xeyes&-display&localhost:1&&
然后按Ctrl+Alt+F7,看到我们的X&client也就是xeyes了吧。再回到CUI,运行&
xdkui@Debian:~$X&&
开启一个屏幕编号0的X&server,CUI下再运行&
xdkui@Debian:~$xterm&&
这时Ctrl+Alt+F7对应屏幕编号1;而F8对应屏幕编号0,且其X&client为xterm。先退出上
面的两个X&server,下面复杂点手动启动我们的gnome吧,首先&
xdkui@Debian:~$X&&
xdkui@Debian:~$gnome-session&
看到的就和用startx&启动的X一样了,这时X&server是X这个程序,X&client是gnome-ses
sion及其启动的窗口管理器等程序。看到这里感觉xinit用处并不大(??不知是否正确),简
单的脚本就可以实现。本来想把xinit反汇编了分析下,可懒得搞了^_^这是位于本机的情
况,对于X&server和X&client位于不同主机的情况见下面本文第三部分。&
个人感觉对于X&Window&System,搞清楚X&server与X&client关系很重要。一般X&server很
简单,就是&/usr/bin/X11/X程序;X&client则花样繁多,从高级的CDE,GNOME,KDE,到低
级一点的只有twm,&Window&Maker,blackbox等窗口管理器,再到最简陋的只有xterm,rxv
t,xeyes等单个x程序。正是由于X&client的各种搭配,使得我们的X&Window&System看起来
多样化。这可能也是X&Window&System最大的卖点之一吧&^_^&
三)&跨网络运行X&Window&System&
一般用来做服务器的系统(Linux,FreeBSD,Solaris等等)都不会装X&server,甚至很多都没
有显示器。这样可以在这些系统里安装简单的X&client,以GUI的方式远程显示在管理员们
所坐的X&server里。我们实验室用FreeBSD做网关,提供WWW,FTP服务,一般在管理员的本
地机器起个X&server,然后ssh或telnet上网关运行X&client程序显示在本地显示器上,当
然,也可用XDMCP&(X&Display&Manager&Control&Protocol),man&xsession里提到/etc/X
11/Xsession一般被&startx(我的/etc/X11/xinit/xinitrc里调用Xsession脚本)或displa
y&manager调用,但有的&display&manager只调用Xsession而不是xinitrc,故为了startx
和display&manager两种方式下都可正常启动GUI,最好把X&client启动的程序放在Xsessi
on文件里。远程运行X&client程序需要设置DISPLAY环境变量,设置为&主机名称:屏幕编
号(如192.168.1.2:0,则表示X&server是192.168.1.2这台机器上的0号屏幕);或是给X&c
lient程序加个&—display参数。由于条件限制,只测试了位于TCP/IP网络环境,X&serve
r为192.168.1.2,X&client为&192.168.1.1。&
1)&Windows系统做X&server&
a)&用ssh或telnet方式&
Windows下面的X&server软件有很多种,我这里使用X-win32。在Windows里运行X-win32程
序,则相当于本地机器是个X&server。远程登录上Debian(我这里是用VMware仿真网络环境
,直接进虚拟机即可^_^),运行:&
xdkui@xclient:~$export&DISPLAY=192.168.1.2:0&
xdkui@xclient:~$xterm&&
这时即在Windows里的X&server里看到了xterm了,至于X&client还运行什么程序就看你的
需要了,文件管理器阿,资源查看器等。当然,这里X-win32要设置好授权,好像默认是禁
止接入控制,即任何X&client都可使用这个X&server。&
b)&XDMCP方式&
常见的Display&Manager有xdm,gdm,kdm等。我这里使用的是gdm。需要修改gdm的配置文件
/etc/X11/gdm/gdm.conf,修改[xdmcp]段的Enable=true,使得可以远程登录,在X&clie
nt运行gdm。&
在X-win32里建一个XDMCP的session,查询方式,填入IP为运行gdm的机器地址。连接,即
可看到登录界面,下面的就不用说了,享受吧&
2)&Linux与Linux互联&
a)&ssh或telnet方式&
在linux本地起个X&server,需要注意授权问题,建立文件/etc/X0.hosts,填入X&client
的&IP192.168.1.1,其中X0.hosts表示本地第0个屏幕允许连接的X&client地址,建立X1.
hosts文件则是本地第1个屏幕允许连接的X&client地址,以此类推,man&xserver里有。运
xdkui@xserver:~$X&&
运行该程序时别加-nolisten参数,否则不会在网络上侦听。&
这个时候Ctrl+Alt+F7是X&server,返回Ctrl+Alt+F1还可以ssh上X&client机器上。&
然后登录上X&client,运行&
xdkui@xclient:~$xterm&&display&192.168.1.2:0&
即可在本地的X&server里看到xterm了,如果有的话,还可把gnome-session也显示在本地
来。同样可以在linux里的VMware里做这个测试,需要用点手腕了^_^见下&
b)&XDMCP方式&
在我们的X&client里运行gdm(别忘了修改gdm.conf),然后在本地X&server的CUI下面运行
X&-query&192.168.1.1(X&client开gdm机器的地址)。可以看到登录界面了吧。&
我是在linux里的VMware里做的测试,说说所用的手腕吧。在Ctrl+Alt+F1的CUI下正常运行
startx&启动&GUI,这时Ctrl+Alt+F7即为我的X&server,X&client启动的gnome,然后在这
里运行VMware打开Debian虚拟机,并运行gdm。然后回到Ctrl+Alt+F1,运行X&:1&-query&
192.168.1.1。看到登录界面了吧。这时Ctrl+Alt+F7为我的0号屏幕,里面运行了虚拟机。
Ctrl+Alt+F8为1号屏幕,在远程GUI登录X&client。相当于我在本地起了两个X&server。&
男人因为寂寞而成功;
女人因为成功而寂寞。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 影驰750ti大将 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信