CentOS 7.5 安装配置tigervnc-server

系统版本:

[root@s10 ~]# cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 

1.安装 Gnome 包

[root@s10 ~]# yum groupinstall "GNOME Desktop" "Graphical Administration Tools" -y

2.更新系统的运行级别 (此步骤不是必须)
自动进入图形界面,那么我们需要更改系统的运行级别,输入下面的命令来启用图形界面。

[root@s10 ~]# ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target

3.安装vnc软件包

[root@s10 ~]# yum -y install tigervnc-server 
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * epel: mirrors.aliyun.com
 * extras: mirrors.163.com
 * updates: mirrors.cn99.com
http://mirrors.163.com/centos/7.5.1804/virt/x86_64/libvirt-latest/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found
正在尝试其它镜像。
To address this issue please refer to the below wiki article 

https://wiki.centos.org/yum-errors

If above article doesn't help to resolve this issue please use https://bugs.centos.org/.

正在解决依赖关系
--> 正在检查事务
---> 软件包 tigervnc-server.x86_64.0.1.8.0-13.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=============================================================================================================================================================================================
 Package                                            架构                                      版本                                             源                                       大小
=============================================================================================================================================================================================
正在安装:
 tigervnc-server                                    x86_64                                    1.8.0-13.el7                                     base                                    215 k

事务概要
=============================================================================================================================================================================================
安装  1 软件包

总下载量:215 k
安装大小:509 k
Downloading packages:
tigervnc-server-1.8.0-13.el7.x FAILED                                          
http://mirrors.cqu.edu.cn/CentOS/7.6.1810/os/x86_64/Packages/tigervnc-server-1.8.0-13.el7.x86_64.rpm: [Errno 14] curl#56 - "Recv failure: Connection reset by peer"/s |    0 B  --:--:-- ETA 
正在尝试其它镜像。
tigervnc-server-1.8.0-13.el7.x86_64.rpm                                                                                                                               | 215 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : tigervnc-server-1.8.0-13.el7.x86_64                                                                                                                                      1/1 
  验证中      : tigervnc-server-1.8.0-13.el7.x86_64                                                                                                                                      1/1 

已安装:
  tigervnc-server.x86_64 0:1.8.0-13.el7                                                                                                                                                      

完毕!

4.关闭防火墙

[root@s10 ~]# systemctl stop firewalld
[root@s10 ~]# systemctl disable firewalld

5.复制配置文件

[root@s10 ~]# cp /lib/systemd/system/vncserver@.service  /etc/systemd/system/vncserver@:1.service

6.修改配置文件

[root@s10 ~]# vim /etc/systemd/system/vncserver@\:1.service 

  1 # The vncserver service unit file
  2 #
  3 # Quick HowTo:
  4 # 1. Copy this file to /etc/systemd/system/vncserver@.service
  5 # 2. Replace <USER> with the actual user name and edit vncserver
  6 #    parameters appropriately
  7 #    (ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
  1 # The vncserver service unit file
  2 #
  3 # Quick HowTo:
  4 # 1. Copy this file to /etc/systemd/system/vncserver@.service
  5 # 2. Replace <USER> with the actual user name and edit vncserver
  6 #    parameters appropriately
  7 #    (ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
  1 # The vncserver service unit file
  2 #
  3 # Quick HowTo:
  4 # 1. Copy this file to /etc/systemd/system/vncserver@.service
  5 # 2. Replace <USER> with the actual user name and edit vncserver
  6 #    parameters appropriately
  7 #    (ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
  8 #     PIDFile=/home/<USER>/.vnc/%H%i.pid)
  9 # 3. Run `systemctl daemon-reload`
 10 # 4. Run `systemctl enable vncserver@:<display>.service`
 11 #
 12 # DO NOT RUN THIS SERVICE if your local area network is
 13 # untrusted!  For a secure way of using VNC, you should
 14 # limit connections to the local host and then tunnel from
 15 # the machine you want to view VNC on (host A) to the machine
 16 # whose VNC output you want to view (host B)
 17 #
 18 # [user@hostA ~]$ ssh -v -C -L 590N:localhost:590M hostB
 19 #
 20 # this will open a connection on port 590N of your hostA to hostB's port 590M
 21 # (in fact, it ssh-connects to hostB and then connects to localhost (on hostB).
 22 # See the ssh man page for details on port forwarding)
 23 #
 24 # You can then point a VNC client on hostA at vncdisplay N of localhost and with
 25 # the help of ssh, you end up seeing what hostB makes available on port 590M
 26 #
 27 # Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
 28 #
 29 # Use "-localhost" to prevent remote VNC clients connecting except when
 30 # doing so through a secure tunnel.  See the "-via" option in the
 31 # `man vncviewer' manual page.
 32 
 33 
 34 [Unit]
 35 Description=Remote desktop service (VNC)
 36 After=syslog.target network.target
 37 
 38 [Service]
 39 Type=forking
 40 
 41 # Clean any existing files in /tmp/.X11-unix environment
 42 ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
 43 ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
 44 PIDFile=/home/<USER>/.vnc/%H%i.pid
 45 ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
 46 
 47 [Install]
 48 WantedBy=multi-user.target

