Ubuntu 20.04使用 VNC远程桌面连接避坑指南

自从开始使用Ubuntu 20.04搭建深度学习服务器,就想到使用VNC远程桌面连接使用。可是之前一直使用的是Ubuntu18.04,心里想着设置应该不难,结果在配置的时候总出现无法连接的错误。下面我就分享一下我使用TigerVNC配置远程桌面连接过程中遇到的问题和解决方法。

本文使用的软件版本和使用Linux环境:

运行环境很重要,查看自己使用的Ubuntu版本和想要使用的桌面,并且准备好VNC软件。

安装Ubuntu的时候选择了GUI的安装,因为使用的是desktop版,默认为gnome桌面

Ubuntu使用命令:lsb_release -a 查看

  • Ubuntu 20.04(focal)
  • TigerVNC Server 1.10.1
  • TigerVNC Viewer 1.7.0(Windows 64-bit)&
  • GNOME 3.36.1

VNC软件的选择

RealVNC和TigherVNC都是非常不错的VNC软件,本次选择使用TigherVNC是一个主动维护的高性能VNC服务器,因为能找到的成功经验很多。避坑点之一就是选择TigherVNC。TigerVNC的最新版本可以从GitHub发布页面下载。

在Ubuntu上安装TigherVNC服务器过程很简单,使用如下命令即可安装:

“apt install tigervnc-standalone-server”

安装完成后可以使用vncpasswd命令进行设置,第一次登陆会让你输一个密码,这个根据自己的需求来填写。

个人不建议在询问是否要设置一个“view-only”密码设置密码,因为使用“只看”密码登录后就只能看,不能修改。

启动VNCserveer启动命令和连接命令和Ubuntu18.04一样

“Windows 10 Poswershell 中 ssh User_Name@IP-address”

“Vncserver:num –localhost no #num is port number”

有个需要注意的地方,在创建VNC端口的时候

一定要加上 -localhost no, 否则只能本地连接,不能实现远程连接,那么vnc就毫无意义

“Example : vncserver :3 –localhost no” #3为端口号,no表示非局域网内账户也可访问

VNC Viewer 的选择

VNC Viewer 也有很多的版本,避坑点之二,你是用TigherVNC 就使用 TighVNC Viewer。所有配置完成后,可以VNC正常登录了,在更换比如 RealVNC Viewer。

打开Tigervnc-Viewer连接

因为我使用的是Windows 10,直接下载TigerVNC Viewer

新建用户和权限

避坑第三个地方,你当前登录的用户,一定要是使用adduser 命令添加的。

其实这一步骤在安装完成Ubuntu就进行了,如果你已经安装完成,最好重新建立一个用户。

因为很多的资料都是要修改用户权限,但是对于不是太熟悉的朋友,建议使用adduser命令来添加新用户,这样你可以省略掉很多配置权限的麻烦。

连接遇到灰屏和鼠标变X

当你准备连接服务器的时候,一登录就出现出现灰色屏幕,而且在屏幕下面有2S时间出现。出现灰色屏幕和×型鼠标是因为vncserver找不到指定的图形化组件。

如下报错:

避坑点之四,遇到这个问题一定要先解决前面的问题,确认好你VNC的版本后,按照TigerVNC的方法解决:

  1. 排除桌面安装的问题,安装一遍 gnome

sudo apt-get install gnome-panel

  1. 修改~/.vnc/xstartup文件,一定要修改你当前准备远程连接的用户目录。

我遇到在home下面没有.vnc文件夹的情况,这个时候你可以新建目录

“touch $HOME/.vnc/xstartup”

关于 xstartup 文件的修改值得注意的是:如果你是多用户登录,比如这个深度学习的服务器有很多人同时使用,那么每个新建的用户,都必须修改一次xstartup文件,以确保每个用户都能正常登录,当然你也可以直接将可以正常登录用下home/.vnc下的xstartup文件直接复制到新用户home/.vnc下。

然后关闭当前打开的vnc:

vncserver -kill :num (你打开的端口号,可以用 vncserver –list 查看)

然后修改权限:

chmod +x ~/.vnc/xstartup

重新启动VNC

