CentOS7安装GUI界面及远程连接的实现

用基于浏览器(webdriver)的selenium技术爬取数据,所以程序需运行在GUI环境下。本文分三个部分简要介绍安装GUI界面及远程连接的步骤。

安装GUI界面

大多数云服务器厂商提供的镜像都无GUI界面,所以要先安装图形环境。本文使用GNOME桌面环境:

yum -y groups install "GNOME Desktop"

这条命令将安装GNOME桌面的必要软件包,执行完后配置X系统使用GNOME:

echo "exec gnome-session" >> ~/.xinitrc

安装KDE或者MATE桌面环境的两个命令稍微不一样:

# kde
yum -y groups install "KDE Plasma Workspaces"
echo "exec startkde" >> ~/.xinitrc

# mate
yum --enablerepo=epel -y groups install "MATE Desktop"
​echo "exec /usr/bin/mate-session" >> ~/.xinitrc

以上便安装好了GUI桌面环境。

启动桌面环境有两种方式:

  1. 一次性的:在终端里输入startx;
  2. 系统启动时默认进入桌面环境: systemctl set-default graphical.target,然后重启;

安装vnc-server

有了桌面环境,一般可以通过云服务器厂商提供的web终端远程连接进入桌面。用web终端每次都需要打开浏览器,然后登陆云管理后台再连接,比较麻烦。我们采取直接从桌面客户端远程连接的方式,省去打开浏览器和登录云管理后台的操作。

远程桌面技术有多种,例如VNC, TeamViewer, RDP等,本文使用免费且广泛使用的VNC。

在服务器上先安装服务端(tigervnc是tightvnc的分支):

yum install -y tigervnc-server

接着复制一份VNC配置:

cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

注意上述命令参数重的“@:1”,可以将数字1换成30000内的任意数字,“5900+数字”即为程序的显示(监听)端口,如”@:1″表示监听5901端口。

编辑该配置文件,将文件内的<USER>替换成远程连接时的登录用户名(如果是root,注意将第二个<USER>所在行的”/home”移除掉)。以root身份的配置示例:

# The vncserver service unit file
#
# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/[email protected]
# 2. Replace <USER> with the actual user name and edit vncserver
# parameters appropriately
# (ExecStart=/usr/sbin/runuser -l <USER> -c “/usr/bin/vncserver %i”
# PIDFile=/home/<USER>/.vnc/%H%i.pid)
# 3. Run `systemctl daemon-reload`
# 4. Run `systemctl enable vncserver@:<display>.service`
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, you should
# limit connections to the local host and then tunnel from
# the machine you want to view VNC on (host A) to the machine
# whose VNC output you want to view (host B)
#
# [user@hostA ~]$ ssh -v -C -L 590N:localhost:590M hostB
#
# this will open a connection on port 590N of your hostA to hostB’s port 590M
# (in fact, it ssh-connects to hostB and then connects to localhost (on hostB).
# See the ssh man page for details on port forwarding)
#
# You can then point a VNC client on hostA at vncdisplay N of localhost and with
# the help of ssh, you end up seeing what hostB makes available on port 590M
#
# Use “-nolisten tcp” to prevent X connections to your VNC server via TCP.
#
# Use “-localhost” to prevent remote VNC clients connecting except when
# doing so through a secure tunnel. See the “-via” option in the
# `man vncviewer’ manual page.

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

[Service]
Type=forking

# 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

接下来设置vnc连接密码:

vncpasswd

注意连接密码与登录密码不同:连接密码用于显示远程桌面,登录密码用于用户登录系统。

设置好后,启动vnc服务:

systemctl daemon-reload
systemctl start vncserver@:1
systemctl enable vncserver@:1

如果开启了防火墙,注意放行相应端口。

客户端连接

服务端配置完毕,接下来用客户端连接。

vnc是免费技术,许多客户端都支持该协议。本文采用App Store上免费的“Remote Desktop – VNC”软件进行连接,打开后软件界面如下:

在输入框填写服务器地址:vnc://ip:port,其中ip是服务器的ip或域名,port是监听的端口,例如5901。输入后按回车,弹出密码输入框,输入vncpasswd设置的密码。密码正确的话就可以看到服务器的图形桌面,例如:

按回车键进入登录界面,输入登录用户名和密码进入系统:

接下来就可以做各种图形操作了。

参考

How to install a GUI on top of CentOS 7
How to Install and Configure VNC Server in CentOS 7

本篇文章到此结束,如果您有相关技术方面疑问可以联系我们技术人员远程解决,感谢大家支持本站!

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/192164.html<

(0)
管理的头像管理
上一篇2025-04-01 11:19
下一篇 2025-04-01 11:20

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注