将第43、44行中的<USER>修改为root或者你想通过vnc登录的账号,如tom 或jerry 如下所示:

43 ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
44 PIDFile=/root/.vnc/%H%i.pid

7.重新加载systemd服务

[root@s10 ~]# systemctl daemon-reload

8.设置VNC密码

[root@s10 ~]# vncpasswd
Password:
Verify:
Would you like to enter a view-only password (y/n)? y
Password:
Verify:

9.启动VNC服务

[root@s10 ~]# systemctl start  vncserver@:1.service
[root@s10 ~]# systemctl enable  vncserver@:1.service
Created symlink from /etc/systemd/system/multi-user.target.wants/vncserver@:1.service to /etc/systemd/system/vncserver@:1.service.
[root@s10 ~]# systemctl status vncserver@:1.service
● vncserver@:1.service - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/vncserver@:1.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2019-04-02 15:02:08 CST; 7s ago
  Process: 29678 ExecStart=/usr/sbin/runuser -l root -c /usr/bin/vncserver %i (code=exited, status=0/SUCCESS)
  Process: 29675 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
 Main PID: 29705 (Xvnc)
   CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service
           ‣ 29705 /usr/bin/Xvnc :1 -auth /root/.Xauthority -desktop s10.sangame.com:1 (root) -fp catalogue:/etc/X11/fontpath.d -geometry 1024x768 -pn -rfbauth /root/.vnc/passwd -rfbport...

4月 02 15:02:04 s10.sangame.com systemd[1]: Starting Remote desktop service (VNC)...
4月 02 15:02:08 s10.sangame.com systemd[1]: Started Remote desktop service (VNC).

查看VNC服务端口启动状态:

[root@s10 ~]# netstat  -tunpl |grep  :590
tcp        0      0 0.0.0.0:5900            0.0.0.0:*               LISTEN      4334/qemu-kvm       
tcp        0      0 0.0.0.0:5901            0.0.0.0:*               LISTEN      29705/Xvnc          
tcp        0      0 0.0.0.0:5903            0.0.0.0:*               LISTEN      5876/qemu-kvm       
tcp        0      0 0.0.0.0:5904            0.0.0.0:*               LISTEN      5644/qemu-kvm       
tcp        0      0 0.0.0.0:5905            0.0.0.0:*               LISTEN      5710/qemu-kvm       
tcp6       0      0 :::5901                 :::*                    LISTEN      29705/Xvnc          

10.测试连接

  

点击连接并输入密码:

  

如下所示:

  

一切看上去都没有问题。接下来可以体验一下VNC服务。  

posted @ 2019-04-02 15:13  caoss  阅读(9310)  评论(0编辑  收藏  举报