使用X Manager远程CentOS 7服务器(XDMCP)

  1. 问题描述
    CentOS7中的GNOME启用了本地硬件加速功能,所以通过XDMCP协议远程连接CentOS时会有问题。这个在X Manager官网博客中已提及,并建议使用其他的display manager(如lightdm等)和desktop environment(Xfce或KDE等)来规避该问题
    在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之类的错误
  2. 安装使用步骤
# 安装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=true
port=177
...
# 将Display Manager切换为lightdm
[root@gf03 ~]# systemctl disable gdm && systemctl enable lightdm
# 启动lightdm
[root@gf03 ~]# systemctl start lightdm
# 关闭或者取消防火墙(若已关闭则忽略)
[root@gf03 ~]# systemctl stop firewalld.service
  1. 使用&问题排除
    1 systemctl status lightdm 查看lightdm的启动状态, 若有状态问题,请先重启图形界面 init3 && init5再查看
    2 通过’pstree’命令查看lightdm的详细调用情况(如下图,lightdm后面还是调用gnome-session而不是xfce)
...
        ├─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/ && ls
gnome-classic.desktop  gnome-custom-session.desktop  gnome.desktop  xfce.desktop
[root@gf03 xsessions]# mkdir back && mv gnome* back && ls
back  xfce.desktop
# 重新启动图形桌面(也可通过systemctl重新启动)
[root@gf03 xsessions]# init 3 && init 5

出现权限类的问题,可先关闭SELinux

查看selinux状态 sestatus
临时关闭 setenforce 0
永久关闭 --> 修改配置文件/etc/selinux/config,将SELINU置为disabled
4. 其他
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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值