• 笔记


    vnc配置解决:

    一、Linux主机安装VNC服务

    1、安装vnc-server

    VNC分为服务端和客户端,linux服务器主机需要安装vncserver,centos7下一般使用tigervnc。
    root下执行命令:

    #yum install -y tigervnc-server

    安装完毕后需要配置。

    2、配置vnc-server

    进入目录

    #cd /lib/systemd/system#ls

    我们会看到有个service叫做vncserver@.service,这就是我们需要的vnc服务。但是需要对它进行配置才可以使用。假设我们当前为root用户配置远程桌面,配置流程如下:

    首先,复制该service,命名为vncserver@:1.service,

    #cp vncserver@.service vncserver@:1.service

    然后修改vncserver@:1.service

    #vi vncserver@:1.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 < User> -c “/usr/bin/vncserver %i ”
    PIDFile=/home/< User>/.vnc/%H%i.pid
    ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

    [Install]
    WantedBy=multi-user.target

    这里需要且只需要做一种替换:将< User>替换为需要配置的用户。注意因为root的home目录就是/root/,而不是/home/root/,所以替换后文本如下:

    修改:1.Type=simple;2.%i变成:1;3.<user>变成root

    [Unit]
    Description=Remote desktop service (VNC)
    After=syslog.target network.target

    [Service]
    Type=simple
    # Clean any existing files in /tmp/.X11-unix environment
    ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill :1 > /dev/null 2>&1 || :’
    ExecStart=/sbin/runuser -l root -c “/usr/bin/vncserver %i ”
    PIDFile=/root/.vnc/%H%i.pid
    ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill :1 > /dev/null 2>&1 || :’

    [Install]
    WantedBy=multi-user.target

    如果是非root用户,例如用户admin,PIDFile处应该是:

    ExecStart=/sbin/runuser -l admin -c “/usr/bin/vncserver %i ”
    PIDFile=/home/admin/.vnc/%H%i.pid

    最后Esc+:wq保存退出。

    3、启动vnc-server

    在刚才的配置文件中,有这样一段说明:

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

    即配置完后,还需执行

    #systemctl daemon-reload#systemctl enable vncserver@:1.service

    然后开启vnc服务

    #systemctl start vncserver@:1.service

    查看启动是否成功

    #systemctl status vncserver@:1.service

    如果现实active即表示开启成功。下面设置下vnc连接密码,
    执行

    #vncpassword

    提示输入密码并确认,这是供远程连接时验证用的,自己设置一下即可。配置好以后可以重启下vnc服务

    #systemctl restart vncserver@:1.service

    4、配置防火墙

    vnc服务虽然开启了,但是如果远程客户端需要连接,还需要为防火墙增加配置以开放端口。一般vnc服务是以590+x作为访问端口,x为配置的service@:x,例如此处的vncserver@:1.service,则端口是5901。
    执行命令

    #vi /etc/sysconfig/iptables

    -A INPUT -p tcp -m state –state NEW -m tcp –dport 22 -j ACCEPT

    下方添加配置

    -A INPUT -p tcp -m state –state NEW -m tcp –dport 5901 -j ACCEPT

    然后保存退出,重启防火墙。到这里基本的vnc服务端配置就结束了。

    附加:vnc之后运行错误解决:

    1.vncserver :1

    2.rm -rf /tmp/.X11-unix/X1

    3.systemctl start vncserver@:1.service

    4.systemctl status vncserver@:1.service

    转载:http://www.th7.cn/system/win/201508/127000.shtml

  • 相关阅读:
    show variables like "sql_mode"; set sql_mode=''; set sql_mode='NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES';
    c#单元测试
    React HookApi
    React Navigation验证流程
    React Native 错误笔记
    React Navigation 5.x BottomTab 使用
    React Navigation 5.x 使用
    虹软人脸识别SDK接入Milvus实现海量人脸快速检索
    iOS逆向:越狱手机抹除数据、还原,cydia出错(2021.04.21 完结)
    C#教程1:类型和变量
  • 原文地址:https://www.cnblogs.com/tianziru/p/5500768.html
Copyright © 2020-2023  润新知