CentOS 6下部署VNC伺服器

VNC簡介:

VNC是Linux/UNIX下優秀的遠端桌面控制軟體,由客戶端(vncviewer)和服務端(vncserver)兩部分組成。

安裝軟體包:

[root@localhost ~]# yum install -y tigervnc
[root@localhost ~]# yum install -y tigervnc-server

配置前的準備工作:

正式配置VNC服務前,先新增幾個系統賬號用於測試。

[root@localhost ~]# useradd user1
[root@localhost ~]# useradd user2
[root@localhost ~]# useradd user3

可以不用設定密碼,當然,你想設定也可以。

服務配置:

編輯VNC主配置檔案。

[root@localhost ~]# vim /etc/sysconfig/vncservers

在檔案末尾找如下兩行。

# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

複製一份,或者直接去掉這兩行前面的註釋也可以,修改為如下形式。

VNCSERVERS="1:user1 2:user2"
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -localhost"
VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

其中VNCSERVERS選項用以指定允許遠端登入的使用者名稱及該使用者的編號,VNCSERVERARGS選項後面接使用者編號,其後定義的是該使用者遠端登入的引數。

VNCSERVERARGS的預設引數有如下幾個:

-geometry 桌面解析度,預設1024x768;
-nohttpd 不監聽HTTP埠(58xx埠);
-nolisten tcp 不監聽X埠(60xx埠);
-localhost 只允許從本機訪問;
-AlwaysShared 預設只同時允許一個vncviewer連線,此引數允許同時連多個vncviewer;
-SecurityTypes None 登入不需要密碼認證VncAuth預設值,要密碼認證。

啟動服務:

先切換到各個賬戶下為他們分別配置VNC密碼,此密碼可以與使用者系統賬戶密碼不同。(嘗試過在root使用者下為他們統一配置密碼,發現行不通。。。)

[root@localhost ~]# su user1
[user1@localhost root]$ vncpasswd
Password:              #要求輸入密碼
Verify:                #要求再次輸入密碼

user2使用者也要按照上面的方法配置VNC密碼。

最後切換回root使用者,在保證防火牆已關閉的情況下統一開啟VNC服務,此時VNC程序會自動生成使用者的VNC服務配置檔案及日誌檔案到使用者家目錄的.vnc/下。

[root@localhost ~]# service vncserver start
正在啟動 VNC 伺服器:
1:user1
New 'localhost.localdomain:1 (user1)' desktop is localhost.localdomain:1
Starting applications specified in /home/user1/.vnc/xstartup
Log file is /home/user1/.vnc/localhost.localdomain:1.log
2:user2
New 'localhost.localdomain:2 (user2)' desktop is localhost.localdomain:2
Starting applications specified in /home/user2/.vnc/xstartup
Log file is /home/user2/.vnc/localhost.localdomain:2.log

注意第四行,其中的desktop is localhost.localdomain:1是告訴你,user1的VNC程序號是1,訪問此VNC桌面的方法就是IP:1。而user2的程序號則是2,觀察倒數第四行(算上空行~)。

如果你只想為某一使用者啟用VNC程序,可以切換到該使用者的身份上,執行vncserver命令。注:使用此方法啟用VNC服務後,在root使用者下就不能再使用service命令來關閉VNC伺服器了,必須使用kill -9暴力殺死使用者的VNC伺服器程序。

[root@localhost ~]# su user1
[user1@localhost root]$ vncserver
New 'localhost.localdomain:3 (user1)' desktop is localhost.localdomain:3
Starting applications specified in /home/user1/.vnc/xstartup
Log file is /home/user1/.vnc/localhost.localdomain:3.log

為使用者指定預設桌面環境:

編輯user1的VNC配置檔案。

[root@localhost ~]# vim /home/user1/.vnc/xstartup

轉至檔案末尾,找到下面一行。

twm &                   #指定預設使用文字介面

將其修改為以下任意一種形式,根據自己的需求選擇,不要把兩個都加上,如果你那麼幹了,那我只能感慨你是個大傻瓜了。

startkde &              #指定預設使用KDE桌面環境
gnome-session &         #指定預設使用Gnome桌面環境

使用客戶端連線VNC伺服器:

可以使用Windows下的VNC客戶端,本實驗中我在另一臺安裝有Desktop的CentOS6.5上使用客戶端連線VNC。

安裝VNC客戶端,並連線VNC伺服器,這裡我連線user2的VNC服務。

[root@localhost ~]# yum install -y vnc
[root@localhost ~]# vncviewer 192.168.1.101:2

之後會彈出一個視窗要求你輸入VNC的密碼。

輸入後按回車鍵就可以連線VNC桌面啦!

我這裡出現亂碼不是VNC配置的問題,而是因為安裝系統的時候選擇了系統語言為中文,但Desktop下卻沒有安裝中文字型。上圖中,gnmoe桌面的系統工具提醒我安裝zh-cn字型,那我就安裝一下吧!可以看到,安裝後立刻正常了~

Leave a Reply

Your email address will not be published. Required fields are marked *

Captcha Code