NeoKylin Linux Advanced Server release V7Update6 (Chromium)

image.png

查看操作系统信息

[root@ecs-f61c-0001 ~]# nkvers
############## NeoKylin Linux Version#################
Release:
NeoKylin Linux Advanced Server release V7Update6 (Chromium)

Kernel:
4.14.0-115.5.1.el7a.06.aarch64

Build:
NeoKylin Linux Advanced Server 
release V7Update6/(Chromium)-aarch64
b06.lic/20190619

安装vncserver

以root用户运行以下命令来安装vncserver

[root@ecs-f61c-0001 sysconfig]# yum install tigervnc-server

同样运行以下命令来安装vncviewer

[root@ecs-f61c-0001 sysconfig]# yum install vnc

停止并禁用防火墙,或者开放5901,5902端口

[root@ecs-f61c-0001 sysconfig]# systemctl stop firewalld.service
[root@ecs-f61c-0001 sysconfig]# systemctl disable firewalld.service

VNC配置和应用

vncserver的配置,创建一个新的配置文件,以开启1号窗口为例(也可以同时开启多个窗口,修改数字即可),方法如下(以下命令复制了两个vncserver服务,也就是可以同时允许2个桌面启动,多个桌面以此类推):

[root@ecs-f61c-0001 sysconfig]# cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service
[root@ecs-f61c-0001 sysconfig]# cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:2.service

编辑/lib/systemd/system/vncserver@:1.service,设置用户root相关参数,最终内容如下(如果有多个服务,全部需要查看一下,一般不需要修改):

# The vncserver service unit file
#
# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/vncserver@.service
# 2. Replace  with the actual user name and edit vncserver
#    parameters appropriately
#    (ExecStart=/usr/sbin/runuser -l  -c "/usr/bin/vncserver %i"
#     PIDFile=/home//.vnc/%H%i.pid)
# 3. Run `systemctl daemon-reload`
# 4. Run `systemctl enable vncserver@:.service`
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted!  For a secure way of using VNC, you should
# limit connections to the local host and then tunnel from
# the machine you want to view VNC on (host A) to the machine
# whose VNC output you want to view (host B)
#
# [user@hostA ~]$ ssh -v -C -L 590N:localhost:590M hostB
#
# this will open a connection on port 590N of your hostA to hostB's port 590M
# (in fact, it ssh-connects to hostB and then connects to localhost (on hostB).
# See the ssh man page for details on port forwarding)
#
# You can then point a VNC client on hostA at vncdisplay N of localhost and with
# the help of ssh, you end up seeing what hostB makes available on port 590M
#
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
#
# Use "-localhost" to prevent remote VNC clients connecting except when
# doing so through a secure tunnel.  See the "-via" option in the
# `man vncviewer' manual page.


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

[Install]
WantedBy=multi-user.target

更新systemctl以使其生效

[root@ecs-f61c-0001 sysconfig]# systemctl daemon-reload

设置vncserver的密码

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

按提示输入密码以及确认密码

启动指定的桌面服务

[root@ecs-f61c-0001 sysconfig]# systemctl start vncserver@:1.service

或者

[root@ecs-f61c-0001 sysconfig]# vncserver :1

其他桌面类似

关闭指定的桌面服务

[root@ecs-f61c-0001 sysconfig]# systemctl stop vncserver@:1.service

或者

[root@ecs-f61c-0001 sysconfig]# vncserver -kill :1

其他桌面类似

设置为开机自动启动

[root@ecs-f61c-0001 sysconfig]# systemctl enable vncserver@:1.service
[root@ecs-f61c-0001 sysconfig]# systemctl enable vncserver@:2.service

测试VNC连接

安装VNC客户端

RealVNC官网:https://www.realvnc.com/en/connect/download/viewer/
下载地址:https://www.realvnc.com/download/file/viewer.files/VNC-Viewer-6.20.529-Windows.exe
image.png
安装客户端(略)
启动客户端:
image.png

连接服务器桌面:
image.png
输入密码连接成功:
image.png
正常登录服务器并且进行操作:
image.png

可能遇到的问题(CentOS环境下)

1.设置为非root用户报错:

[root@ecs-f61c-0001 sysconfig]# systemctl status -l vncserver@:2.service
vncserver@:2.service - Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset:
disabled)
Active: failed (Result: exit-code) since 一 2016-04-25 19:07:23 CST; 7s ago
Process: 10305 ExecStart=/usr/sbin/runuser -l fang -c /usr/bin/vncserver %i (code=exited,
status=1/FAILURE)
Process: 10291 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || :
(code=exited, status=0/SUCCESS)

