远程CentOS 7服务器

来源:互联网 发布:win10 sql sever 编辑:程序博客网 时间:2024/05/17 01:13

更新地址: 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中安装好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@gf03 ~]# yum install -y epel-release# 安装lightdm和Xfce[root@gf03 ~]# yum install -y  lightdm && yum groupinstall -y xfce# 修改lightdm.conf文件(配置文件中有详细的参数说明)[root@gf03 ~]# vim /etc/lightdm/lightdm.conf...[XDMCPServer]enabled=trueport=177...# 将Display Manager切换为lightdm[root@gf03 ~]# systemctl disable gdm && systemctl enable lightdm# 启动lightdm[root@gf03 ~]# systemctl start lightdm# 关闭或者取消防火墙(若已关闭则忽略)[root@gf03 ~]# 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───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@gf03 ~]# cd /usr/share/xsessions/ && lsgnome-classic.desktop  gnome-custom-session.desktop  gnome.desktop  xfce.desktop[root@gf03 xsessions]# mkdir back && mv gnome* back && lsback  xfce.desktop# 重新启动图形桌面(也可通过systemctl重新启动)[root@gf03 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

1 0