1. 程式人生 > >Windows下使用VNC連線CentOS7遠端桌面

Windows下使用VNC連線CentOS7遠端桌面

在實際維護遠端linux伺服器主機時,有時候純命令列模式可能無法滿足我們的需要,這時候需要使用遠端主機的GUI模式,即能看到伺服器的桌面,一般會使用兩種方式:Xmanager或者VNC。我一開始使用的是Xmanager,版本是Xmanager5 Enterprise,但是在連線伺服器時,可以連線上(已經看到主機名),卻無法開啟桌面,折騰了很久終於放棄,選擇了VNC,相比之下方便很多。下面就自己的實踐經驗小結下,需要的朋友可以看看。
說明下我這裡CentOS主機已經安裝了Gohome桌面,沒有安裝的請安裝一個gui桌面。

一、Linux主機安裝VNC服務

1、安裝vnc-server

VNC分為服務端和客戶端,linux伺服器主機需要安裝vncserver,centos7下一般使用tigervnc。
root下執行命令:

#yum install -y tigervnc-server

安裝完畢後需要配置。

2、配置vnc-server

進入目錄

#cd /lib/systemd/system
#ls

我們會看到有個service叫做[email protected],這就是我們需要的vnc服務。但是需要對它進行配置才可以使用。假設我們當前為root使用者配置遠端桌面,配置流程如下:

首先,複製該service,命名為[email protected]

:1.service,

#cp vncserver@.service [email protected]:1.service

然後修改[email protected]:1.service

#vi vncserver@:1.service

看到如下文字:

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’
ExecStart=/sbin/runuser -l < User> -c “/usr/bin/vncserver %i ”
PIDFile=/home/< User>/.vnc/%H%i.pid
ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

[Install]
WantedBy=multi-user.target

這裡需要且只需要做一種替換:將< User>替換為需要配置的使用者。注意因為root的home目錄就是/root/,而不是/home/root/,所以替換後文本如下:

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’
ExecStart=/sbin/runuser -l root -c “/usr/bin/vncserver %i ”
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

[Install]
WantedBy=multi-user.target

如果是非root使用者,例如使用者admin,PIDFile處應該是:

ExecStart=/sbin/runuser -l admin -c “/usr/bin/vncserver %i ”
PIDFile=/home/admin/.vnc/%H%i.pid

最後Esc+:wq儲存退出。

3、啟動vnc-server

在剛才的配置檔案中,有這樣一段說明:

# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/[email protected]:.service
# 2. Edit and vncserver parameters appropriately
# (“runuser -l -c /usr/bin/vncserver %i -arg1 -arg2”)
# 3. Run systemctl daemon-reload
# 4. Run `systemctl enable [email protected]:.service

即配置完後,還需執行

#systemctl daemon-reload
#systemctl enable [email protected]:1.service

然後開啟vnc服務

#systemctl start vncserver@:1.service

檢視啟動是否成功

#systemctl status vncserver@:1.service

如果現實active即表示開啟成功。下面設定下vnc連線密碼,
執行

#vncpassword

提示輸入密碼並確認,這是供遠端連線時驗證用的,自己設定一下即可。配置好以後可以重啟下vnc服務

#systemctl restart vncserver@:1.service

4、配置防火牆

vnc服務雖然開啟了,但是如果遠端客戶端需要連線,還需要為防火牆增加配置以開放埠。一般vnc服務是以590+x作為訪問埠,x為配置的[email protected]:x,例如此處的[email protected]:1.service,則埠是5901。
執行命令

#vi /etc/sysconfig/iptables

-A INPUT -p tcp -m state –state NEW -m tcp –dport 22 -j ACCEPT

下方新增配置

-A INPUT -p tcp -m state –state NEW -m tcp –dport 5901 -j ACCEPT

然後儲存退出,重啟防火牆。到這裡基本的vnc服務端配置就結束了。

二、客戶端遠端連線

配置好了服務端的vnc服務後,遠端就可以連線了。這裡使用的是win7下連線,客戶端使用的是tigervnc-1.5.0,百度下一般都有,下載後直接安裝,安裝過程中可以去掉作為服務端的勾選,不過沒關係。之後進入安裝目錄,找到vncviewer.exe,雙擊執行,輸入ip和埠號,點選connection即可,然後按照提示輸入之前配置的訪問密碼,回車,即可看到遠端的linux主機桌面。

三、開啟多個vncserver

有時候我們可能需要不止一個使用者的桌面環境,比如我在遠端安裝oracle時,還需要一個oracle使用者的桌面環境,而之前僅僅配置了root使用者的,下面介紹下配置多使用者的vncserver。配置思路很簡單,就是配置多個[email protected]:n.service。

1、複製[email protected]

假設我們的使用者已經建立好,這裡以admin為例。首先以root使用者登入,在

#cd /lib/systemd/system

