1. 云栖社区>
  2. >
  3. 正文

CentOS 7安装TigerVNC Server

作者:用户 来源:互联网 时间:2018-09-07 15:47:54

centoscentos7vncserver

CentOS 7安装TigerVNC Server - 摘要: 本文讲的是CentOS 7安装TigerVNC Server, 1. CentOS 7安装TigerVNC Server 2. 安装TigerVNC Server 3. 配置VNC Service 4. 修改防火墙 5. 设置VNC密码 1. CentOS 7安装TigerVNC Ser

1. CentOS 7安装TigerVNC Server 2. 安装TigerVNC Server 3. 配置VNC Service 4. 修改防火墙 5. 设置VNC密码 1. CentOS 7安装TigerVNC Server

本文介绍如何在CentOS 7上安装VNC Server,以便远程访问。本文参照了DigitalOcean的教程,加入了一些安装经验。 2. 安装TigerVNC Server

建议使用非root用户安装,-y代表直接安装

sudo yum install -y tigervnc-server
3. 配置VNC Service

以下方法是新方法,以前是要配置/etc/sysconfig/vncservers,现在第一步是将默认提供的文件复制到/etc/systemd/system,命令如下

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

接下来修改该配置文件

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

将其中<USER>替换为你想要的用户名,我这里是oracle,添加设置分辨率的参数-geometry 1280x720,所有内容如下

# The vncserver service unit file
#
# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/vncserver@:<display>.service
# 2. Edit <USER> and vncserver parameters appropriately
# ("runuser -l <USER> -c /usr/bin/vncserver %i -arg1 -arg2")
# 3. Run `systemctl daemon-reload`
# 4. Run `systemctl enable vncserver@:<display>.service`
#

. . .

[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=/sbin/runuser -l oracle -c "/usr/bin/vncserver %i -geometry 1280x720" 
PIDFile=/home/oracle/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

保存文件并退出vim,重新加载配置

sudo systemctl daemon-reload

也可以设置成开机启动

sudo systemctl enable vncserver@:1.service
4. 修改防火墙

首先判断firewalld是否启动,输入以下命令判断

sudo firewall-cmd --state

如果启动应该输出

running

如果是not running,执行下面命令

sudo systemctl start firewalld

添加端口号5901-5905

sudo firewall-cmd --permanent --zone=public --add-port=5901-5905/tcp

重新加载防火墙

sudo firewall-cmd --reload

可以使用下面命令查看端口号是否被加入

firewall-cmd --list-all-zones
5. 设置VNC密码

通过ssh,用oracle用户名登录到服务器,执行下面命令

vncserver

终端会提示你输入密码,如下

You will require a password to access your desktops.
Password:
Verify:
xauth:  file /home/oracle/.Xauthority does not exist

New 'localhost.localdomain:1 (oracle)' desktop is localhost.localdomain:1

Creating default startup script /home/oracle/.vnc/xstartup
Starting applications specified in /home/oracle/.vnc/xstartup
Log file is /home/oracle/.vnc/localhost.localdomain:1.log

如果想修改密码,可以使用vncpasswd。现在已经有一个vnc服务在运行了,但我们需要使用刚刚配置的服务来启动,所以我们需要先杀死刚刚的vnc服务,使用下面命令。

vncserver -kill :1

接下来,重启我们配置的服务

sudo systemctl daemon-reload
sudo systemctl restart vncserver@:1.service

使用下面命令查看该服务是否正确运行

sudo systemctl status vncserver@:1.service -l

如果正确启动,输出应为

● vncserver@:2.service - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset: disabled)
   Active: active (running) since 日 2017-07-23 21:55:35 CST; 12h ago
  Process: 8720 ExecStart=/usr/sbin/runuser -l oracle -c /usr/bin/vncserver %i -geometry 1280x720 (code=exited, status=0/SUCCESS)
  Process: 8716 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
 Main PID: 8744 (Xvnc)
   CGroup: /system.slice/system-vncserver.slice/vncserver@:2.service
           ‣ 8744 /usr/bin/Xvnc :2 -desktop 127.0.0.1:2 (oracle) -auth /home/oracle/.Xauthority -geometry 1280x720 -rfbwait 30000 -rfbauth /home/oracle/.vnc/passwd -rfbport 5902 -fp catalogue:/etc/X11/fontpath.d -pn

7月 23 21:55:32 127.0.0.1 systemd[1]: Starting Remote desktop service (VNC)... 7月 23 21:55:35 127.0.0.1 systemd[1]: Started Remote desktop service (VNC). 

如果想配置多用户同时访问,需要将上面vncserver@:1.service,改为vncserver@:2.service,然后配置其中用户名、分辨率参数,再按我的步骤走一遍就可以了

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索centos , centos7 vncserver ,以便于您获取更多的相关知识。