1、先确认VNC是否安装
默认情况下,Red Hat Enterprise Linux安装程序会将VNC服务安装在系统上.
使用rpm命令检查是否安装了vnc,如果安装了就显示软件名称:
[root@redhat01 /]# rpm -qa | grep vnc
vnc-server-4.1.2-14.el5_6.6.x86_64
如果未安装就不会显示软件名称,可以到操作系统安装盘的Server目录下找到VNC服务的RPM安装包vnc-server-4.1.2-9.el5.x86_64.rpm,也可以到这个网站去搜索下载 http://rpmfind.net/ 或者 直接到VNC官网下载最新版本 https://www.realvnc.com/
安装命令如下:
[root@redhat01 home]# rpm -ivh vnc-server-4.1.2-14.el5_6.6.x86_64.rpm
2、启动VNC服务
[root@redhat01 /]# /etc/init.d/vncserver start #启动VNC服务
Starting VNC server: no displays configured [ OK ]
VNC服务使用的端口号与桌面号相关,VNC使用TCP端口从5900开始,对应关系如下:
桌面号为“1” ---- 端口号为5901
桌面号为“2” ---- 端口号为5902
桌面号为“3” ---- 端口号为5903
......
基于Java的VNC客户程序Web服务TCP端口从5800开始,也是与桌面号相关,对应关系如下
桌面号为“1” ---- 端口号为5801
桌面号为“2” ---- 端口号为5802
桌面号为“3” ---- 端口号为5803
......
以下命令执行的过程中,因为是第一次执行,需要输入密码,这个密码被加密保存在用户主目录下的.vnc子目录(/root/.vnc/passwd)中;
同时在用户主目录下的.vnc子目录中为用户自动建立xstartup配置文件(/root/.vnc/xstartup),在每次启动VND服务时,都会读取该文件中 的配置信息。
[root@redhat01 /]# vncserver :1 #启动VNC桌面号(桌面号等同于端口)
You will require a password to access your desktops.
Password:
Verify:
3、配置防火墙放行VNC端口
[root@redhat01 /]# vim /etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT #把桌面号1对应的端口添加到防火墙
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5801 -j ACCEPT #把桌面号1对应的端口添加到防火墙
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
[root@redhat01 /]# /etc/init.d/iptables restart #重启防火墙生效
4、配置VNC登录桌面类型(linux桌面主要有KDE和GNOME两种)
默认配置登陆到桌面后显示是非常简单的,是因为VNC服务默认使用的是twm图形桌面环境的,可以在VNC的配置文件xstartup中对其进行修改
,取消配置文件中以下两项的#号,添加一行gnome-session gnome,使用GNOME桌面
[root@redhat01 /]# echo $DESKTOP_SESSION #查看linux系统使用的桌面类型
gnome
[root@redhat01 /]# vim /root/.vnc/xstartup #修改VNC登录桌面配置文件(标红色字就是作了改动)
#!/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 gnome
twm &
注意:VNC远程实体linux桌面,先把实体linux修改字符介面启动 vim etcinittab 修改配置 id:5:initdefault: 把5修改成3即可,实体linux和VNC远程linux是不能同时运行两个图形介面启动,必须取消一个。
[root@redhat01 /]# shutdown -r now #重启linux系统让服务生效或禁用vnc服务再重启效果一样
[root@redhat01 /]# vncserver :1 #前面执行是设置初始密码,这次执行开启一个桌面号远程
[root@redhat01 /]# vncpasswd #修改VNC登录密码
设置开机自动启动vncserver服务并且自动打开服务端口
[root@redhat01 /]# chkconfig vncserver on #开机自动启动vncserver服务
[root@redhat01 /]#vim /etc/sysconfig/vncservers
VNCSERVERS="1:root" #等同于开机自动运行 vncserver :1命令
VNCSERVERARGS[1]="-geometry 1024x768" #配置启动的桌面
标注:多个用户可以这样写:
VNCSERVERS= "1:user 2:user2 3:user3"
5、windows系统安装VNC客户端登录linux桌面
标注:vncconfig -nowin& 在VNC远程桌面linux打开终端输入此命令就能复制拷贝文字到windows桌面上,关闭VNC后此命令就失效,需要重新再输入。