感覺VNC還是LINUX下不二的遠程遙控軟體。但不是太貼近中國用戶,比如LINUX下無法按熱鍵呼出中文輸入。雖然有一點點的不足,仍然無法阻止其在LINUX系統中的地位。讓我們看下它的魅力吧。首先,複製粘貼做的很隨意。本機複製了,直接在遠程機器里按粘貼即可。很方便的。 網路遙控技術是指由一部計算機(主控端)去控制另一部計算機(被控端),而且當主控端在控制端時,就如同用戶親自坐在被控端前操作一樣,可以執行被控端的應用程序,及使用被控端的系統資源。 VNC(Virtual Network Computing)是一套由AT&T實驗室所開發的可操控遠程的計算機的軟體,其採用了GPL授權條款,任何人都可免費取得該軟體。VNC軟體主要由兩個部分組成:VNC server及VNC viewer。用戶需先將VNC server安裝在被控端的計算機上后,才能在主控端執行VNC viewer控制被控端。 (在windows中也由一套著名的網路遙控軟體??Symantec公司推出的pcAnywhere。 VNC server與VNC viewer支持多種操作系統,如Unix系列(Unix,Linux,Solaris等),windows及MacOS,因此可將VNC server 及VNC viewer分別安裝在不同的操作系統中進行控制。如果目前操作的主控端計算機沒有安裝VNC viewer,也可以通過一般的網頁瀏覽器來控制被控端。 整個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的安裝與使用』 本人的操作環境:被控端 Redhat9.0,主控端Windows XP。 1. 載VNC Server VNC Server下載地址:http://gwbn.onlinedown.net/soft/1271.htm 2.安裝。 vnc-3.3.7-x86_linux.tar.gz (如果是源代碼請看包里的說明),當下載了VNC的Linux版本后,可以解壓文件到一個文件夾中,例如/home/vnc,然後複製文件vncserver、 vncpasswd和Xvnc到/usr/bin目錄中。假如想要能夠通過VNC伺服器的整合Java界面遠程控制Linux電腦,也得需去建立一個子目錄/usr/local/vnc/classes。在建立此子目錄之後,複製VNCJava.class文件到此目錄中。(一般redhat 9.0自帶以上文件,所以直接用終端執行就可以)。 在FC8上直接YUM下,巨方便。我從來不看怎麼安裝,這步驟的。 3.在Linux上啟動VNC Server 執行vncserver命令: [root@linux root]# vncserver You will require a password to access your desktops. Password: ----為了不想任何人都可以任意遙控此計算機。因此當第 1次啟動VNC server時,會要求設置網路遙控的密碼。這個就是你的登陸VNC的密碼一定要夠安全。好像哪裡的文章上講可以配置用戶的。不過80%的人群不會習慣區分用戶的。因為VNC可以虛擬N個桌面的。霍霍,配合LINUX的用戶很好很強大。 Creating default startup script /root/.vnc/xstartup Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/linux:1.log (經上述步驟后,便已啟動了VNC Server。如果你想要更改VNC Server的密碼,只要執行vncpasswd命令即可。) 5. 從瀏覽器遠程遙控。 啟動VNC Server 后直接打開瀏覽器,在地址欄中輸入被控端的網址或IP地址,並在網址后加上「:5800+顯示編號」的埠號即可操控該計算機。 例如:http://192.168.01.:5801 (如果顯示編號為1,一般第一次設置的顯示編號都是1,就用5800+1=5801。) 如果看到窗口,就說明你成功,在密碼框輸入密碼,就能遠程控制了。 沒事誰用瀏覽器啊。。。。。無聊的一步 6.FAQ A. 如何以圖形界面登錄被控端? 編輯~/.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" & gnome-session & 建議選這個。。。其他的都給它前面加上# startkde & twm & gnome-session是啟動Gnome圖形界面;startkde是啟動KDE圖形界面;twm是啟動文本界面。三者選其一。 A. 如何開機時自動啟動vnc服務 打開「系統設置」-->"伺服器設置"-->"服務",勾選上vncserver,「保存」。 修改 /etc/sysconfig/vncservers VNCSERVERS="1:root 2:phred 3:sysadmin" 1代表「桌面1」,root代表用戶名;可同時啟動多個用戶桌面 VNCSERVERARGS[1]="-geometry 800x600 -alwaysshared -depth 24" -alwaysshared代表允許多用戶同時登錄 -depth代為色深,參數有8,16,24,32。 這步有點高深了。。。也複雜點,其實客戶端可以完成80%的配置。而我有更好的方法,因為SSH啟動是默認的。SSH上去打開VNC就行了。也不過一條命令。更多的是安全。 A.為什麼連接后,不能顯示桌面,而只有一個Terminal窗口? 試著修改/root/.vnc/xstartup,把最後一行 twm& 改成 gnome-session& or kde&(據說KDE在目前的VNC Viewer上的表現不太穩定) B. 為什麼重新啟動VNC Server后,連接不上了? 因為重新啟動VNC Server時,系統會指定一個新的顯示編號,需使用此新的編號,否則就無法連接 -------------------------------------------------------------------------------------------------------------------------------- 查看vnc已啟用的桌面號及監聽進程 [root@linux /]# netstat -tlnp |grep vnc vncserver 命令帶有一些很有用的參數,用vncserver --help 查看。 簡單解釋一下: vncserver [:] [-name ] [-geometry x] [-depth ] [-pixelformat format] vncserver -kill :display : vnc服務的display號,可以自行指定,盡量不要使用系統默認的以保證安全,必須為非0的正整數 vncserver :99 使用時必須輸入正確的display號才能連接;用瀏覽器要在埠號加上display號,默認埠5800,遠程連接輸入 XXX.XXX.XXX.XXX:5899 -name 指定vncserver桌面名字 比如要讓名字顯示為 「紅帽」 vncserver -name 紅帽 -geometry x指定顯示桌面的解析度,默認為1024x768 vncserver -geometry 800x600 這個命令實際中很有用,例如本地解析度為1024x768 如果不設定遠程vnc服務解析度就會造成桌面顯示不全的問題。 -depth 指定顯示顏色,設定範圍8~32 vncserver -depth 16 用16bits顏色顯示 -pixelformat 指定色素格式與-depth大致相同,只是表示方法不一樣 vncserver -pixelformat RGB888 用24bits顏色顯示 vncserver -kill :display 結束vnc服務及遠程桌面 vncserver -kill :1 其它更詳細的使用請用man查看。 vnc內定的窗口管理器是twm與大家使用的可能不同,通過修改vnc的配置文件可以更換為自己喜歡的,方法如下: 修改用戶目錄下的 .vnc/xstartup 文件 #!/bin/sh [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & twm & 將#!/bin/sh後面的內容全部註釋掉,改成 ~/.Xclients 保存文件 現在可以測試修改是否成功,先kill vncserver服務 vncserver -kill : 或 pa aux|grep Xvnc kill PID 重新啟動vncserver ,用vncviewer連接遠程桌面是不是已經變成自己喜歡的類型了。 在前面有vnc server 設置的文章(http: //bbs.chinaunix.net/forum/viewtopic.php?t=368552&highlight=yunqing)里, 我們已經可以在一個linux的伺服器上運行vncserver來進行遠程訪問了,但需要注意的是,如果直接使用vncviewer來進行訪問,有兩點不利因素: 1. 口令傳輸是明文,很容易被偵聽到. 2. 防火牆需要打開59xx埠,這在通常的單位里是不可能的. 幸運的是,我們有ssh這個強大的工具,象X11 Forwarding(另文論述),我們可以使用ssh隧道來保護通訊過程,下面就進行簡單介紹. 假設vncserver運行在伺服器 myserver (ip地址為:192.168.x.x)的屏幕1,也就是偵聽 192.168.x.x:5901, 用戶名為foo 情形一: vnc客戶端為linux 這種情形很簡單,一般的linux發行版本裡面都默認安裝了ssh套件. 1. 用ssh登錄到伺服器 ssh -L 5901:localhost:5901 -l foo myserver 或者直接用ip地址 ssh -L 5901:localhost:5901 -l foo 192.168.x.x 2. 在本機的另外開的終端上,運行vncviewer (或其它的類似工具) vncviewer localhost:1 情形二: vnc客戶端為windows 1. 下載一個ssh客戶端,個人推薦putty,只有一個程序,不需要安裝,簡單而功能齊全. 到這裡下載http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 下載putty.exe到桌面上直接運行即可。 2. 運行putty,輸入伺服器的ip地址,輸入一個名字,這裡myserver作為session的名字,按save保存。見附圖一 3. 單擊對話框左邊的tunnels來選擇相關設置,在source port里輸入5901,在Destination里輸入localhost:5901,按Add添加,如附圖二 4. 單擊左邊session,回到session設置,按save重新保存。按open即可登錄到伺服器。 5. 運行vnc-viewer (如果沒有,到這裡下載http://www.realvnc.com/download.html,只要一個 exe的文件就行),在Server里輸入localhost:1,見附圖三, 輸入口令后一個linux的桌面就會出現在windows里,並且是非常安全的,Cool 能玩到這步驟的都是我崇拜的對象。哈 VNC 問題集錦 1.VNC 是什麼? VNC有兩種定義:一種是軟體、一種是協議 VNC是 Virtual Network Computing 軟體是指是GNU public license下的符合VNC協議的共享軟體,.最開始是AT&T的英國實驗室 [現在這幫人成立了RealVNC公司] 開發的. 主要是讓計算機可以遠程控制另外一台計算機。現在很多公司在VNC的基礎上開發出了各種各樣的VNC. 能夠運行在各個操作系統上。 VNC協議。是指控制方和被控制計算機之間的通訊協議。VNC用的協議叫RFB .[很多人不知道吧] RFB 的協議在這裡。 http://realvnc.com/docs/rfbproto.pdf 2.VNC 的優點? 第一、VNC的最大優點就是跨平台。因為不同的操作系統的界面處理方法都不一樣,所以就有人開發了不同的VNC版本,因為都符合VNC協議,所以兼容性比較好。還有人做了Java版的客戶端,在能夠運行JVM的機器上都能運行客戶端。 [ 當然微軟/Uinx/Linux等也有自己的解決方案,如Terminal/PcAnywhere/Xceed等等。但是他們不開放代碼...] 第二、版本多,開放源代碼,每個人都可以不斷改進它。 [這是開放的好處] 第三、速度。速度還是挺快的,如果你的網路帶寬好的話。 3. VNC PK MS 終端 VNC : 不用Windows的賬戶/密碼。這樣對於一次性的用戶很方便。否則每次要在Windows裡面加用戶可是很不安全的阿。 Windows: 對於Windows Server, 可以多用戶登錄使用。VNC只能兩個人(控制和被控制的計算機)使用。 VNC: 可以讓控制和被控制的屏幕同時顯示、操作。這樣可以做Demo,共享交流等。Windows 沒這個功能吧! VNC的安裝與使用- - http://bangnet.blogdriver.com/bangnet/628595.html VNC的安裝與使用。 說明:文章內容比較簡單,獻給那些初學者作為參考。 文章分為兩部分,第一部分為VNC簡介,第二部分為VNC的安裝與使用。 文章為小弟結合書籍與小弟的實際操作總結出來的,如有錯誤與疏漏之處,還請指出。 fish_ys 2003.8.25 『VNC簡介』 網路遙控技術是指由一部計算機(主控端)去控制另一部計算機(被控端),而且當主控端在控制端時,就如同用戶親自坐在被控端前操作一樣,可以執行被控端的應用程序,及使用被控端的系統資源。 VNC(Virtual Network Computing)是一套由AT&T實驗室所開發的可操控遠程的計算機的軟體,其採用了GPL授權條款,任何人都可免費取得該軟體。VNC軟體主要由兩個部分組成:VNC server及VNC viewer。用戶需先將VNC server安裝在被控端的計算機上后,才能在主控端執行VNC viewer控制被控端。 (在windows中也由一套著名的網路遙控軟體??Symantec公司推出的pcAnywhere。 VNC server與VNC viewer支持多種操作系統,如Unix系列(Unix,Linux,Solaris等),windows及MacOS,因此可將VNC server 及VNC viewer分別安裝在不同的操作系統中進行控制。如果目前操作的主控端計算機沒有安裝VNC viewer,也可以通過一般的網頁瀏覽器來控制被控端。 整個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的安裝與使用』 本人的操作環境:被控端 Redhat8.0,主控端Windows XP。 1. 載VNC Server與VNC viewer. VNC Server下載地址:http://www.linuxeden.com/download/softdetail.php?softid=744 VNC viewer下載地址:http://download.pchome.net/php/dl.php?sid=2603 2.安裝。 rpm ?Uvh vnc-3.3.6-2.i386.rpm (如果是源代碼請看包里的說明) 安裝winvnc.exe 3.在Linux上啟動VNC Server 執行vncserver命令: [root@linux root]# vncserver You will require a password to access your desktops. Password: ----為了不想任何人都可以任意遙控此計算機。因此當第 Verify: ---1次啟動VNC server時,會要求設置網路遙控的密碼。 New 『X』 desktop is linux:1 ----一定要記住這一行稍後會用到。 Creating default startup script /root/.vnc/xstartup Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/linux:1.log (經上述步驟后,便已啟動了VNC Server。如果你想要更改VNC Server的密碼,只要執行vncpasswd命令即可。) 4.在Microsoft Windows上運行VNC Viewer 直接運行「vncviewer.exe」,系統會出現」Connection details」對話框。 在「Connection details」對話框中的「VNC server」文本框中輸入VNC Server的IP地址(或主機名及顯示裝置編號,(請看3。在Linux上啟動VNC server的這一行,New 『X』 desktop is linux:1 得到此信息),例如:192.168.0.1:1(冒號後面的1是執行VNC Server生成的顯示裝置編號),單擊「OK」按鈕后,VNC Server即會開始檢查所輸入的信息,若是信息錯誤,系統會出現「Failed to connect to server」的錯誤信息:若是信息正確,則會接著出現「VNC Authentication」對話框。 若是在「VNC Authentication」對話框中輸入的密碼正確,就可以成功地打開Linux的桌面窗口。 5. 從瀏覽器遠程遙控。 啟動VNC Server 后直接打開瀏覽器,在地址欄中輸入被控端的網址或IP地址,並在網址后加上「:5800+顯示編號」的埠號即可操控該計算機。 例如:http://192.168.01.:5801 (如果顯示編號為1,一般第一次設置的顯示編號都是1,就用5800+1=5801。) 6.FAQ A.為什麼連接后,不能顯示桌面,而只有一個Terminal窗口? 試著修改/root/.vnc/xstartup,把最後一行 twm& 改成 gnome-session& or kde&(據說KDE在目前的VNC Viewer上的表現不太穩定) B. 為什麼重新啟動VNC Server后,連接不上了? 因為重新啟動VNC Server時,系統會指定一個新的顯示編號,需使用此新的編號,否則就無法連接。 (以上只是本人遇到的一些問題,而且用VNC也不是很多,很不全面,還望多提寶貴意見) 為了使vncserver在每次啟動時保持不變的埠號 我在使用vnc 終於在wingdows端連接上redhat 了,可是看到的是xteam 的桌面,而我正在用的是kde 桌面。請教大蝦如何解決? VNCPASSWD 與系統的passwd 生成的密碼是同一個嗎?還是不同的。 或者說通過vnc訪問的遠程機器的密碼是否要與vnc伺服器的root 用戶 密碼一致。 謝了。 設置vncserver啟動變數: 為了使vncserver在每次啟動時保持不變的埠號(5901) 在/etc/rc.d/rc.local文件中添加命令: rm -f /tmp/.X11-unix/X* rm -f /.vnc/*.pid rm -f /.vnc/*.log 這樣,每次啟機,系統會先把上次非正常關機時留下的臨時文件刪除。 linux版vnc server的改進: linux上的vnc server內定的桌面管理環境是twm,實在是太簡陋了. 修改$HOME/.vnc/xstartup這個文件. 把所有內容的行前加上#,再在接尾部份加上: startkde & 你當然可用你喜好的桌面代替.我這是用kde來代替twm,速度會慢少少,但用起來方便不少. 注意要重新啟動vnc server. 修改/usr/bin/vncserver文件,把其中的相關行該為 $geometry 800X600; $depth 16; 這樣vncserver啟動時就是800X600 16t的桌面了。 另外VNCSERVER有自己單獨的密碼和ROOT的密碼是兩回事 首先感謝,我現在已經可以連接上redhat 的kde桌面了。 可是我的/usr/bin 下無vncserver 文件。 所以看起來,自比較小,尤其漢字變形。 請教vncserer 文件的功能實什麼,如何編寫。 互聯網正是個好東西,也正因為有了這麼多無私的奉獻。這裡的風景才如此動人 一般我們都是在linux主機上來操作的,如果有一天我在外地或這網路其他電腦上,剛好又要操作到linux主機。有很多方法,下面我介紹一種能用圖形和網頁形式的控制軟體就是vnc 了,vnc有win和linux版本的有兩個程序,一個是server端另一個是viewer端,被人控制的叫server端控制者叫viewer端。 安裝linux7.2版本時就默認安裝好了vnc軟體了。我們只要啟動它就好了。 在命令提示符輸入vncserver提示要輸入密碼,請輸入兩次密碼最好要複雜點的,不然密碼被破那就慘拉! 好了,vnc就已經開始運行了。 下來到網路其他客戶電腦上安裝好vnc viewer 端后運行它: 輸入你的 linux主機的ip地址和窗口號 如: 192.168.0.1:1完成後再輸入正確的密碼就可以進入了。 怎麼進入后看到的界面不是我的gonme界面呢?這個可以解決的。登陸linux主機編輯/$home/.vnc/xstartup把裡面所有的行前面都加上#號讓他們都失效自己再加上一行 gnome-session & 保存后在到客戶機上登陸一次就可以看到漂亮簡潔的gnome界面拉!其他操作就和linux主機里一樣。 你也可以在網路其他電腦里用ie瀏覽器來進入:在ie地址欄輸入: http://linux主機ip:5801也可以打開畫面輸入正確的密碼就進入linux主機。
[火星人
]
vnc在linux下的搭建 已經有1066 次圍觀
本文地址: http://coctec.com/docs/linux/show-post-202061.html