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. 【迭代器设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

    简介 迭代器模式(Iterator Pattern),是一种结构型设计模式.给数据对象构建一套按顺序访问集合对象元素的方式,而不需要知道数据对象的底层表示. 迭代器模式是与集合共存的,我们只要实现一个 ...

  2. c/c++快乐算法第三天

    c/c++感受算法快乐(3) 开始时间2023-04-16 22:21:10 结束时间2023-04-17 00:09:34 前言:很好,这周就要结束了,大家都回学校了么,嘻嘻.回顾一下昨天的算法题, ...

  3. ROS动态调试PID参数

    ROS动态调试PID参数 连接小车 注意:必须在同一区域网 ssh clbrobort@clbrobort 激活树莓派主板 roslaunch clbrobot bringup.launch 打开PI ...

  4. 逍遥自在学C语言 | 赋值运算符

    前言 在C语言中,赋值运算符用于将一个值赋给变量 这个过程分为两个步骤: 计算赋值运算符右侧的表达式 将结果赋给左侧的变量. C语言提供了多个不同的赋值运算符,包括基本的赋值运算符.复合赋值运算符以及 ...

  5. for of 和 for in 的区别

    1 var arr = ["f", "6", 3, "a", 7]; 2 var obj = { name: "shun" ...

  6. C# 几种获取电脑内存、CPU信息的方案

    计数器.WMI 获取设备的内存信息,如系统可用运行内存: 1 public static async Task<double> GetMemoryAvailableAsync(FileSi ...

  7. 希望所有计算机学生能看到这篇c语言教程

    大部分程序员走入编程世界第一个学习的语言就是C语言. 作为一门古老的编程语言,c语言拥有48年的发展历程. 为什么要学习 C语言? C语言是学习计算机程序设计语言的入门语言.最全面的编程面试网站 C语 ...

  8. 快速上手Linux核心命令(十):Linux安装软件

    目录 前言 rpm rpm包管理器 yum 自动化RPM包管理工具 前言 这期呢主要说一说Linux中包软件管理相关命令,这一期的命令虽然只有两个.但 软件包的安装和卸载都是我们平常最常用的,需要熟练 ...

  9. 【解决方法】查找比较组时报错:An object (User, Group, or Built-in security principal) with the following nameca..

    目录-快速跳转 问题描述 原因分析: 解决方案: 附言: 问题描述 操作环境与场景: 在 VM 内 Windows 2019 中,在组策略管理中,对GPO进行组查找时报错: An object (Us ...

  10. etcd:增加30%的写入性能

    etcd:增加30%的写入性能 本文最终的解决方式很简单,就是将现有卷升级为支持更高IOPS的卷,但解决问题的过程值得推荐. 译自:etcd: getting 30% more write/s 我们的 ...