1. 程式人生 > >Linux實例安裝VNC Server實現圖形化訪問

Linux實例安裝VNC Server實現圖形化訪問

min 替換 設置密碼 bnf 阿裏雲 gpo city -a isa

原文網址:

https://help.aliyun.com/knowledge_detail/41530.html?spm=5176.8208715.110.d41530.4c184ae8mlC7Yy

https://help.aliyun.com/knowledge_detail/41181.html?spm=5176.8208715.110.11.4c184ae8mlC7Yy

前提條件

您已經在本地安裝了VNC連接工具,比如 TightVNC Viewer。

在CentOS 6.8上安裝VNC Server

這部分以在CentOS 6.8上安裝TigerVNC Server和GNOME為例,說明如何安裝配置VNC Server。

  1. 遠程連接Linux實例。

  2. 運行以下命令安裝GNOME桌面。

    1. yum groupinstall GNOME Desktop Environment -y

    安裝需要較長時間,請您耐心等待。

  3. 運行以下命令安裝VNC Server。

    1. yum install -y tigervnc-server
  4. 運行以下命令將VNC Server配置為開機自動啟動。

    1. chkconfig --level 345 vncserver on
  5. 運行以下命令啟動VNC Server,並按界面提示設置VNC連接密碼。

    1. vncserver

    註意
    首次啟動會要求設置密碼,以後您可以運行vncpasswd

    命令修改連接密碼。

  6. 按以下步驟修改 /root/.vnc/xstartup 文件,配置使用GNOME桌面:

    1. 運行命令 vim /root/.vnc/xstartup
    2. i 鍵進入編輯模式。
    3. 在文件最後一行,註釋掉 twm &,並添加一行 gnome-session &
    4. Esc 鍵退出編輯模式,再輸入 :wq 保存並退出。
  7. 按以下步驟在 /etc/sysconfig/vncservers 文件中配置監聽端口和環境參數:

    1. 運行命令 vim /etc/sysconfig/vncservers
    2. i 鍵進入編輯模式。
    3. 添加以下內容:
      1. VNCSERVERS="1:root"
      2. VNCSERVERARGS[1]="-geometry 1200x800"
    4. Esc 鍵退出編輯模式,再輸入 :wq 保存並退出。
  8. (可選)運行不同的命令完成其他設置:

    • 運行以下命令允許root賬號訪問圖形界面。

      1. sed -i ‘s/.!= root./#&/‘ /etc/pam.d/gdm
    • 如果報以下錯誤,運行命令 dbus-uuidgen >/var/lib/dbus/machine-id 生成新的machine-id。

      1. D-Bus library appears to be incorrectly set up; failed to read
      2. machine uuid: Failed to open "/var/lib/dbus/machine-id": No such file or directory
    • ECS不允許開啟SELinux服務和NetworkManager服務。如果您開啟了這些服務,運行以下命令修改配置。

      1. vi /etc/selinux/config # 檢查SELinux服務。如果SELINUX對應的值不是disabled,必須改為disabled。
      2. chkconfig --del NetworkManager # 關閉NetworkManager服務
  9. 運行以下命令重啟VNC Server,使配置生效。

    1. service vncserver restart
  10. 運行命令 ps -ef | grep vnc 確認服務是否已經啟動。如果返回以下類似結果,說明服務已經啟動。
    技術分享圖片

    由返回結果可知,服務使用了TCP 5901端口。

  11. (可選)如果您的實例上開啟了防火墻,需要設置防火墻允許VNC訪問。

    舉例
    以iptables為例,您需要做如下設置:

    1. iptables -A INPUT -p tcp --dport 5901 -j ACCEPT #放行TCP 5901端口
    2. service iptables save # 保存規則
  12. 登錄 ECS管理控制臺,在實例所在安全組中 添加安全組規則,放行TCP 5901端口。

  13. 在本地機器的VNC Viewer上連接實例。具體操作步驟,請參考 在 Linux 實例上自動安裝並運行 VNC Server 的描述。如果出現如下圖所示的界面,說明您已經成功安裝VNC Server實現了圖形化訪問。
    技術分享圖片

在CentOS 7.2上安裝 VNC Server

