分类: LINUX
2010-04-30 16:04:31
如何在Linux下配置vnc (linux环境是redhat企业版5.3)
1.以root用户登录系统
2.运行 rpm –qa | grep vnc 检查vnc是否安装,如果显示:
vnc-server-
3.如果没有安装,就需要用到第二张光盘,运行以下命令:
rpm -ivh /mnt/Server/vnc-server-
具体的实施步骤:
1首先要启动vcn的服务:
如果第一次配置VNC Server,会要求提供登录VNC使用的密码。以后也可以使用vncpasswd来修改密码。每个用户连接都需要占用一个桌面。如要启动编号为1的桌面需要执行如下命令:
[root@localhost ~]# vncserver :1
You will require a password to access your desktops.
Password: 注释:我的密码是vncserver
Verify: 注释:我的密码是vncserver
3到此结束设置密码的过程。
在IE浏览器里面输入:会看到如下界面:
虽然此时可以登录,但是登录后看到的界面是X term的界面,还不是正常的X Window界面,我们要修改配置,使之使用X Window,配置见后面:
如果本机安装有防火墙,会看到如下的提示:
这里需要对防火墙进行配置,以保证vnc可以穿越防火墙。配置如下:
在配置redhat的vncserver时,没有将默认的端口号5900+n添加到防火墙中。在使用vncviewer尝试连接vncserver时,被防火墙屏蔽掉了。可用如下方法:
[root@localhost ~]# iptables –I INPUT -p tcp --dport 5801 -j ACCEPT
[root@localhost ~]# iptables –I INPUT -p tcp --dport 5901 -j ACCEPT
3.VNC服务使用的端口号与桌面号的关系
VNC服务使用的端口号与桌面号相关,VNC使用TCP端口从5900开始,对应关系如下
桌面号为“1” ---- 端口号为5901
桌面号为“2” ---- 端口号为5902
桌面号为“3” ---- 端口号为5903
……
基于的VNC客户程序Web服务TCP端口从5800开始,也是与桌面号相关,对应关系如下
桌面号为“1” ---- 端口号为5801
桌面号为“2” ---- 端口号为5802
桌面号为“3” ---- 端口号为5803
……基于上面的介绍,如果Linux开启了防火墙功能,就需要手工开启相应的端口,以开启桌面号为“1”相应的端口为例,命令如下然后重启iptables服务
[root@localhost ~]#/etc/init.d/iptables restart
5.配置VNC图形桌面环境为KDE或GNOME桌面环境
如果您是按照我的上面方法进行的配置的,登陆到桌面后效果是非常简单的,只有一个Shell可供使用,这是为什么呢?怎么才能看到可爱并且美丽的KDE或GNOME桌面环境呢?回答如下
之所以那么的难看,是因为VNC服务默认使用的是twm图形桌面环境的,可以在VNC的配置文件xstartup中对其进行修改,先看一下这个配置文件接下来进行如下配置:
[root@localhost ~]#cat /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" &
twm &
gonme-session gonme
变动的地方是:把unset和exec前面的#号去掉,在最后加上gonme-session gonme
如果使用kde桌面,就把twn改为startkde;
如果使用gonme桌面,就把twn改为gnome-session。
重新启动vncserver服务的方法:
[root@testdb ~]# vncserver -kill :1
[root@testdb ~]# vncserver :1,
[root@localhost ~]# /etc/init.d/vncserver stop
关闭 VNC 服务器: [确定]
[root@localhost ~]# /etc/init.d/vncserver start
启动 VNC 服务器:no displays configur
但是到目前为止,还没成功,会出现上面的提示:no displays configur,登陆后依然没有出现gnome的图形界面。这是需要编辑/etc/sysconfig/vncserver文件。
变动的地方主要在这里:
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
改变后的脚本是:
VNCSERVERS="1:root"
VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
#vncserver -geometry 800x600 设置vncserver的分辨率
#vncserver -depth 32 设置vncserver的色深
在vnc下再次登陆linux服务器时会出现漂亮的图形界面如下:
到此为止:基本的功能就算配置成功了。
如果要多人登陆就需要在/etc/sysconfig/vncserver脚本里面进行配置了。
4)设置VNC服务随系统启动自动加载
第一种方法:使用“ntsysv”命令启动图形化服务配置程序,在vncserver服务前加上星号,点击确定,配置完成。
第二种方法:使用“chkconfig”在命令行模式下进行操作,命令使用如下(预知chkconfig详细使用方法请自助式man一下)
[root@testdb ~]#chkconfig –level 12345 vncserver on
[root@testdb ~]# chkconfig --list vncserver
vncserver 0:off
1:off 2:on 3:on
4:on 5:on 6:off
VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器端的应用程序(vncserver)。VNC的基本运行原理和一些Windows下的远程控制软件很相象。VNC的服务器端应用程序在UNIX和Linux操作系统中适应性很强,图形用户界面十分友好,看上去和Windows下的软件界面也很类似。在任何安装了客户端的应用程序(vncviewer)的Linux平台的计算机都能十分方便的和安装了服务器端的应用程序(vncserver)的计算机相互连接。另外,服务器端 (vncserver)还内建了JavaWeb接口,这样用户通过服务器端对其他计算机的操作就能通过firefox等浏览器显示出来了,这样的操作过程和显示方式比较直观方便。服务器端设置
一、linux系统 安装VNC和VNC-server两个rpm包,也有tar包下载,但为了方便还是用了rpm包。 安装完两个包后: 1、运行“vncserver”命令正式将一个xdm作为VNC服务器,这时会出现“New "x" desktopis hostname"1”之类的话,其中最后的“1”表示这是第一个VNC的图形界面,如果再运行一次“vncserver”命令,则会出现“New "x" desktop is hostname"2"”,最后的2表示这是第二个图形界面。如此类推,再运行再增加...... 2、server端的设置就是这么简单,但如果你不想用xdm而想用更漂亮的gdm或kdm的话,就要作一些修改了:编辑~/.vnc/xstartup文件,该文件在第一次运行“vncserver”命令的时候自动产生。将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" &
#twm &
3、可以在/usr/local/bin/vncserver中更改分辨率和色度。(也可能是/usr/bin/vncserver中,可用“whick vncserver”看看哪个才是你真正在用的“vncserver”。 4、配置VNC自动启动。在/etc/sysconfig 下有一个vncservers 的配置文件。修改成如下:VNCSERVERS="1:root"意思就是使用ip:1即可使用root的用户桌面。 而在屏幕上不显示。使用chkconfig --level 3 vncserver 即可在启动时加载vncserver5,vncserver可以带参数运行,请看下面的例子。 以分辨率 800x600 启动vncserver : vncserver -geometry 800x600 以16位色深启动vncserver : vncserver -depth 16 让vncserver允许所有客户机共享接入同一桌面: vncserver -alwaysshared (这种启动方式可作简单的视频会议,或远程教学) vncserver默认启动的vnc服务器有新连接请求时会断开旧的连接,若想让vncserver拒绝新连接请求保持旧的连接 : vncserver -dontdisconnect 以上参数可配合使用。 二、windows系统 windows版本的VNC更简单,下载VNC的exe文件,双击安装,安装过程和其它windows的软件没有什么不同,一路next。最后选择是否产生快捷方式和开机自动运行等即可。 在桌面双击VNC SERVER图标,填入密码,按确定即可。其默认的listen端口是3900。 客户端设置
一般来说,我们会使用windows作客户端(因为linux的xwindow其实已经是一个能共享桌面的服务器)。 一、windows:双击桌面的VNC VEIWER图标。 linux:在Xwindow中运行vnccleint命令。 二、以下对windows和linux来说都是一样的: 在弹出的对话框中填入server的ip, 1、server端是windows的话,直接填IP即可; 2、server端是linux的话,必须填上“IP:数字”,其中的“数字”是第几个图形界面。(在上面linux server端的第二点有谈过这问题)。 比如:192.168.0.99:1或192.168.0.99:2 3、输入在server端设置的密码即可。 4、如果您的Linux系统中安装了Java classes,您可以启动firefox等浏览器来连接vncserver,然后输入以下URL: xxx.xxx.xxx:5801xxx.xxx.xxx.xxx是您计算机的IP地址或者主机名
详细出处参考: