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 \etc\inittab 修改配置 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后此命令就失效,需要重新再輸入。