vncserver :2 -localhost no (#2为端口号,no表示非局域网内账户也可访问)

VNC 锁屏之后无法输入密码解锁

直接用SSH登录服务器,然后kill用户进程,重新启动VNCserver登录。

为了下次不会出现锁屏,登录桌面后可以按照以下步骤修改。

1.点右上角的下拉按钮小箭头。

2.在下拉屏幕中点【设置】。

3.在【设置】中点【隐私】。

4.在【隐私】中点左侧的【锁屏】。

先用 loginctl list-sessions

查看有多少用户,

指定ID解锁会话,或者直接解锁所有会话,依据自己的需求来定。

sudo loginctl unlock-session [ID…]

我看见网上有很多关于Ubuntu20.04和18.04哪个更好的讨论。个人认为一般来说新的系统肯定比老的系统功能更多,包含的软件库也更全面。但是遇到的BUG也多,而且通过网络也不容易找到解决BUG的文章,这个时候就需要自己不断的去尝试。

有关Linux的命令,新手不熟悉可以查看《Linux就该这么学》。

以上就是我分享的关于Ubuntu 使用TigerVNC 进行远程桌面连接的经验分享,全是自己安装过程分享,如果有不够详细的地方请各位指教,谢谢。

Ubuntu 20.04使用 VNC远程桌面连接避坑指南的更多相关文章

  1. 实战记录在 Linux Ubuntu 20.04 安装VNC 远程桌面

    Virtual Network Computing (VNC),是一个图形桌面共享系统,允许我们像使用Windows桌面系统一样可视化的使用键盘和鼠标远程控制服务器,当做一台远程的电脑一样. 主要用在 ...

  2. ubuntu 16.04 安装VNC远程桌面 安装wine+hfs

    1.安装$sudo apt-get install xfce4 $sudo apt-get install vnc4server$sudo apt-get install xrdp 2.启动VNC s ...

  3. Ubuntu 16.04 更改系统语言为简体中文 #####避坑指南

    大家跟着我的步骤一步一步来,肯定不会出现问题的 我这里说明两点,一是切换到管理员用户,二是更新网络源! 且待大家走一遍安装流程 一.安装时报错 原因:以访客的身份进入的会报错,改为管理员进入即可. p ...

  4. Android连接远程数据库的避坑指南

    Android连接远程数据库的避坑指南 今天用Android Studio连接数据库时候,写了个测试连接的按钮,然后连接的时候报错了,报错信息: 2021-09-07 22:45:20.433 705 ...

  5. VNC 远程桌面 连接(安装桌面程序)

    1.修改linux启动方式       # vi /etc/inittab         将3改为5     id:5:initdefault:   2.关闭防火墙(或者单独打开接口)     #s ...

  6. Ubuntu14.04配置3389远程桌面连接

    1.安装xrdp sudo apt-get install xrdp -y 2.安装vnc4server sudo apt-get install vnc4server -y 3.安装xfce4 su ...

  7. Ubuntu 14.04安装teamviewer 远程桌面

    teamviewer 真是一款非常强大的远程登录软件,可以跨Windows和Ubuntu远程登录,但是在64bit的Ubuntu下安装时,按照官方安装方法总是会遇到问题,下面说一下如何安装: 安装i3 ...

  8. Ubuntu 18.04安装VNC远程登录

    reference: https://blog.csdn.net/bluewhalerobot/article/details/73649353 https://community.bwbot.org ...

  9. Ubuntu 12.04设置打开远程桌面登录1

    teamviewer_linux.deb sudo dpkg --install teamviewer_linux.deb

  10. 基于Ubuntu 搭建 VNC 远程桌面服务

    系统要求:Ubuntu 16.04.1 LTS 64 位操作系统 安装.启动 VNC VNC 远程桌面原理 注:本小节内容旨在帮助您更好地了解 Xorg.X11.VNC 等概念和原理,如果你不想了解原 ...

随机推荐

  1. 常见API使用

    String类 字符串相关的类 Java程序中的所有字符串文字(例如"abc")都实现为此类的实例 字符串是不变的 他们的值在创建后无法更改 int length() 返回字符串对 ...

  2. ROS2的安装与使用(超详细图文教程)

    ROS2的安装与使用(超详细图文教程) 如果前面的虚拟机以及Ubuntu22.04镜像都安装好了,根据目录直接跳到ROS2的安装. 资料参考于:古月居 VMware虚拟机的安装 安装地址: 对于不了解 ...

  3. Redis报错MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on

    1.错误信息 org.redisson.client.RedisException: MISCONF Redis is configured to save RDB snapshots, but is ...

  4. C++ | 类继承

    1. 概述 C++有3种继承方式:公有继承(public).保护继承(protected).私有继承(private). 一个B类继承于A类,或称从类A派生类B.这样的话,类A称为基类(父类),类B称 ...

  5. C#异步有多少种实现方式?

    前言 微信群里的一个提问引发的这个问题,C#异步有多少种实现方式?首先想要知道C#异步有多少中实现方式,首先我们要知道.NET提供的执行异步操作的三种模式,然后再去了解C#异步实现的方式. .NET异 ...

  6. 2021-12-03:石子游戏 IV。Alice 和 Bob 两个人轮流玩一个游戏,Alice 先手。 一开始,有 n 个石子堆在一起。每个人轮流操作,正在操作的玩家可以从石子堆里拿走 任意 非零 平

    2021-12-03:石子游戏 IV.Alice 和 Bob 两个人轮流玩一个游戏,Alice 先手. 一开始,有 n 个石子堆在一起.每个人轮流操作,正在操作的玩家可以从石子堆里拿走 任意 非零 平 ...

  7. 2021-08-18:扰乱字符串。使用下面描述的算法可以扰乱字符串 s 得到字符串 t :1.如果字符串的长度为 1 ,算法停止。2.如果字符串的长度 > 1 ,执行下述步骤:在一个随机下标处将字符串

    2021-08-18:扰乱字符串.使用下面描述的算法可以扰乱字符串 s 得到字符串 t :1.如果字符串的长度为 1 ,算法停止.2.如果字符串的长度 > 1 ,执行下述步骤:在一个随机下标处将 ...

  8. vue全家桶进阶之路21:Vue Loader 打包单位件组件

    Vue Loader 是一个 webpack 插件,它允许在单个文件中定义 Vue 组件,并将其包装为 CommonJS 模块,以便在应用程序中使用.使用 Vue Loader 打包的组件被称为单文件 ...

  9. 2015年蓝桥杯C/C++大学B组省赛真题(加法变乘法)

    题目描述: 我们都知道:1+2+3+ ... + 49 = 1225 现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015 比如: 1+2+3+...+10*11+12+...+27*28+2 ...

  10. Kali系统 连接 Xshell

    1> 进入kali系统,修改ssh配置文件:vi /etc/ssh/sshd_config 2> 将PermitRootLogin without-password修改为:PermitRo ...