Linux Mint:VNC Server配置

作者: txfly | 来源:发表于2019-12-10 16:41 被阅读0次

    本文主要介绍Linux Mint(Cinnamon)下VNC Server的基本配置。

    测试环境:Linux Mint 19.2 Cinnamon + TigerVNC 1.7.0 + VNC-Viewer(WIN10)

    安装vncserver

    sudo apt install tigervnc-standalone-server tigervnc-common
    

    设置密码

    使用vncpasswd命令设置密码,文件存放在~/.vnc路径下。

    $ vncpasswd
    Password:
    Verify:
    Would you like to enter a view-only password (y/n)? n
    $ ls  ~/.vnc
    passwd
    

    设置为开机启动

    创建/etc/systemd/system/vncserver@:1.service文件,具体内容为:

    [Unit]
    Description=Remote desktop service (VNC)
    After=syslog.target network.target
    
    [Service]
    Type=simple
    User=txfly
    PAMName=login
    PIDFile=/home/%u/.vnc/%H%i.pid
    ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
    ExecStart=/usr/bin/vncserver %i -geometry 1440x900 -alwaysshared -fg -localhost no
    ExecStop=/usr/bin/vncserver -kill %i
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    

    其中需要注意的有:

    1. 修改User=txfly为真实用户名;
    2. ExecStart=/usr/bin/vncserver %i -geometry 1440x900 -alwaysshared -fg -localhost no-fg表示进程在前台运行并在VNC服务器的X会话终止后终止它,-localhost no表示所有客户端都可以连接。
    3. Restart=always重启VNC Server。在客户端注销后,可以重新连接服务器。如果没有加这一条,客户端注销后,vncserver@:1.service会变成stop状态。

    详细操作步骤:

    $ sudo /etc/systemd/system/vncserver@:1.service
    $ sudo systemctl start vncserver@:1.service
    $ sudo systemctl enable vncserver@:1.service
    Created symlink /etc/systemd/system/multi-user.target.wants/vncserver@:1.service → /etc/systemd/system/vncserver@:1.service.
    $ sudo systemctl status vncserver@:1.service
    ● vncserver@:1.service - Remote desktop service (VNC)
       Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: enabled)
       Active: active (running) since Tue 2019-12-10 15:21:27 CST; 5s ago
      Process: 4385 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill :1 > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
     Main PID: 4392 (vncserver)
        Tasks: 0 (limit: 4915)
       CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service
               ‣ 4392 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -fg -localhost no
    

    连接VNC Server

    打开VNC-Viewer,地址栏输入ip地址和端口即可,例如192.168.2.6:5901(注意此时端口号是5901)。

    登录 连接后界面

    如果出现连接超时或者服务端拒绝连接,需要在Linux Mint里面关闭防火墙,或者将5901添加到防火墙里面,配置方式如下:

    配置防火墙

    其它需要注意的地方:
    1. 启用剪切复制功能
    修改/etc/X11/Xvnc-session文件,将vncconfig -iconic &修改成vncconfig -nowin &,这样可以隐藏helper应用,修改后的内容为:

    #! /bin/sh
    
    test x"$SHELL" = x"" && SHELL=/bin/bash
    test x"$1"     = x"" && set -- default
    
    vncconfig -nowin &
    $SHELL -l <<EOF
    exec /etc/X11/Xsession "$@"
    EOF
    vncserver -kill $DISPLAY
    

    2. 修复文件管理器以Root身份打开功能
    修改/usr/share/polkit-1/actions/org.nemo.root.policy文件,将<allow_any>no</allow_any>改成<allow_any>auth_admin_keep</allow_any>,修改后的内容如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE policyconfig PUBLIC
    "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
    "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
    
    <policyconfig>
    
     <vendor>Nemo Project</vendor>
     <vendor_url>https://github.com/linuxmint/nemo</vendor_url>
    
     <action id="org.nemo.root">
       <description>Run Nemo with elevated privileges</description>
       <message gettext-domain="nemo">Files</message>
       <icon_name>gksu-root-terminal</icon_name>
       <defaults>
         <allow_any>auth_admin_keep</allow_any>
         <allow_inactive>no</allow_inactive>
         <allow_active>auth_admin_keep</allow_active>
       </defaults>
       <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/nemo</annotate>
       <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
     </action>
    
    </policyconfig>
    

    参考连接:

    1. https://wiki.archlinux.org/index.php/TigerVNC
    2. https://tigervnc.org/doc/vncconfig.html

    版权声明:本文为「txfly」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://www.jianshu.com/p/c23714457783

    相关文章

      网友评论

        本文标题:Linux Mint:VNC Server配置

        本文链接:https://www.haomeiwen.com/subject/kxsggctx.html