CentOS8安装GNOME图形化界面并使用VNCViewer连接
条评论
- 注意: 图形化桌面可能会显著降低服务器的性能,如果安装不当可能会导致操作系统无法正常启动。在进行以下操作之前,建议先对实例创建手工快照备份,以备发生异常时能回滚恢复。
- 为了更高的安全性,建议逐渐放弃VNC方式,转用使用密钥对的Workbench方式登录或配置远程服务器实例。
- 作者是以云服务及Linux初学者的角色开始实践,行文中如有不当或错误之处,欢迎批评指正。
操作前的准备
设置操作系统
建议在进行本文所述所有操作之前,不要部署项目或进行其他工作。我们是从“0”开始的。有1吗
- OS版本:CentOS 8.0 64bit
- 设置root用户及密码
设置安全组并登录
- 在云服务控制台中找到安全组选项,并放行80/80、5900/5910两组端口接入
- 在云服务控制台中设置要操作的实例的远程连接密码,并牢记
- 使用密码在云服务控制台中远程登录到实例
更改yum源至Aliyun镜像源
- 先备份初始源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
- 下载新的
CentOS-Base.repo
到/etc/yum.repos.d/
:wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
或者curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
备注: 其他CentOS版本只需要在URL对应位置更改大版本号即可 - 运行
yum makecache
生成缓存
备注: 非阿里云ECS用户会出现Couldn't resolve host 'mirrors.cloud.aliyuncs.com'
信息,不影响使用。可以修改相关配置:sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
安装GUI界面并设置用户
更新系统及各类组件
yum update -y
安装GUI软件包组
yum groupinstall "Server with GUI" -y
我们将要安装的GNOME desktop是Server with GUI软件包组的一部分。
安装完成后,如果要在云服务控制台的VNC远程连接方式中默认使用GUI界面,就需要使用如下命令:systemctl set-default graphical
当终端显示
1 | Removed /etc/systemd/system/default.target. |
就表明下次使用云服务控制台的VNC远程连接登录到服务器后,默认使用GUI界面而不是命令行。
- 重启
reboot
- 在云服务管理控制台切换到VNC远程方式,使用root身份登录
- 切换运行级
init 5
- 重新以root用户登录,至此GUI界面安装完毕
创建新用户
- 创建用户,设置用户名,后文用USERNAME代指
adduser *USERNAME*
- 设置用户密码
passwd *USERNAME*
按照要求输入密码 - 给用户添加超级管理员权限
visudo
打开编辑器后,在Allow root to run any commands anywhere
项目下,新增*USERNAME* ALL=(ALL) ALL
条目,为USERNAME添加sudo权限。 - 这里建议直接使用图形界面模式,在GUI的用户管理中添加一个管理员账户。
附:为GUI添加中文支持
- 安装中文语言包
yum install -y langpacks-zh_CN
- 检查已安装的语言
locale -a
如出现zh_CN等字样即证明已成功安装中文包 - 添加中文输入法
yum install -y ibus ibus-libpinyin
- 操作完成后建议重启
reboot
- 命令行的中文支持
LC_ALL=zh_CN.utf8
- GUI的中文支持
重启后在GUI界面下进入Settings,将Region&Language的对应项目改成中文,系统可能要求注销账户并再登录,此时可以将标准文件夹更新到中文。
安装和配置VNC服务器
修改显示管理器
由于CentOS 8采用Wayland作为GNOME的默认显示管理器(GDM),并且未配置用于处理X.org等远程渲染的API,所以我们改用GNOME桌面的xorg处理通过VNC进行的远程桌面会话请求:vim /etc/gdm/custom.cong
在vim编辑器中,取消对WaylandEnable=false
的注释(通常在第五行),vim的用法不作详细介绍
安装VNC服务端
- 在这里,使用TigerVMC服务器:
yum install -y tigervnc-server tigervnc-server-module
- 设置VNC密码
vncpasswd
建议设置8位长度的密码并牢记,vncserver会询问是否添加一个view-only的密码,这里选择否n
- 配置VNC服务端文件
vim /etc/systemd/system/vncserver@.service
修改以下内容:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16[Unit]
Description=Remote Desktop VNC Service
After=syslog.target network.target
[Service]
Type=forking
WorkingDirectory=/home/*USERNAME*
User=*USERNAME*
Group=*USERNAME*
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver -autokill %i
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
注意:将USERNAME替换为新建立的用户名。默认情况下,VNC 服务器在 tcp 端口 5900+n 上监听,其中 n 是显示端口号,如果显示端口号为 “1”,那么 VNC 服务器将在 TCP 端口 5901 上监听其请求。
启动VNC服务并允许通过端口
- 将显示端口号设置为“1”,因此使用以下命令在显示端口号“1”上启动并启用VNC服务:
1
2
3systemctl daemon-reload
systemctl start vncserver@:1.service
systemctl enable vncserver@:1.service - 使用
netstat
命令来验证VNC服务器是否开始监听端口 5901 上的请求:netstat -tunlp | grep 5901
如果有5901端口相关的项目,则证明已经开始监听 - 使用以下命令在系统防火墙中允许VNC服务器端口“5901”:备注:阿里云服务器初始情况下没有开启防火墙,通过
1
2firewall-cmd --permanent --add-port=5901/tcp
firewall-cmd --reloadsystemctl start firewalld
开启防火墙,通过systemctl stop firewalld
来关闭。
连接到远程桌面会话
在本地计算机上打开VNCViewer,输入服务器公网IP地址和端口号,键入设置的VNC密码,点击连接即可。
VNCViewer可在这里下载:VNCViewer
至此,我们在CentOS 8远程服务器上安装了GUI,并可通过VNC远程连接到它。
本文标题:CentOS8安装GNOME图形化界面并使用VNCViewer连接
文章作者:Jouko Vaara
发布时间:2020-02-24
最后更新:2020-02-24
原始链接:https://www.joukovaara.top/2020/02/24/How-to-Install-GNOME-on-CentOS-8-Server-for-Aliyun/
版权声明:本站作品除特别声明外,均采用CC BY-NC-SA 4.0 Int'l进行许可。请按照许可协议规定转载和使用。
分享