這部分以在CentOS 7.2上安裝TigerVNC Server和GNOME為例,說明如何安裝配置VNC Server。

  1. 遠程連接Linux實例。

  2. 運行以下命令安裝GNOME桌面。

    1. yum groupinstall GNOME Desktop Environment -y

    安裝需要較長時間。

  3. 運行以下命令安裝VNC Server。

    1. yum install tigervnc-server -y
  4. 按以下步驟修改VNC Server配置文件,設置用戶名(如本示例中的root):

    1. 運行命令vim /lib/systemd/system/[email protected]
    2. i鍵進入編輯模式。
    3. User=<User>ExecStartPIDFile的內容替換為以下內容。
      1. User=root
      2. # Clean any existing files in /tmp/.X11-unix environment
      3. ExecStartPre=-/usr/bin/vncserver -kill %i
      4. ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
      5. PIDFile=/root/.vnc/%H%i.pid
      技術分享圖片
    4. Esc鍵退出編輯模式,再輸入:wq保存並退出。
  5. 運行以下命令,將 /lib/systemd/system/[email protected] 改為 /lib/systemd/system/vncserver@:1.service。

    1. mv /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service
  6. 運行以下命令重啟systemd。

    1. systemctl daemon-reload
  7. 運行命令 vncpasswd,並按界面提示設置VNC Server連接密碼。

  8. (可選)ECS不允許開啟SELinux服務和NetworkManager服務。如果您開啟了這些服務,運行以下命令修改配置。

    1. vi /etc/selinux/config # 檢查SELinux服務。如果SELINUX對應的值不是disabled,必須改為disabled。
    2. chkconfig --del NetworkManager # 關閉NetworkManager服務
  9. 運行以下命令設置開機啟動VNC Server。

    1. systemctl enable vncserver@:1.service
  10. 運行以下命令啟動VNC Server。

    1. systemctl start vncserver@:1.service
  11. 運行命令 ps -ef | grep vnc 確認服務是否已經啟動。如果返回以下類似結果,說明服務已經啟動。
    技術分享圖片

    由返回結果可知,服務使用了TCP 5901端口。

  12. (可選)如果您的實例上開啟了防火墻,需要設置防火墻允許VNC訪問。

    舉例
    以firewalld為例,您需要做如下設置:

    1. firewall-cmd --permanent --add-service vnc-server #允許VNC訪問
    2. systemctl restart firewalld.service # 重啟firewalld
  13. 登錄 ECS管理控制臺,在實例所在安全組中 添加安全組規則,放行TCP 5901端口。

  14. 在本地機的VNC Viewer上連接實例。具體操作步驟,請參考 在 Linux 實例上自動安裝並運行 VNC Server 的描述。如果出現如下圖所示的界面,說明您已經成功安裝VNC Server實現了圖形化訪問。
    技術分享圖片

在Ubuntu 14.04上安裝VNC Server

這部分以在Ubuntu 14.04上安裝vnc4server和GNOME為例,說明如何安裝配置VNC Server。

  1. 遠程連接Linux實例。

  2. 運行命令 apt-get update 更新源。

  3. 運行以下命令安裝vnc4server。

    1. apt-get install vnc4server -y
  4. 運行以下命令開啟VNC服務並按界面提示設置連接密碼。

    1. vnc4server

    註意
    首次啟動會要求設置密碼,以後您可以使用vncpasswd修改連接密碼。

    如果返回結果裏出現類似下圖所示的New ‘:1 (root)‘ desktop is :1 (代表主機名),表示vnc4server啟動成功。程序會自動在當前用戶(本示例中為root)主目錄下產生一個.vnc目錄。
    技術分享圖片

  5. 運行命令 ps -ef | grep vnc 確認服務是否已經啟動。如果返回以下類似結果,說明服務已經啟動。
    技術分享圖片

    由返回結果可知,服務使用了TCP 5901端口。

  6. 運行以下命令安裝GNOME桌面環境。

    1. apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

    安裝需要較長時間,請您耐心等待。

  7. (可選)運行以下命令備份原有xstartup文件。

    1. cp ~/.vnc/xstartup ~/.vnc/xstartup.bak
  8. 按以下步驟修改vnc4server啟動文件。

    1. 運行以下命令打開文件。
      1. vim ~/.vnc/xstartup
    2. i鍵進入編輯模式。
    3. 將文件內容替換為以下內容。
      1. #!/bin/sh
      2. # Uncomment the following two lines for normal desktop:
      3. # unset SESSION_MANAGER
      4. # exec /etc/X11/xinit/xinitrc
      5. [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
      6. [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
      7. xsetroot -solid grey
      8. vncconfig -iconic &
      9. #x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
      10. #x-window-manager &
      11. gnome-panel &
      12. gnome-settings-daemon &
      13. metacity &
      14. nautilus &
      15. gnome-terminal &
    4. Esc鍵退出編輯模式,再輸入:wq保存並退出。
  9. 依次運行以下命令生成新的會話。

    1. vncserver -kill :1 #殺掉原來的桌面進程(假設桌面號為:1)
    2. vncserver :1 # 生成新的會話
  10. 登錄 ECS管理控制臺,在實例所在安全組中 添加安全組規則,放行TCP 5901端口。

  11. 在本地機的VNC Viewer上連接實例。具體操作步驟,請參考 在 Linux 實例上自動安裝並運行 VNC Server 的描述。如果出現如下圖所示的界面,說明您已經成功安裝VNC Server實現了圖形化訪問。
    技術分享圖片

如果問題還未能解決,您可以到阿裏雲社區進行 免費咨詢,或聯系雲市場商家尋求幫助。

Linux實例安裝VNC Server實現圖形化訪問