怎樣在CentOS 7.0上安裝和配置VNC伺服器

来源:http://www.cnblogs.com/h2zZhou/archive/2016/02/23/5209899.html
-Advertisement-
Play Games

這是一個關於怎樣在你的 CentOS 7 上安裝配置 VNC 服務的教程。當然這個教程也適合 RHEL 7 。在這個教程里,我們將學習什麼是 VNC 以及怎樣在 CentOS 7 上安裝配置 VNC 伺服器 。 我們都知道 這是一個關於怎樣在你的 CentOS 7 上安裝配置 VNC 服務的教程。當


這是一個關於怎樣在你的 CentOS 7 上安裝配置 VNC 服務的教程。當然這個教程也適合 RHEL 7 。在這個教程里,我們將學習什麼是 VNC 以及怎樣在 CentOS 7 上安裝配置 VNC 伺服器 。 我們都知道

 

這是一個關於怎樣在你的 CentOS 7 上安裝配置 VNC 服務的教程。當然這個教程也適合 RHEL 7 。在這個教程里,我們將學習什麼是 VNC 以及怎樣在 CentOS 7 上安裝配置 VNC 伺服器

我們都知道,作為一個系統管理員,大多數時間是通過網路管理伺服器的。在管理伺服器的過程中很少會用到圖形界面,多數情況下我們只是用 SSH 來完成我們的管理任務。在這篇文章里,我們將配置 VNC 來提供一個連接我們 CentOS 7 伺服器的方法。VNC 允許我們開啟一個遠程圖形會話來連接我們的伺服器,這樣我們就可以通過網路遠程訪問伺服器的圖形界面了。

VNC 伺服器是一個自由開源軟體,它可以讓用戶可以遠程訪問伺服器的桌面環境。另外連接 VNC 伺服器需要使用 VNC viewer 這個客戶端。

一些 VNC 伺服器的優點:

  • 遠程的圖形管理方式讓工作變得簡單方便。
  • 剪貼板可以在 CentOS 伺服器主機和 VNC 客戶端機器之間共用。
  • CentOS 伺服器上也可以安裝圖形工具,讓管理能力變得更強大。
  • 只要安裝了 VNC 客戶端,通過任何操作系統都可以管理 CentOS 伺服器了。
  • 比 ssh 圖形轉發和 RDP 連接更可靠。

那麼,讓我們開始安裝 VNC 伺服器之旅吧。我們需要按照下麵的步驟一步一步來搭建一個可用的 VNC。

首先,我們需要一個可用的桌面環境(X-Window),如果沒有的話要先安裝一個。

註意:以下命令必須以 root 許可權運行。要切換到 root ,請在終端下運行“sudo -s”,當然不包括雙引號(“”)

1. 安裝 X-Window

首先我們需要安裝 X-Window,在終端中運行下麵的命令,安裝會花費一點時間。

# yum check-update
# yum groupinstall "X Window System"

#yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts

### 設置預設啟動圖形界面
# unlink /etc/systemd/system/default.target
# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

# reboot

在伺服器重啟之後,我們就有了一個工作著的 CentOS 7 桌面環境了。

現在,我們要在伺服器上安裝 VNC 伺服器了。
 

2. 安裝 VNC 伺服器

現在要在我們的 CentOS 7 上安裝 VNC 伺服器了。我們需要執行下麵的命令。

# yum install tigervnc-server -y

3. 配置 VNC

然後,我們需要在 /etc/systemd/system/ 目錄里創建一個配置文件。我們可以將/lib/systemd/sytem/[email protected] 拷貝一份配置文件範例過來。

# cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

接著我們用自己最喜歡的編輯器(這兒我們用的 nano )打開 /etc/systemd/system/vncserver@:1.service ,找到下麵這幾行,用自己的用戶名替換掉 。舉例來說,我的用戶名是 linoxide 所以我用 linoxide 來替換掉 :

ExecStart=/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid

替換成

ExecStart=/sbin/runuser -l linoxide -c "/usr/bin/vncserver %i"
PIDFile=/home/linoxide/.vnc/%H%i.pid

如果是 root 用戶則

ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid

好了,下麵重啟 systemd 。

# systemctl daemon-reload

最後還要設置一下用戶的 VNC 密碼。要設置某個用戶的密碼,必須要有能通過 sudo 切換到用戶的許可權,這裡我用 linoxide 的許可權,執行“su linoxide”就可以了。

# su linoxide
$ sudo vncpasswd

確保你輸入的密碼多於6個字元

4. 開啟服務

用下麵的命令(永久地)開啟服務:

$ sudo systemctl enable vncserver@:1.service

啟動服務。

$ sudo systemctl start vncserver@:1.service

5. 防火牆設置

我們需要配置防火牆來讓 VNC 服務正常工作。

$ sudo firewall-cmd --permanent --add-service vnc-server
$ sudo systemctl restart firewalld.service

