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之类的错误,如图 

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

启动成功的界面如下 
 
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

使用Xmanager远程CentOS 7服务器(XDMCP)的更多相关文章

  1. Xmanager远程Centos 7 Xfce

    最近发现远程除了使用VNC还可以用Xmanager,孤陋寡闻了,通过这个远程软件,又把不怎么关注的Xwindow给了解了一遍. Xfce是一个自由软件,运行在类Unix操作系统 (如Linux.Fre ...

  2. 使用Xmanager通过XDMCP连接远程Centos 7 (摘自xmanager官方博客)

    Using Xmanager to connect to remote CentOS 7 via XDMCP Gnome in CentOS 7 tries to use local hardware ...

  3. Xmanager连接CentOS的远程桌面

    本文主要介绍通过Xmanager连接CentOS远程桌面时,在CentOS系统上需要做的一些配置. 1. Xmanager简介 Xmanager是一个运行于 Windows平台上的高性能的X Serv ...

  4. 使用Xmanager访问CentOS远程桌面

    最近在搞Qemu虚拟机相关的项目,需要用到Linux的桌面系统,用Xmanager连接CentOS桌面最方便了. Linux端:CentOS release 6.8 (Final) Windows端: ...

  5. 【转帖】远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm)

    远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm) https://zhuanlan.zhihu.com/p/310 ...

  6. pycharm项目代码上传远程centos服务器

    pycharm项目代码上传远程centos服务器 在工作中,我们经常会遇到如下情况,在windows系统下的pycharm中开发项目,但是需要在linux服务器上部署和运行我们的项目.那么我们的项目是 ...

  7. 远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm)

    在做 数据分析(数据挖掘 或 机器学习)的时候,我们经常需要绘制一些统计相关的图表,这些统计.绘图的程序常常是跑在服务器上的,可是服务器出于性能和效率的考虑,通常都是没有安装图形化界面的,于是这些统计 ...

  8. Xmanager远程连接CentOS7

    上周例会,又被说了一通,Xmanager远程连接的文档没写?服务没搭建?心想这都有VNC了,为毛一定要弄这个啊?!!但是,我还是在今天给弄了,╮(╯▽╰)╭没人权.搭建完尝试用了下,感觉吧,也不咋地啊 ...

  9. widows本地-xshell实现远程连接linux服务器图形界面

    本地环境远程连接linux图形界面,常用的实现工具有,VNC.Puty.Xshell等,这里我们用的xshell manager: Xmanager简介:Xmanager是一个运行于 Windows平 ...

随机推荐

  1. 【mysql】select子句顺序

    sleect…from (1)where (2)group by (3)having (4)order by (5)limit

  2. 自动生成脚本头部格式并调用VIM工具

    在我们写脚本的时候,开始总要按照脚本书写规范来定义脚本头部格式,久而久之是不是会觉得麻烦效率低下呢,这里就介绍一个好的思路给大家. 1 首先我们在VIM里先复制个头部格式的内容,这里就抄袭一个二师兄的 ...

  3. CodeForces.1174D.ArraySplitting.(后缀和数组 + 贪心)

    题目链接 参考代码: #include <cstdio> #include <algorithm> using namespace std; typedef long long ...

  4. Codeforces 1159E Permutation recovery(构造+拓扑)

    这道题其实只要解决了什么时候输出 -1 ,那么此题的构造方法也就解决了.首先我们可以观察这组 3 3 4 和 3 4 4 ,可以算出第二组是不成立的,在观察一组 2 3 4 5 和  3 2 4 5 ...

  5. 20191126PHP连接数据(1)

    引进数据 mysql> create database stu1 character set utf8; mysql> use stu1 mysql> set names utf8; ...

  6. java 判断点是否在一条线段上

    public static void main(String[] args) { Scanner scan = new Scanner(System.in); Point point1 = new P ...

  7. 2018-10-2-win10-uwp-win2d-特效

    title author date CreateTime categories win10 uwp win2d 特效 lindexi 2018-10-02 21:20:46 +0800 2018-6- ...

  8. python的type和object

    在python中一切皆对象,这是个用python的人都知道的概念,以int举例,比如a=2,type下: 发现他的type是int,在python中type就是类,所以a是类int的一个对象,实例是类 ...

  9. 在子组件中触发事件,传值给父组件-vue

    1.通过$emit触发事件 在子组件<x-test>中触发事件: <button @click="toSearchProduct()">搜索</but ...

  10. 编译原理--NFA/DFA

    现成的, 讲义: https://www.cnblogs.com/AndyEvans/p/10240790.html https://www.cnblogs.com/AndyEvans/p/10241 ...