目錄下,和前述一樣,拷貝配置檔案,不過這裡不是:1,而是:2,數字可以自己設定,一般遞增。

#cp vncserver@.service [email protected]:2.service

然後修改[email protected]:2.service

#vi vncserver@:2.service

修改配置

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’
ExecStart=/sbin/runuser -l admin -c “/usr/bin/vncserver %i ”
PIDFile=/home/admin/.vnc/%H%i.pid
ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

[Install]
WantedBy=multi-user.target

儲存退出。然後按照配置檔案提示,執行

#systemctl daemon-reload
#systemctl enable [email protected]:2.service

2、修改vnc登入驗證密碼

執行完畢後,切換到admin賬戶,執行

$vncserver :2

會要求輸入驗證密碼

You will require a password to access your desktops.

Password:
Verify:
xauth: file /home/admin/.Xauthority does not exist

New ‘localhost.localdomain:2 (admin)’ desktop is localhost.localdomain:2

Creating default startup script /home/admin/.vnc/xstartup
Starting applications specified in /home/admin/.vnc/xstartup
Log file is /home/admin/.vnc/localhost.localdomain:2.log

3、啟動服務

之後切換回root,執行

#systemctl deamon-reload
#systemctl start [email protected]:2.service

這時候提示啟動不成功,執行命令

#vncserver :2

提示已經有一個vncserver as :2 running了,這時候我們先要殺掉這個程序,執行命令

#vncserver -kill :2

但一般沒有用,那麼我們

# ps -ef | grep vnc

檢視vncserver :2的程序id,如pid為1311,則執行

#kill -9 1311

然後再執行

#systemctl start vncserver@:2.service

還是報錯,檢視日誌,

#journalctl -xn

提示需要刪除/tmp/.X2-lock
執行

#rm /tmp/.X2-lock

再次啟動

#systemctl start vncserver@:2.service

還是報錯,檢視日誌,提示需要刪除/tmp/.X11-unix/X2
執行

#rm /tmp/.X11-unix/X2

再次啟動

#systemctl start vncserver@:2.service

終於不報錯了,然後檢視狀態

#systemctl status vncserver@:2.service

發現已經啟動,則完成。之後注意不要忘了如前述配置防火牆。

到此為止就結束了所有的配置,在實際啟動過程中可能會遇到各種各樣的問題,大家只要靜下心來檢視日誌,一般都能解決。有錯誤的地方,還望指正。

相關推薦

Windows使用VNC連線CentOS7遠端桌面

在實際維護遠端linux伺服器主機時,有時候純命令列模式可能無法滿足我們的需要,這時候需要使用遠端主機的GUI模式,即能看到伺服器的桌面,一般會使用兩種方式:Xmanager或者VNC。我一開始使用的是Xmanager,版本是Xmanager5 Enterpri

Win10使用VNC連線Centos7遠端桌面

一、安裝VNC Viewer 1.首先win10下載安裝VNC VIEWER 或者直接下載綠色版 2.linux系統安裝vnc: 檢查linux是否安裝vnc:rpm -q tigervnc tigervnc-server 3.以root使用者執行以下命令來安裝vncserver; #yu

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redhat 7)

您多久訪問一次Linux桌面? 您使用什麼工具來訪問遠端桌面? Xrdp是一個開源工具,允許使用者通過Windows RDP訪問Linux遠端桌面。 除了Windows RDP之外,xrdp工具還接受來自其他RDP客戶端的連線,如FreeRDP,rdesktop和NeutrinoRDP。 Xrdp現在支援T

windowsputty 連線linux遠端管理

一:PUtty介紹 PuTTY 的官方網站:http://www.chiark.greenend.org.uk/~sgtatham/putty/,截止到 2007年6月,釋出的最高穩定版本是 0.6。 PuTTY 是一個跨平臺的遠端登入工具,包含了一組程式,包括:    

Windows使用VNC連線linux桌面

1、安裝包[[email protected] ~]# rpm -qa | grep vnc-servervnc-server-4.1.2-9.el52、 設定VNC桌面我們要為有權可以登入的使用者設定登入桌面,修改配置檔案/etc/sysconfig/vncservers :VNCSERVERS=

