使用Xmanager遠程CentOS 7服務器(XDMCP)


0. 前言

  1. 基本概念
  2. 簡略概述

    • Display Manager 提供登錄需求

      1. 在文字界面下可以通過startx來啟動Xwindows
      2. 在runlevel 5下,在tty7處有可以使用的圖形登錄界面(方便輸入賬號密碼),這個就是Display Manager–>最大的任務就是登錄
      3. CentOS上,利用GDM (GNOME Display Manager) 程序來提供tty7的圖形接口登錄–>但作用不僅僅如此
      4. gdm配置文件–>/etc/gdm/custom.conf
    • XDMCP (X Display Manager Contorl Protocol)

1. 問題描述

  1. CentOS7中的GNOME啟用了本地硬件加速功能,所以通過XDMCP協議遠程連接CentOS時會有問題。這個在X Manager官網博客中已提及,並建議使用其他的display manager(如lightdm等)和desktop environment(Xfce或KDE等)來規避該問題
  2. 在CentOS7中安裝好lightdmXfce后,由於系統前期已安裝了GNOME desktop,在windows下通過xmanager在輸入用戶名和密碼后,仍會報an error:oh no! something has gone wrong, A problem has occurred and the system can't recover之類的錯誤,如圖 
    image_1ajqfoee21r4r11cl1asc8n817n19.png-14.7kB

2. 安裝使用步驟(以lightdm和xfce為例)

2.1 安裝&啟動

# 安裝epel源 [root@linuxidc ~]# yum install -y epel-release # 安裝lightdm和Xfce [root@linuxidc ~]# yum install -y lightdm && yum groupinstall -y xfce # 修改lightdm.conf文件(配置文件中有詳細的參數說明) [root@linuxidc ~]# vim /etc/lightdm/lightdm.conf ... [XDMCPServer] enabled=true port=177 ... # 將Display Manager切換為lightdm [root@linuxidc ~]# systemctl disable gdm && systemctl enable lightdm # 啟動lightdm [root@linuxidc ~]# systemctl start lightdm # 關閉或者取消防火牆(若已關閉則忽略) [root@linuxidc ~]# systemctl stop firewalld.service

2.3 使用&問題排除

Windows下通過xmanager連接CentOS 7后,若出現問題可參考如下進行排除

  1. systemctl status lightdm 查看lightdm的啟動狀態, 若有狀態問題,請先重啟圖形界面 init3 && init5再查看
  2. 通過’pstree’命令查看lightdm的詳細調用情況(如下圖,lightdm后面還是調用gnome-session而不是xfce),1節中的2問題就是通過如下方式排除並解決的
... ├─lightdm─┬─X───32*[{X}] │ ├─lightdm─┬─lightdm-gtk-gre───2*[{lightdm-gtk-gre}] │ │ └─{lightdm} │ ├─lightdm │ ├─2*[lightdm─┬─gnome-session───ssh-agent] │ │ └─{lightdm}] │ └─2*[{lightdm}] ...

出現上述問題2是因為系統默認的將最先安裝的Environment Desktop作為啟動桌面,而最開始安裝的是GNOME,故lightdm也調用gnome-seesion了,進而出現錯誤,所以最根本的解決方法是告訴系統默認啟動xfce.desktop! 
最簡單的解決方法如下

# 只保留/usr/share/xsessions/下xfce.desktop文件 [root@linuxidc ~]# cd /usr/share/xsessions/ && ls gnome-classic.desktop gnome-custom-session.desktop gnome.desktop xfce.desktop [root@linuxidc xsessions]# mkdir back && mv gnome* back && ls back xfce.desktop # 重新啟動圖形桌面(也可通過systemctl重新啟動) [root@linuxidc xsessions]# init 3 && init 5

啟動成功的界面如下 
image_1ajqi1rnhvgv1k02lfs4s21c49.png-34.4kB 
3. 若還出現其他問題,可查看Xmanager 日志進行分析,不過最保險的辦法是——先更新Xmanager,本人的版本是Xbrowser for Xmanager Enterprise 4 (Build 0243) 
4. 出現權限類的問題,可先關閉SELinux

  • 查看selinux狀態 sestatus
  • 臨時關閉 setenforce 0
  • 永久關閉 –> 修改配置文件/etc/selinux/config,將SELINU置為disabled

3. 其他

  1. CentOS6下可直接使用gdm通過XDMCP來遠程連接,一般步驟如下

    • 通過yum groupinstall安裝系列軟件,如yum groupinstall "Desktop" "X Window System"
    • 修改gdm配置文件,/etc/gdm/custom.conf,在這個文件中,以節的形式組織各類配置參數,節名用中括號[]包圍起來,如[security]、[xdmcp]等,要支持遠程連接,需要在配置文件中增加以下內容:

      [security]
      #允許用root用戶進行遠程連接
      AllowRemoteRoot=true
      [xdmcp]
      #啟動遠程連接服務支持
      Enable=true
      #服務端口
      Port=177
      
    • 啟動服務(init 3 && init 5)

  2. 官方網站參考 
    xmanager forum 
    netsarang

本文永久更新鏈接地址http://www.linuxidc.com/Linux/2017-03/142022.htm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM