客户需要安装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包都在镜像里有。
#rpm -ivh 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 password; 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
#!/bin/sh# 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 –kill :1 //停止显示端口号为“:1”的VNC服务器进程#vncserver :1 重启桌面
在浏览器输入的ip地址:5801,输入登录口令。如下图:
至此,就可以不用官网的HVM模式转换成PV模式,就可以使用图形界面了。是不是很简单呢。
5、配置多个桌面号:
使用同一用户帐号启动多个VNC服务器。同一用户可以使用vncserver命令启动多个VNC服务器。同一个用户便可以多次连接到VNC服务。即可以多次执行vncserver命令,并将其中的“桌面号”从“:1”改为“:2”或“:3”,依此类推。 #vncserver:2#vncserver:3
#vncserver //直接执行该命令,也可以。
6、修改VNC服务器的访问口令
#vncpasswd希望对大家有所帮助。。。。