樹莓派3B 安裝系統(無需顯示器,針對raspbian-stretch版,包含SSH連線以及遠端桌面/無需VNC

首先需要準備: 1:SDFormatter     2:Win32DiskImager 3:SD卡    注:大於8G 4:官方系統 raspbian-stretch.img  5:Putty 第一步: SD卡利用讀卡器連上電腦,用SDFormatter格式化SD卡,設定

windows mongodb 連線,備份,還原遠端伺服器上的資料庫(在cmd命令視窗實現)

1. Windows下遠端連線伺服器上的MongoDB資料庫 使用的是mongo命令,如果安裝mongodb時配置了環境變數,可以直接快捷鍵windows+R開啟cmd。 管理員身份cmd執行如下語句:      mongo -h ip:埠/資料庫名 -u user

windows如何踢掉遠端連線的使用者

windows的遠端桌面很方便,不過也有比較麻煩和頭疼的地方。遠端桌面連線最多同時只能2個人在上面。而且如果不是正常登出推出的話,經常會掛死在上面。這個時候需要連線進去的人死活就連線不上了。以前遇到這種問題我只會最笨的一招,reboot。這樣會中斷服務,還有很大的風險。現在剛學會了一招,用commands方式

GHOST版本的Windows xp sp3系統,遠端桌面連線不上,“此計算機無法連線遠端計算機”

3389埠已經開啟(相關聯的三個服務程式都已經正常執行)。 1.  發現遠端機器的Telnet服務沒有開啟,開啟服務。 結果,問題依舊。 2. ping 192.168.2.201,OK telnet 192.168.2.201 3389,失敗 為什麼沒法訪問遠端的338

Windows Server 2008 R2修改遠端桌面連線

  第一步:開啟遠端桌面:   計算機---屬性---遠端設定---勾選"允許執行任意版本遠端桌面的計算機連線(較不安全)"   第二步:設定遠端桌面連線最大數量   控制面板-->管理工具-->遠端桌面服務-->遠端桌面會話主機設定-->去掉"限制每個使用者只能進行一個會話"勾選

Windows遠端連線Ubuntu (遠端桌面和XDMCP)

從RHEL/CentOS轉過來,幾乎所有的編碼都在windows下,不習慣原生linux開發。總結了遠端連線的兩種方式,一種用Windows自帶的rdp協議,另外一種用xdmcp協議 XRDP 就是用Windows自帶的遠端桌面完成連線(mstsc.exe),原文在14.04,16.04上用的,但是我在16

Windows Server 2008 R2 多使用者實現遠端連線登入 遠端桌面服務配置和授權啟用

日常工作中,經常需要遠端連線到伺服器上,然而預設的伺服器系統同時連線的最大連線數只有2個。若第三個使用者登入,就會出現以下問題: 那麼該如何解決呢? 一、遠端桌面服務安裝和配置 伺服器管理器------角色-----新增角色:選擇“遠端桌面服務”,下一步 選擇角色服務:

Windowseclipse連線遠端Hadoop+Hbase+zookeeper

1.將伺服器端hadoop和hbase的配置檔案拷貝到windows下並匯入eclipse工程裡, 不用修改 2.將hadoop和hbase壓縮包解壓到C:\hadoop-2.7.3和C:\hbase-1.2.6,建立環境變數HADOOP_HOME,路徑為hadoop安

windows設定mysql允許遠端連線

建議只在開發的時候開啟 就是開啟mysql表,設定裡面的user表host 預設是localhost只允許本地訪問 可以改成指定ip或直接改成%允許所有的遠端訪問 然後 cmdnet stop mysqlnet start mysql重啟mysql重新載入許可權前提MYSQL

windows下同網路段連線linux遠端桌面

yum install xrdp yum install tigervnc-server service xrdp start (Ubuntu 命令是:sudo apt-get install xrdp) 然後在windows下mstsc.exe,輸入使用者名稱以及

VNC Server連線linux遠端桌面

原文地址:http://blog.csdn.net/chenvsa/article/details/7013760 其中Vino-Server是Ubuntu自帶的遠端桌面伺服器,也就是在系統(System) —> 首選項(Preferences) —> 遠端桌面

Windows 制作CentOS7安裝U盤

big 成功 raw 屬於 ror 方式 entos clas mage 本文屬於另類的U盤制作方法(更多U盤安裝見U盤安裝CentOS ),如何安裝CentOS,請參考《安裝指南》 以下列出了,完整的制作步驟: 1、下載安裝鏡像 選擇一個合適的鏡像網站,比如網易的。

Windows蘋果安卓手機遠端桌面客戶端推薦

  適用於:Windows 10、Windows 8.1、Windows Server 2012 R2、Windows Server 2016 最近公司電腦從Windows7升級到了Windows10,然後看到有新版本的遠端桌面客戶端,以前Windows一直用到最多的是mstsc這個! 你

Windows server 2003/2008更改遠端桌面埠指令碼

文章原始地址: http://feotech.com/?p=118 將以下程式碼儲存為bat指令碼檔案,並執行bat指令碼檔案.根據提示輸入新的埠號後重啟系統,即可完成修改遠端連線埠號. @echo off color 0a title @@ 修改Windows XP/2003/20

windows可用連線調節及timewait調優

windows下可用連線調節及time_wait調優 2016年11月6日 admin發表評論閱讀評論 朋友公司的產品執行在windows+nginx+tomcat平臺,發現連線接稍微一大,訪問就有問題。在主機上通過netstat進行檢視時,也發現有大量time_wait的情況 。在linu