CentOS 5.3默认已经安装了VNC Server软件包,只要在服务列表中选中启动一下就可以。
通过编辑文件~HOME/.vnc/xstartup来启动你喜欢的窗口管理器。
使用startkde & 来启动KDE,使用 gnome-session & 来启动GNOME。
一、启动VNC Server服务:
使用vncserver命令(在当前用户主目录下生成.vnc文件夹)
[root@CPAYNET005 ~]# vncserver
写道
You will require a password to access your desktops.
Password:<输入密码>
Verify:<输入密码>
xauth: creating new authority file /root/.Xauthority
New 'CPAYNET005:1 (root)' desktop is CPAYNET005:1
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/CPAYNET005:1.log
二、配置VNC Server启动文件
首次创建 ~HOME/.vnc/xstartup 时,指定的窗口管理器是 twm ,它是一个极小的窗口管理器,几乎每台 X Window 系统机器上都有 twm。
twm 不具备完整“桌面管理器”(象 KDE、GNOME 或 WindowMaker)的大部分花哨功能。下面是修改过的示例:
写道
#!/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 &
gnome-session &
在文件中,将倒数第二、三行注销掉,增加倒数第一行,表示启动GNOME桌面系统。
当然,倒数第一行也可以改为文章中第一段中提到的startkde &,表示启动KDE桌面系统。
三、关闭VNC Server服务
vncserver -kill :桌面号
例如:关闭上面的vnc连接
vncserver -kill :1
四、VNC Server 高级设置
1.设置vncserver启动脚本(/etc/init.d/vncserver)实现系统自启动时启动vncserver.
# 在/etc/rc.d/rc.local文件中加入下面行
写道
/etc/init.d/vncserver start
#也可以用chkconfig命令实现系统自启动时启动vncserver
[root@CPAYNET005 ~]# chkconfig --level 2345 vncserver on
2、编辑/etc/sysconfig/vncservers
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 1024x768"
在ARGS 中修改"1024x768"来适应自己的X桌面实际参数配置。可以在这里添加任何其他VNC服务器参数配置。
在VNCSERVERS中修改 root 为你希望运行VNC桌面的用户。
VNCSERVERS中的1表示VNC以桌面1运行,如果希望添加其他的桌面,可以修改配置如下:
写道
VNCSERVERS="1:user1 2:user2 3:user3"
3.设置vnc server的访问密码
使用vncpasswd命令
4、在RedHat系统上,使用以下命令启动VNC:
/etc/init.d/vncserver start
5、查看VNC Server启动情况
[root@CPAYNET005 ~]# netstat -tulnp
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:5801 0.0.0.0:* LISTEN 5248/Xvnc
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 5248/Xvnc
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 5248/Xvnc
tcp 0 0 :::6001 :::* LISTEN 5248/Xvnc
注:如果在浏览器中通过web方式访问VNC则 端口为:5801,如果通过VNC客户端(比如VNC Viewer)来访问VNC则端口为:5901
五、总结:
1.两种使 vncserver 开机自启动的方式:
a): vi /etc/rc.d/rc.local
在文件末尾加上一句:
/etc/init.d/vncserver start
b): 用命令: chkconfig --level 2345 vncserver on
2. vncserver 的系统配置文件: /etc/sysconfig/vncservers
3. vncserver 服务器的两种服务控制方式:
a): /etc/init.d/vncserver {start|stop|restart|condrestart|status}
b): service vncserver {start|stop|restart|condrestart|status} //(只有root 用户可以使用)
4.vnc 用户配置过程:
a): 在 vnscerver启动的情况下,在改用户的主目录(home 目录)下,执行命令:vncserver
[vnc@wzb ~]$ vncserver
You will require a password to access your desktops.
Password:
Verify:
xauth: creating new authority file /home/vnc/.Xauthority
xauth: (stdin):1: bad display name "wzb.sdu.edu.cn:3" in "add" command
New 'wzb.sdu.edu.cn:3 (vnc)' desktop is wzb.sdu.edu.cn:3
Creating default startup script /home/vnc/.vnc/xstartup
Starting applications specified in /home/vnc/.vnc/xstartup
Log file is /home/vnc/.vnc/wzb.sdu.edu.cn:3.log
[vnc@wzb ~]$ pwd
/home/vnc
b):上述过程中,设置了vnc用户的密码,其加密后的文件为 .Xauthority; 对vnc配置的文件为 .vnc/xstartup
[vnc@wzb ~]$ cat .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 &
若要使用Gnome的应对该文件进行修改:
#!/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 &
gnome-session &
c): 修改vncserver的系统配置文件(要有root权限): /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
# <URL:http://www.uk.research.att.com/archive/vnc/sshvnc.html>.
# 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="3:vnc"
VNCSERVERARGS[3]="-geometry 1440x900"
d):重启vncserver, /etc/init.d/vncserver restart //(需要root权限)
5.修改vnc用户密码:执行命令 vncpasswd 。
6. 修改vncserver的系统配置文件 /etc/sysconfig/vncservers, 可以控制vnc用户的远程访问方式;
# 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="3:vnc"
VNCSERVERARGS[3]="-geometry 1440x900"
结束!