CentOS 7.6 Minimal 安装配置 VNCServer

CentOS 7.6 Minimal 安装配置 VNCServer

生命在于运动,技术在于捣鼓,生命不息,捣鼓不止

系统环境:CentOS Linux release 7.6.1810 Kernel:3.10.0-957.21.3.el7.x86_64 系统现状:最小化安装,没有安装任何图形支持软件

安装图形化支持

不建议安装GNOME Desktop,它会占用大量系统资源,安装完后大约要占用1G左右的空间,而且安装过程也较长。以root权限安装“X Window System”即可

yum groups install "X Window System" 
yum install gnome-classic-session gnome-terminal \ 
nautilus-open-terminal control-center liberation-mono-fonts 

修改系统启动级别

systemctl set-default graphical.target   
## graphical.target相当于level5,multi-user.target相当于level3 

安装vncserver

yum install tigervnc-server 

配置vncserver实例

分别配置 root 用户和 linux 用户,配置略有不同

root用户,服务名是vncserver@:1.service:

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

修改拷贝过来的模板配置文件,主要是[Service]部分

# vim /etc/systemd/system/vncserver@\:1.service
 
[Service] 
Type=forking 
User=root 

# Clean any existing files in /tmp/.X11-unix environment 
ExecStartPre=-/usr/bin/vncserver -kill %i 
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver%i" 
PIDFile=/root/.vnc/%H%i.pid 
ExecStop=-/usr/bin/vncserver -kill %i 

Linux用户,服务名是vncserver@:2.service:

cp /lib/systemd/system/vncserver@.service \ 
/etc/systemd/system/vncserver@:2.service 
# vim /etc/systemd/system/vncserver@\:2.service

[Service] 
Type=forking 
User=linux 

# Clean any existing files in /tmp/.X11-unix environment 
ExecStartPre=-/usr/bin/vncserver -kill %i 
ExecStart=/usr/bin/vncserver %i 
PIDFile=/home/linux/.vnc/%H%i.pid 
ExecStop=-/usr/bin/vncserver -kill %i 

普通用户的ExecStart不同于root,加/sbin/runuser则会在启动服务时报以下错误

Job for vncserver@:2.service failed because the control process exited with error code. See "systemctl status vncserver@:2.service" and "journalctl -xe" for details.

设置vncpasswd

vncpasswd     
# root用户实例的vnc密码 
su linux
$ vncpasswd     
# 普通用户一定要切换到用户自己的环境下 

密码设置完成后回到root权限下,启动服务

加载进程,重启服务

systemctl daemon-reload 
systemctl start vncserver@:1.service 
systemctl start vncserver@:2.service 
# 开机启动 
systemctl enable vncserver@:1.service 
systemctl enable vncserver@:2.service 

配置系统防火墙

firewall-cmd --zone=public --add-port=5901/tcp 
firewall-cmd --zone=public --add-port=5902/tcp 
firewall-cmd --reload 

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏有趣的django

3.shell编程-文件查找之find命令

搜索/home/shell_learn/下的文件,文件名以.sh结尾,且修改时间在一个星期之内的,然后将其删除

13450
来自专栏服务器安全专线

php date与gmdate的获取日期的区别

PHP中的时间有2个格式化函数:date()和gmdate(),在官方的文档中的描述为date -- 格式化一个本地时间/日期

13700
来自专栏dylanliu

Vagrant 安装centos7

总的来说还是很好用的,两三个命令就可以启动一台虚拟机,比用virtualbox启动快多了,不过也存在一个问题,box很不好找,找到之后不好下。

34820
来自专栏dylanliu

Linux 输入输出

ls -al > list 将结果写入list文件中,list没有将创建

15350
来自专栏Android原创

用NDK编译FFmpeg4.1.3

API、CPU、NDK以及TOOLCHAIN这个路径最后的文件夹名称(Mac下是darwin-x86_64、linux可能叫linux-x86_64、Windo...

75820
来自专栏dylanliu

Linux shell 多进程和文件队列处理任务

用一个shell脚本遍历需要拉取的机器和需要拉取天数的日志(两者可配置),通过scp命令将应用服务器上的日志拉取到日志服务器上,然后压缩存盘。再将过期的日期删除

17830
来自专栏Jerry的SAP技术分享

使用java代码连接ABAP Netweaver系统

sun.security.validator.ValidatorException: PKIX path building failed: sun.securi...

13930
来自专栏凯哥Java

JAVA学习篇--静态代理VS动态代理

Proxy代理模式是一种结构型设计模式,主要解决的问题是:在直接访问对象时带来的问题

8820
来自专栏凯哥Java

在Windows经常会发现8080端口已经被占用的错误

在Windows或者linux操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用的错误,而我们又不知道如何停止这个tomcat服务...

34840
来自专栏dylanliu

Flame Graph 火焰图分析 Java 性能

火焰图是分析应用性能问题很好的工具,只是网上的文章都是讲述分析 C, C++ 等语言的,对Java 语言描述甚少,此处记录一下自己使用火焰图分析Java 栈的过...

26530

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励