首页 > 技术文章 > Cenots7环境下VNC服务部署流程

lastyear 2021-08-15 15:29 原文

vnc 远程GUI桌面工具安装
服务端安装及配置
  • yum安装服务

    • 检查是否安装图形化界面

      yum grouplist | grep -E "GNOME Desktop|Graphical Administration Tools"
      #下图为已安装
      

      image-20210814104059341

    • 安装图形化界面并配置默认启动(已安装请忽略)

      yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
      systemctl set-default graphical.target  #配置默认图形化界面启动
      systemctl get-default  #检查配置
      
    • 安装VNC服务

      yum install vnc-server  
      或
      yum install tigervnc-server
      
  • 修改配置并启动

    • 复制服务配置文件

      cp /usr/lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
      #vncserver@:1.service  1 表示服务ID;用于区分多个远程桌面服务;此外服务监听端口号为5900+服务ID;此处服务监听端口号为5901
      
    • 修改配置如下

      # vi /etc/systemd/system/vncserver@:1.service
      [Unit]
      Description=Remote desktop service (VNC)
      After=syslog.target network.target
      
      [Service]
      Type=simple
      User=root
      
      # Clean any existing files in /tmp/.X11-unix environment
      ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
      ExecStart=/usr/bin/vncserver_wrapper root %i
      ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
      
      [Install]
      WantedBy=multi-user.target
      
      ## 更改分辨率
      # vim /usr/bin/vncserver
      ...
      $geometry = "1920x1080";
      ...
      
    • 服务启动

      systemctl daemon-reload
      systemctl start vncserver@:1.service
      systemctl enable vncserver@:1.service
      
    • 查看服务状态

      systemctl status vncserver@:1.service
      

      image-20210814111212695

    • 修改用户vnc密码

      vncpasswd 
      #若使用非当前用户连接vnc;使用su切换至配置中的用户
      

      image-20210814111950296

    • 修改防火墙规则

      firewall-cmd --permanent --add-service vnc-server
      firewall-cmd --reload
      firewall-cmd --list-all  或 firewall-cmd --list-services
      
客户端安装以及连接
  • 下载客户端realvnc

  • 以win版本为例进行客户端安装

    • 单击安装包;Install窗口选择OK;Setup窗口选择Next;License窗口选择同意后点击Next;新窗口中选择是否创建桌面快捷方式,指定安装路径后点击Next;点击Install进行安装;随后完成安装

      image-20210814112234119

      image-20210814112649770

      image-20210814112759864

      image-20210814112944649

    • 使用real vnc连接vnc服务

      输入ip:端口或ip:服务ID;回车连接vnc服务;弹出的警告窗口选择Continue;在随后弹出窗口中输入密码后点击OK进行连接

      image-20210814113250004

      image-20210814113335322

      image-20210814115021436

      image-20210814115044360

VNC服务异常及解决方法

服务重新启动异常
  • 错误信息和现象

    # systemctl status vncserver@\:1.service 
    
    PID file /root/.vnc/localhost.localdomain:1.pid not readable (yet?) after start
    
    #ss -antulp | grep 590
    查看端口发现存在5903端口;多次尝试重启会启动多个递增的端口
    
    # /usr/bin/vncserver :1 -geometry 1920x1080
    尝试手动启动,出现报错
    Warning: localhost.localdomain:1 is taken because of /tmp/.X1-lock
    
  • 解决方法

    ##手动结束所有vnc进程
    kill -9 <VNCPID>
    ##删除文件锁
    rm /tmp/.X1-lock 
    rm /tmp/.X11-unix/X1
    
    ##重启服务
    systemctl start vncserver@\:1.service 
    

推荐阅读