複製鏈接
請複製以下鏈接發送給好友

VNC

鎖定
VNC [1]  (Virtual Network Console)是虛擬網絡控制枱的縮寫。它 是一款優秀的遠程控制工具軟件,由著名的 AT&T 的歐洲研究實驗室開發的。VNC 是在基於 UNIXLinux 操作系統的免費的開源軟件,遠程控制能力強大,高效實用,其性能可以和 Windows 和 MAC 中的任何遠程控制軟件媲美。 在 Linux 中,VNC 包括以下四個命令:vncserver,vncviewer,vncpasswd,和 vncconnect。大多數情況下用户只需要其中的兩個命令:vncserver 和 vncviewer。
中文名
虛擬網絡控制枱
外文名
Virtual Network Console
簡    稱
VNC
釋    義
一款優秀的遠程控制工具軟件

VNC組成部分

客户端登錄界面 客户端登錄界面
VNC基本上是由兩部分組成:一部分是客户端的應用程序(vncviewer) [2]  ;另外一部分是服務器端的應用程序(vncserver)。VNC的基本運行原理和一些Windows下的遠程控制軟件很相像。VNC的服務器端應用程序在UNIXLinux操作系統中適應性很強,圖形用户界面十分友好,看上去和Windows下的軟件界面也很類似。在任何安裝了客户端的應用程序(vncviewer)的Linux平台的計算機都能十分方便地和安裝了服務器端的應用程序(vncserver)的計算機相互連接。另外,服務器端 (vncserver)還內建了Java Web接口,這樣用户通過服務器端對其他計算機的操作就能通過Netscape顯示出來了,這樣的操作過程和顯示方式比較直觀方便。

VNC特點介紹

同樣可能遠程連入UNIX、Linux進行圖形化操作的還有流行的Xmanager,VNC與之相比——兩者工作原理不一樣,前者(VNC)是遠程連入操作系統,所有操作在UNIX、Linux主機服務端進行,即使操作過程中“本地電腦與操作主機網絡斷開”,也不影響操作的順利進行;而後者(Xmanager)是通過端口將主機服務器的UI界面引導到本地電腦進行展現,如操作過程出現“本地電腦與操作主機網絡斷開”,操作將中斷失敗!如果操作中進行的工作任務非常重要,不能中斷,如ORACLE RAC實施,結果是災難性的!

VNC命令描述

vncserver
服務程序必須在在主(或遙控)計算機上運行。你只能作為使用者(不需要根用户身份)使用此項服務。
vncviewer
本地應用程序,用於遠程接入運行vncserver的計算機並顯示其環境。你需要知道遠程計算機的IP地址和vncserver設定的密碼。
vncpasswd
vncserver的密碼設置工具。vncserver服務程序沒有設置密碼將不能運行(好習慣)。如果你沒有設置,運行vncserver時它會提示你輸入一個密碼。所以,一般我不會單獨運行這個命令來設置密碼。
告訴vncserver連接到遠程一個運行vncviewer的計算機的IP和端口號。這樣我就可以避免給其他人一個接入的密碼。
Xvnc
一個vnc“主控”程序,一般來説不需要直接運行。(vncserver和vncviewer實際上是Xvnc的腳本)
查找所有可用的選項,運行:
Xvnc --help
出於安全的考慮,一般不建議直接以超級用户賬號運行vncserver程序。如果你需要超級用户的環境,請以一般用户登錄後再使用su命令登錄到超級用户賬號。
VNC運行的工作流程如下:
(1) VNC客户端通過瀏覽器或VNC Viewer連接至VNC Server。
(2) VNC Server傳送一對話窗口至客户端,要求輸入連接密碼,以及存取的VNC Server顯示裝置。
(3) 在客户端輸入聯機密碼後,VNC Server驗證客户端是否具有存取權限。
(4) 若是客户端通過VNC Server的驗證,客户端即要求VNC Server顯示桌面環境。
(5) VNC Server通過X Protocol 要求X Server將畫面顯示控制權交由VNC Server負責。
(6) VNC Server將來由 X Server的桌面環境利用VNC通信協議送至客户端,並且允許客户端控制VNC Server的桌面環境及輸入裝置。

VNC詳細安裝方法

安裝VNC
yum install vnc-server
添加用户
passwd vnc
設置用户的vnc密碼
su vnc
exit
編輯vnc配置文件
vi /etc/sysconfig/vncservers
在最後加上:
VNCSERVERS="1:vnc"
VNCSERVERARGS[1]="-geometry 1024x768"
創建xstartup腳本
centos-6用户忽視此步
/sbin/servicevncserverstart
/sbin/servicevncserverstop
su vnc
vi ~/.vnc/xstartup
加入如下代碼:
#!/bin/sh
# Add the following line to ensure you always have an xterm available.
( while true ; do xterm ; done ) &
# 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 &
退出到root:
exit
啓動vnc
/sbin/service vncserver start
測試vnc
7.1、使用java連接vncserver
在瀏覽器中輸入http://192.168.0.10:5801登錄桌面。
7.2、使用vnc viewer連接vncserver
打開vnc viewer,在server中輸入192.168.0.10:1進行連接。
注意:192.168.0.10替換成自己的服務器IP。

VNC工作流程

(1) 在服務器端啓動 VNC Server。
(2) VNC客户端通過瀏覽器或 VNC Viewer 連接至VNC Server。
(3) VNC Server傳送一對話窗口至客户端,要求輸入連接密碼, 以及存取的VNC Server顯示裝置
(4) 在客户端輸入聯機密碼後,VNC Server驗證客户端是否具有存取權限。
(5) 若是客户端通過 VNC Server 的驗證,客户端即要求VNC Server顯示桌面環境
(6) VNC Server通過X Protocol 要求X Server將畫面顯示控制權交由VNC Server負責。
(7) VNC Server將來由 X Server 的桌面環境利用VNC通信協議送至客户端, 並且允許客户端控制VNC Server的桌面環境及輸入裝置
參考資料