CentOS7开启图形化界面

准备工作

将yum换成阿里云的https://developer.aliyun.com/mirror/
删除原始的yum源(或新建文件夹备份)

rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

桌面环境

首先安装桌面环境,这里安装 GNOME。

yum -y groups install "GNOME Desktop"

关于桌面环境相关命令

#从命令行切换到桌面环境

startx

#获取当前启动模式

systemctl get-default

#修改启动模式为图形化

systemctl set-default graphical.target

#修改启动模式为命令行

systemctl set-default multi-user.target

默认启动桌面环境后以 root 用户自动登录
#修改配置文件

vi /etc/gdm/custom.conf

#增加如下配置

[daemon]
AutomaticLoginEnable=True
AutomaticLogin=root

远程服务设置

#Windows 远程登录需要安装 Xrdp,需要 epel 源

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install -y xrdp

#Xrdp 会调用 VNC,安装 tigervnc-server

yum install -y tigervnc-server

#修改 Xrdp 最大连接数

vim /etc/xrdp/xrdp.ini
max_bpp=32

#启动 Xrdp 并设置开机启动

systemctl start xrdp
systemctl enable xrdp

#开放 3389 端口,或者关闭防火墙

firewall-cmd --permanent --zone=public --add-port=3389/tcp
firewall-cmd --reload

#关闭防火墙

systemctl stop firewalld

#禁止防火墙开机启动

systemctl disable firewalld

打开 Windows 的远程桌面
image.png
image.png

输入系统用户名密码即可连接

image.png

若远程连接时发现root账号可以访问,但其他用户不可以访问,应该是权限问题,需要将/etc/xrdp文件夹的权限开放出来 chmod -R 755 /etc/xrdp

VNC 登录设置

用 VNC 客户端连接登录还需做一些设置
VNC 客户端下载:https://www.realvnc.com/en/connect/download/viewer/

#为当前用户设置 VNC 密码,不然服务无法启动。此密码和系统密码不一样,这是使用 vnc viewer 登陆时使用的密码
vncpasswd

复制服务设置的模板

cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

修改配置,以 root 用户为例,每个用户都需要单独设置

vim /etc/systemd/system/vncserver@\:1.service

换成用户名,[Service] 下增加 User=root

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=root

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

让服务文件修改生效

systemctl daemon-reload

启动服务

systemctl start vncserver@:1

设为开机启动

systemctl enable vncserver@:1

查看服务端口,用于客户端连接地址

netstat -lnpt|grep Xvnc

放行连接端口,每个用户端口不同。也可直接关闭防火墙

firewall-cmd --add-port=5901/tcp --permanent
firewall-cmd --reload

image.png

输入地址加端口

image.png

输入密码即可连接

image.png

image.png

https://www.jianshu.com/p/63dce85dc958
https://blog.csdn.net/weixin_41004350/article/details/80805927