4月 25 19:07:23 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)...
4月 25 19:07:23 localhost.localdomain systemd[1]: vncserver@:2.service: control process
exited, code=exited status=1
4月 25 19:07:23 localhost.localdomain systemd[1]: Failed to start Remote desktop service
(VNC).
4月 25 19:07:23 localhost.localdomain systemd[1]: Unit vncserver@:2.service entered failed
state.
4月 25 19:07:23 localhost.localdomain systemd[1]: vncserver@:2.service failed.

2.Type=forking报错,改为Type=simple

[root@ecs-f61c-0001 sysconfig]#  systemctl start vncserver@:2.service
Job for vncserver@:2.service failed because the control process exited with error code. See
"systemctl status vncserver@:2.service" and "journalctl -xe" for details.
[root@ecs-f61c-0001 sysconfig]#  systemctl status -l vncserver@:2.service
● vncserver@:2.service - Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset:
disabled)
Active: failed (Result: exit-code) since 一 2016-04-25 19:09:41 CST; 6s ago
Process: 12367 ExecStart=/usr/sbin/runuser -l root -c /usr/bin/vncserver %i (code=exited,
status=98)
Process: 12354 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || :
(code=exited, status=0/SUCCESS)

4月 25 19:09:41 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)...
4月 25 19:09:41 localhost.localdomain systemd[1]: vncserver@:2.service: control process
exited, code=exited status=98
4月 25 19:09:41 localhost.localdomain systemd[1]: Failed to start Remote desktop service
(VNC).
4月 25 19:09:41 localhost.localdomain systemd[1]: Unit vncserver@:2.service entered failed
state.
4月 25 19:09:41 localhost.localdomain systemd[1]: vncserver@:2.service failed.

3.vnc viewer客户端连接黑屏,改变xstartup的权限

这个问题是很多人容易忽视的问题,也是造成连接成功后黑屏的原因之一。
在CentOS中,xstartup的文件路径为:/root/.vnc/ (可以通过locate xstartup来查看xstartup的文件路径)
所以需要执行:

[root@ecs-f61c-0001 sysconfig]# chmod 777 /root/.vnc/xstartup

关闭防火墙

[root@ecs-f61c-0001 sysconfig]# systemctl stop firewalld.service #停止
[root@ecs-f61c-0001 sysconfig]# systemctl disable firewalld.service #禁用

推荐文章:

创建组织架构及个人信息
2021-02-19
本篇主要简单讲述初次使用O2OA如何创建人员信息,组织职务信息以及组织成员和组织职务管理的实际意义及使用场景。
快速入门-平台相关资料汇总
2021-02-07
一、官网http://www.o2oa.net/download.html二、前端框架https://mootools.net/三、jpahttps://www
源码使用-使用Eclipse导入o2server源码
2021-03-15
O2OA是真正全代码开源的应用开发平台,开发者可以直接使用从github或者gitee上clone的源码编译成安卓客户端,代码可以修改,安全可靠,无限制。本文主
信息栏目-新建信息发布流程
2021-03-01
O2OA提供的信息管理功能可以帮助用户快速地配置信息发布栏目,如通知公告,公司动态,规章制度等。用户可以高效地完成信息栏目和配置。本文主要介绍如何在O2OA中为
系统配置-如何访问和操作内置数据库-H2
2021-02-25
O2OA平台内嵌了H2数据库,管理员可以通过支持JDBC的客户端对H2数据库进行访问和数据操作。本篇主要介绍如何访问H2数据库查询数据库信息以及操作数据。
平台维护-在线部署自定义应用的WAR包和JAR包
2021-02-26
在使用O2OA实现项目的过程中,特殊需求在平台现有功能无法直接提供的情况下,可以通过平台提供的自定义war|jar包,实现平台功能的扩展,满足各种不同的需求功能
开发知识-数据优化知识点
2021-02-07
查询性能优化使用连接(JOIN)来代替子查询(Sub-Queries)MySQL从4.1开始支持SQL的子查询。这个技术可以使用SELECT语句来创建一个单列的
会议申请使用手册
2021-02-19
O2OA会议申请是使用平台流程管理能力开发的一个申请流程。员工的会议申请通过审批之后,可以同步到会议管理系统,由会议管理系统进行展现,提醒和跟踪。可以清晰地在会
开发知识-达梦数据安装
2021-02-07
1.安装命令:    ./DMInstall.bin 图形化安装    ./DMInstall.bin-i 文字界面安装注意事项:    可打开文件数过少,建议
数据中心-自定义数据表
2021-03-01
O2OA提供的数据管理中心,可以让用户通过配置的形式完成对数据的汇总,统计和数据分组展现,查询和搜索数据形成列表数据展现。也支持用户配置独立的数据表来适应特殊的

results matching ""

    No results matching ""