要點詳解:
VNC?是指Virtual Network Console?舵鳞,意為虛擬網(wǎng)絡(luò)控制臺,是一款由歐洲AT&T研究實驗室開發(fā)的開源軟件琢蛤,基于UNIX和LINUX操作系統(tǒng)蜓堕。 其包含server?和?viewer兩個部分,即服務(wù)端和客戶端博其。VNC服務(wù)端能通過ghome等圖形化桌面組件將系統(tǒng)界面遠程可視化并通過X protocol?要求服務(wù)端將畫面顯示控制權(quán)交由vncserver負責(zé),?再通過socket和?simplehttp?將桌面環(huán)境遠程發(fā)布到?viewer端,實現(xiàn)遠程操作.
noVNC則是一款github上開源的基于瀏覽器的類vncviewer,使用node.js + python開發(fā)套才。他能解決過去vncviewer需要在不同系統(tǒng)安裝客戶端的復(fù)雜操作并解決跨系統(tǒng)訪問問題。
本文要解決的問題 :
1?如何部署VNCserver?服務(wù)?
2?如何部署?noVNC服務(wù)慕淡?
3 noVNC有哪些弊端
1 VNCserver的部署.
linux系統(tǒng)下背伴,以ubuntu和centos為例,其官方源均自帶vncserver.分別使用apt和yum安裝即可.
目前比較好的兩個版本是?tightvncserver?和?vnc4server?。兩者之前的command幾乎一致傻寂。
Vnc啟動?:?vncserver :1 -geometry 1902x1080 -name student
Vnc?停止:?vncserver -kill :1
2?如何部署noVNC
首先到github下載源碼?git clone git://github.com/kanaka/noVNC
由于noVNC依賴于python的websockify模塊,所以需要提前安裝這個模塊息尺。你可以安裝python環(huán)境后通過pip安裝他,也可以通過apt直接在系統(tǒng)安裝該模塊崎逃。如果都不行的話掷倔,啟動noVNC的時候系統(tǒng)也會自動下載最新版的websockify。
另外websockify需要依賴于openssl證書,所以要通過如下命令生成證書:
openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
生成后的證書?self.pem需要放到noVNC目錄下,當(dāng)noVNC啟動時个绍,websockify將自動裝載證書勒葱。
當(dāng)服務(wù)端已啟動vncserver的情況下(默認?5901端口),此時通過命令:
./utils/launch.sh --vnc localhost:5901
即可啟動noVNC服務(wù),然后通過瀏覽器訪問:
http:/localhost:6080/vnc.html?host=localhost&port=6080即可通過瀏覽器操作server端的桌面。
如果顯示的是灰色界面巴柿,需要安裝圖形操作界面,以ubuntu為例子:
sudo apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal,
安裝完成之后需要更改~/.vnc/xstartup文件,添加如下內(nèi)容:
# vim ~/.vnc/xstartup
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
gnome-panel &
gnmoe-settings-daemon &
metacity &
nautilus &
gnome-terminal &
之后重啟vncserver就OK了
如果是centos出現(xiàn)藍屏凛虽,則
yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
若提示
fwupdate-efi 與 grub2-common 沖突
這是由于grub2-common包的沖突,所以要將該包使用yum update grub2-commonn命令進行更新广恢。
解決方法:
yum update grub2-common
yum install fwupdate-efi
部分系統(tǒng)的5901端口默認是禁止的,可將其加入安全端口或者部署到非5901端口:
sudo iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
3 noVNC有哪些弊端
1?帶寬高
2?僅支持chrome