一、查看VNC是否安装
默认情况下在VNC服务随着安装系统安装的;
[root@localhost ~]# rpm -qa |grep vnc
vnc-server-4.1.2-14.el5_3.1
vnc-4.1.2-14.el5_3.1
如果没有安装则通过
yum search vnc
yum install vnc* 来安装;
二、启动VNC服务器
1、启动vncserver。
在终端中输入:
#vncserver :1 -geometry 800x600 –depth 24 注::1指1号窗口,-geometry指窗口分辨率,-depth指色彩数
也可以简单的指定:
#vncserver :1 注:使用RealVNC的客户端,窗口分辨率与色彩数可以在客户端指定
当你第一次启动vncserver时,会要求指定密码,该密码是VNC客户端连接时要输入。
窗口可以从0开始指定,如果Linux本地端已经启用图形环境,则必须从1开始指定,因为窗口0被X11占用
第一次启动vncserver会提示输入密码:
密码会自动保存在主目录下的passwd中
记住窗口号;
如果以同样的用户在运行一次vncserver会出现localhost:2.log localhost:2.pid这样的提示,从客户端运行 VNC Viewer:在IP地址后面跟上1或者2都能以同一个用户进入到系统中,不过会把前面的登录过的窗口关闭掉;
[root@localhost .vnc]# pwd
/root/.vnc
[root@localhost .vnc]# ls
localhost:1.log localhost:1.pid localhost:2.log localhost:2.pid passwd xstartup
2、配置xstartup
[root@localhost .vnc]#vi 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 &
(如 果Linux本地端已经启用Gnome或KDE图形环境,当VNC客户端连接服务器后,可能会只显示灰屏,没有正常启用图形环境。查看~/.vnc下的日 志时会提示错误:You are already running a session manager。这时就需把上面这两行注释去掉,就能正常显示桌面;如果Linux本地端是init 3模式,则不需要修改这两行。
当vnc客户端连接服务器时显示的界面是英文的,主要是中文环境还没有装入,而且没有中文输入法。在# exec /etc/X11/xinit/xinitrc行后添加下面内容:
export LANG=zh_CN.UTF-8 注:启用中文环境
scim –d 注:加载scim输入法)
原来的最后一行twm &表示启动twm,修改成gnome-session &启动Gnome,修改成startkde &启动KDE。
3、使vncserver开机自启动
[root@localhost ~]# chkconfig vncserver on
[root@localhost ~]# chkconfig --list vncserver
vncserver 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@localhost ~]#service vncserver stop/start/restart 启动服务;
4、关闭vncserver
#vncserver –kill :1 注:关闭窗口1,以此类推关闭窗口2就为:2
当所有窗口都关闭vncserver服务就关闭了。我们会在.vnc的目录下面看到.pid的文件。里面就是该窗口运行的进程号,使用kill -9 该进程号就能关闭从客户端连接进来的vnc viewer;
5、修改vnc访问密码
使用vncpasswd可以修改不同用户的VNC密码,一定要注意,如果配置了不同用户的VNC,需要分别到各自的用户中进行修改,
[root@localhost .vnc]# vncpasswd
Password:
Verify:
三、设置用户分辨率
1、编辑/etc/sysconfig/vncservers文件
[root@localhost .vnc]# vi /etc/sysconfig/vncservers
VNCSERVERS="1:root" #这里添加用户,一个窗口对应一个用户
VNCSERVERARGS[1]="-geometry 800x600"
#设置用户端的分辨率
2、vnc服务使用的端口号与桌面号的关系
VNC服务使用TCP端口从5900开始对应如下:
桌面号“1”-----对应端口号“5901”
桌面号“2”-----对应端口号“5902”
.......
以此类推;
基于JAVA的VNC客户程序web服务TCP端口从5800开始,也是与桌面号相关,对应如下:
桌面号“1”-----对应端口号“5801”
桌面号“2”-----对应端口号“5802”
..............
以此类推;
3、开启防火墙设置
以桌面号为“1”做相应的设置:
[root@localhost ~]# iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
[root@localhost ~]# iptables -I INPUT -p tcp --dport 5801 -j ACCEPT
重启防火墙后就正常访问了;
参考:http://wenku.baidu.com/view/0a7ef46648d7c1c708a1451f.html