Ubuntu18.04使用RealVNC进行远程桌面连接

2024-08-21 20:08

本文主要是介绍Ubuntu18.04使用RealVNC进行远程桌面连接,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

可以直接查看最新的:

RealVNC Server Ubuntu 20.04 无显示器连接 虚拟显示器_捉不住的鼬鼠的足迹-CSDN博客

使用Linux服务器,在一般情况下是不太用桌面环境的。不过现在我想着开发用Linux,如使用Pycharm这种IDE,还是很方便的。这样还是需要桌面环境的,然而我们位置不多,就将服务器的屏幕摘下了,那么就想着用VNC来搞下远程桌面连接。

一些远程桌面的使用中的坑和心得,可以去我的博客看看,地址是:

远程桌面使用心得_捉不住的鼬鼠的足迹-CSDN博客_远程桌面使用

另外补充,我后来的研究中,实现了Headless模式(无外接显示器)VNC连接,博客地址:

https://blog.csdn.net/u012911347/article/details/90267252

这个博客主要说到想用VNC来做远程连接,然而遇到各种问题,最终选择了TeamViewer的局域网连接方式。在实际使用中,长时间,如半天一天的连接会导致TeamViewer的显示出现问题,表现为某些标题栏消失,输入法显示不出来,在主机上添加屏幕,发现桌面环境已经出现问题,需要重启才行。另外一个问题,就是无法多用户连接。所以需要类似虚拟桌面的这种效果,能每个人都连接过去,各自使用一份桌面。机缘巧合,我发现树莓派是有VNC的,开启之后,连接访问完全无问题。这个让我很苦恼,因为原来搞这个花了不少时间却以失败告终,而在树莓派只需enable,简单无脑。通过ps命令看下其VNC进程:

这里看到的是vncserver-x11-serviced,和以前搞得不太一样啊,以前的x11vnc或者tiger vnc什么的。后来了解了下,树莓派用的是Real VNC的服务。Real VNC是目前最成功的VNC解决方案,以前用的VNC Viewer就是Real VNC的产品。所以就转移到了Real VNC上来试试,发现真的就实现了Ubuntu系统远程VNC的访问,下面会记录主要操作步骤。

先下载deb包,可以看到Real VNC提供了许多平台安装包:

然后sudo dpkg -i安装该deb包即可。Real VNC还是很赞的,文档写得很棒,给个Debian安装卸载Real VNC的链接:

https://www.realvnc.com/en/connect/docs/debian-install-remove.html

安装成功后,根据文档指导,在命令行输入vnclicensewiz即可调出许可证设置,如下:

目前个人使用,注册个Real VNC的账号以继续后面的步骤。本来安装的过程中已经显示生成KEY了,不过一时没找到,先用个企业版的添加进去,命令为:sudo vnclicense -add WHJRK-UXY7V-Q34M9-CZU8L-8KGFA。效果如下:

因为需要虚拟模式,所以输入如下命令启用开机启动:

sudo systemctl enable vncserver-virtuald.service

然后输入如下命令开启服务:

sudo systemctl start vncserver-virtuald.service

这样连接总是提示没有许可证,因为这个命令行启动服务,许可证总是不会在命令重启后生效。而且最关键的一点是,设置好许可证,连接上, 但立即就退出了。

可能对新手来说,尤其是这种兼职运维,没第二个人咨询的,很容易被一点小问题绊倒。而我还有很多“主航道”工作,不能在此花费太多时间精力,或者说这种工作也可以变成迭代式的,以后没事就再试试,说不定就解决了。因此也就换成了Server模式,虽然这样不能多个人一同用桌面了。改为这种方式,我发现直接:

sudo service vncserver-x11-serviced start

就会在角落出现vnc的托盘,这种是在虚拟模式中没有的。

之前的没许可证的问题这里会有提示,在托盘中设置后就可以了,所以原来用命令行方式设置可能不会被识别到。这里使用的是6.3的VNC Connect,直接通过云连接。

实际上我是想要通过局域网连接的,但是输入局域网ip,连接无任何反应。新的Ubuntu18.04LTS应该是没有防火墙的,查看发现5900端口好像都没被占用:

这样搞得我都怀疑如何云连接到这台机器的了,不过万幸的是现在已经可以远程了,先见好就收。为什么这么怂呢?这是一台主要开发用的机器,上面配置了深度学习环境还用了许久。为了远程桌面,不小心搞得差点崩溃,还有本来fstab中的/dev/sde自动挂载不知道为何变成了/dev/sdc导致无法开机。也难怪很多人是能不动就不动,有时候一点点配置问题让系统崩溃都是很棘手的。

博客就先发出来, 希望能帮助到其他人。如果谁能给我指导下这方面,一些资料或者留言交流,我都非常感谢。

总结我当前远程桌面效果就是,不能本地局域网连接,只能Server模式下通过云连接。通过Windows的VNC Viewer连接到Ubuntu,速度很快,无卡顿。

这篇关于Ubuntu18.04使用RealVNC进行远程桌面连接的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1094152

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Redis 基本数据类型和使用详解

《Redis基本数据类型和使用详解》String是Redis最基本的数据类型,一个键对应一个值,它的功能十分强大,可以存储字符串、整数、浮点数等多种数据格式,本文给大家介绍Redis基本数据类型和... 目录一、Redis 入门介绍二、Redis 的五大基本数据类型2.1 String 类型2.2 Hash

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他