現在就可以用 IP 和埠號(LCTT 譯註:例如 192.168.1.1:1 ,這裡的埠不是伺服器的埠,而是視 VNC 連接數的多少從1開始排序)來連接 VNC 伺服器了。

6. 用 VNC 客戶端連接伺服器

好了,現在已經完成了 VNC 伺服器的安裝了。要使用 VNC 連接伺服器,我們還需要一個在本地電腦上安裝的僅供連接遠程電腦使用的 VNC 客戶端。

你可以用像 Tightvnc viewer 和 Realvnc viewer 的客戶端來連接到伺服器。

要用更多的用戶連接,需要創建配置文件和埠,請回到第3步,添加一個新的用戶和埠。你需要創建vncserver@:2.service 並替換配置文件里的用戶名和之後步驟里相應的文件名、埠號。請確保你登錄 VNC 伺服器用的是你之前配置 VNC 密碼的時候使用的那個用戶名

VNC 服務本身使用的是5900埠。鑒於有不同的用戶使用 VNC ,每個人的連接都會獲得不同的埠。配置文件名裡面的數字告訴 VNC 伺服器把服務運行在5900的子埠上。在我們這個例子里,第一個 VNC 服務會運行在5901(5900 + 1)埠上,之後的依次增加,運行在5900 + x 號埠上。其中 x 是指之後用戶的配置文件名vncserver@:x.service 裡面的 x 。

在建立連接之前,我們需要知道伺服器的 IP 地址和埠。IP 地址是一臺電腦在網路中的獨特的識別號碼。我的伺服器的 IP 地址是96.126.120.92,VNC 用戶埠是1。

執行下麵的命令可以獲得伺服器的公網 IP 地址(LCTT 譯註:如果你的伺服器放在內網或使用動態地址的話,可以這樣獲得其公網 IP 地址)。

# curl -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'

總結

好了,現在我們已經在運行 CentOS 7 / RHEL 7 的伺服器上安裝配置好了 VNC 伺服器。VNC 是自由開源軟體中最簡單的一種能實現遠程式控制制伺服器的工具,也是一款優秀的 Teamviewer Remote Access 替代品。VNC 允許一個安裝了 VNC 客戶端的用戶遠程式控制制一臺安裝了 VNC 服務的伺服器。下麵還有一些經常使用的相關命令。好好玩!

其他命令:

  • 關閉 VNC 服務。

    # systemctl stop vncserver@:1.service
  • 禁止 VNC 服務開機啟動。

    # systemctl disable vncserver@:1.service
  • 關閉防火牆。

    # systemctl stop firewalld.service
  •  


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、本機DNS配置 參考:http://blog.sina.com.cn/s/blog_68d6e9550100k3b7.html 二、DNS伺服器搭建 參考:http://blog.csdn.net/hongweigg/article/details/7189175
  • <!DOCTYPE html><html><head><meta charset="utf-8"/><title>NEC:更好的CSS方案</title><meta name="keywords" content=""/><meta name="description" content=""/><m
  • mkdir dir1 創建一個叫做dir1的目錄 pwd 顯示工作路徑 cat filename 顯示文件信息
  • 1.插入U盤,磁碟工具,格式化U盤為Mac OS X拓展 (日誌式); 2.去網站搜索recovery disk assistant,此文件大約1.1M,直接打開使用它製作啟動盤,進度條完畢就完成了。 (這個文件我下載好了,在spotlit裡面搜索recoverydiskassistant就找到了)
  • cd -> 變換路徑 //文件一般存在/var/路徑下,var為可修改存儲盤 ls -> 列出所有隱藏文件與相關文件的屬性 #ls -al #ls -al -rwxrwxrwx 1 root root 293 2016-02-23 test 文件屬性 連接數 文件擁有者 文件所屬用戶組 大小 時間
  • 一、什麼是SSH? 簡單說,SSH是一種網路協議,用於電腦之間的加密登錄。 如果一個用戶從本地電腦,使用SSH協議登錄另一臺遠程電腦,我們就可以認為,這種登錄是安全的,即使被中途截獲,密碼也不會泄露。 最早的時候,互聯網通信都是明文通信,一旦被截獲,內容就暴露無疑。1995年,芬蘭學者Tatu
  • 1. 先編輯一個解壓腳本ins.sh 1 #!/bin/bash 2 preline=10 3 line=`wc -l $0|awk '{print $1}'` 4 line=`expr $line - $preline` 5 tail -n $line $0 |tar xz -C ./ 6 #do
  • 安裝 Centos 7後, 習慣性的安裝 Xmanager 3或4, 都不能正常工作, 無奈之下開始安裝 VNCServer。 (個人習慣使用Xmanager, 因為不需要安裝,只要配置一下就能用, 而且一直很穩定) 為了節省以後安裝 vncserver 的時間,寫這篇文章作備忘用 安裝/配置: 使
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...