天天看點

遠端CentOS 7伺服器使用X Manager遠端CentOS 7伺服器(XDMCP)

更新位址: https://www.zybuluo.com/wuzhimang/note/392271

使用X Manager遠端CentOS 7伺服器(XDMCP)

标簽(空格分隔): linux xwindows centos

  • 使用X Manager遠端CentOS 7伺服器XDMCP
    • 标簽空格分隔 linux xwindows centos
    • 前言
    • 問題描述
    • 安裝使用步驟以lightdm和xfce為例
      • 1 安裝啟動
      • 3 使用問題排除
    • 其他

0. 前言

  1. 基本概念 from vbrid
  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中安裝好

    lightdm

    Xfce

    後,由于系統前期已安裝了GNOME desktop,在windows下通過xmanager在輸入使用者名和密碼後,仍會報

    an error:oh no! something has gone wrong, A problem has occurred and the system can't recover

    之類的錯誤,如圖
    遠端CentOS 7伺服器使用X Manager遠端CentOS 7伺服器(XDMCP)

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

2.1 安裝&啟動

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

2.3 使用&問題排除

windows下通過xmanager連接配接centos7後,若出現問題可參考如下進行排除

  1. systemctl status lightdm

    檢視lightdm的啟動狀态, 若有狀态問題,請先重新開機圖形界面

    init3 && init5

    再檢視
  2. 通過’pstree’指令檢視lightdm的詳細調用情況(如下圖,lightdm後面還是調用

    gnome-session

    而不是

    xfce

    ),1節中的2問題就是通過如下方式排除并解決的
...
        ├─lightdm─┬─X───*[{X}]
        │         ├─lightdm─┬─lightdm-gtk-gre───*[{lightdm-gtk-gre}]
        │         │         └─{lightdm}
        │         ├─lightdm
        │         ├─*[lightdm─┬─gnome-session───ssh-agent]
        │         │            └─{lightdm}]
        │         └─*[{lightdm}]
...
           

出現上述問題2是因為系統預設的将最先安裝的Environment Desktop作為啟動桌面,而最開始安裝的是GNOME,故lightdm也調用gnome-seesion了,進而出現錯誤,是以最根本的解決方法是

告訴系統預設啟動xfce.desktop

最簡單的解決方法如下:

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

啟動成功的界面如下

遠端CentOS 7伺服器使用X Manager遠端CentOS 7伺服器(XDMCP)

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

繼續閱讀