Jetson nano 入手系列之5—远程可视化访问:jupyter lab与VNC连接

news2025/1/14 18:43:10

Jetson nano 入手系列之5—远程可视化访问:jupyter lab与VNC

  • 1. jupyter lab
    • 1.1 安装jupyter lab
    • 1.2 配置jupyter_lab
    • 1.3 打开jupyter lab
      • 1.3.1 ip地址方式打开
      • 1.3.2 cmd中ssh方式打开
  • 2. vino与VNC Viewer
    • 2.1 vino的安装
    • 2.2 Desktop Sharing配置与设置
    • 2.3 启动vino server
    • 2.4 安装并打开vnc viewer
    • 2.5 设置开机自动启动vnc server
      • 2.5.1 以文件方式进行配置
      • 2.5.2 在界面中进行配置
  • 参考文献

jupyter lab与VNC这两大工具都是用于远程可视化访问,就写在一起了。

1. jupyter lab

1.1 安装jupyter lab

sudo pip3 install jupyter jupyterlab
sudo jupyter labextension install @jupyter-widgets/jupyterlab-manager
sudo jupyter labextension install @jupyterlab/statusbar
sudo jupyter lab --generate-config #生成jupyter_lab_config.py
sudo jupyter-lab password #将密码保存在jupyter_server_config.json

1.2 配置jupyter_lab

cd ~/.jupyter	
sudo vim jupyter_lab_config.py

将下列语句添加在文件尾部:

# 允许远程连接
c.ServerApp.allow_remote_access = True

# 允许远程连接者使用root权限
c.ServerApp.allow_root = True

# 服务器监听所有本机IP
c.ServerApp.ip = '*'

# 启动server不打开浏览器
c.ServerApp.open_browser = False

# 设置通信端口
c.ServerApp.port = 8888

1.3 打开jupyter lab

1.3.1 ip地址方式打开

$ jupyter lab --no-browser

在浏览器中输入以下网址,就可以成功打开了:

http://ip:8888/lab 
#ip为开发板ip地址,如192.168.0.1

1.3.2 cmd中ssh方式打开

putty终端输入:

$ jupyter lab --no-browser

cmd中输入:

ssh -NL 8080:localhost:8888 username@ip
#ip为开发板ip地址,如192.168.0.1

浏览器中输入:

http://localhost:8080/lab

两种方式都可以,输入密码之后就可以访问了。
在这里插入图片描述

2. vino与VNC Viewer

2.1 vino的安装

sudo apt update
sudo apt install vino

输入以下配置信息:

gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false

这个配置也可以通过dconf-editor进行界面操作实现(参考了jetson nano配置远程桌面连接):

sudo apt-get install dconf-editor
dconf-editor

在这里插入图片描述

2.2 Desktop Sharing配置与设置

■ 1) jetson nano 的 Desktop Sharing需要配置才能打开:

sudo vim /usr/share/glib-2.0/schemas/org.gnome.Vino.gschema.xml

添加下列语句到红框位置(不是完全在文件末尾,否则下一步编译出错):

    <key name='enabled' type='b'>
      <summary>Enable remote access to the desktop</summary>
      <description>
        If true, allows remote access to the desktop via the RFB
        protocol. Users on remote machines may then connect to the
        desktop using a VNC viewer.
      </description>
      <default>false</default>
    </key>

在这里插入图片描述

■ 2) 编译配置文件

 sudo glib-compile-schemas /usr/share/glib-2.0/schemas

■ 3) 设置desktop sharing
在这里插入图片描述
可以通过打开界面,添加/修改VNC连接的密码(打开vnc viewer访问远程设备的时候要用到这个密码)。
在这里插入图片描述
另外也可以通过命令行进行密码设定/修改:

gsettings set org.gnome.Vino authentication-methods "['vnc']"
gsettings set org.gnome.Vino vnc-password $(echo -n 'password'|base64)

2.3 启动vino server

在主机端(jetson nano)的terminal执行以下语句:

/usr/lib/vino/vino-server

若出现下图,就代表正常启动了。
在这里插入图片描述

注意: 此步骤一定要在主机端(jetson nano)的terminal执行,而不能通过远程访问输入命令执行,否则会出以下错误:

在这里插入图片描述
同时若此时通过ip登录vnc viewer也会出错。
在这里插入图片描述

2.4 安装并打开vnc viewer

官网下载安装对应平台软件即可,下载安装过程不再细述。

打开软件,点击File–New connection…,打开属性窗口分别输入jetson nano的ip及自定义的name,点击OK就可以了。
在这里插入图片描述

打开界面中,点击对应的访问设备图标,输入密码,根据需要选择是否记住密码,点击OK。
在这里插入图片描述
远程访问桌面成功!
在这里插入图片描述

2.5 设置开机自动启动vnc server

到目前为止,要想在远程访问jetson nano,必须在主机端(jetson nano)的terminal执行以下语句:

/usr/lib/vino/vino-server

2.5.1 以文件方式进行配置

gsettings set org.gnome.Vino enabled true
mkdir -p ~/.config/autostart
vim ~/.config/autostart/vino-server.desktop

在打开文件中添加下列内容:

[Desktop Entry]
Type=Application
Name=Vino VNC server
Exec=/usr/lib/vino/vino-server
NoDisplay=true

重启,直接在windows端打开vnc,查看是否直接可以访问jetson nano。

2.5.2 在界面中进行配置

这里参考了jetson nano开启VNC。

■ 1) 新建一个文件openvino:

sudo vim ~/openvino

在打开文件中添加内容

#!/bin/bash
export DISPLAY=:0
gsettings set org.gnome.Vino enabled true
gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false
xrandr --fb 1280x1024
/usr/lib/vino/vino-server &

xrandr --fb 1280x1024 此句用于配置远程桌面分辨率。

■ 2) 通过界面添加启动项

分别点击以下图标:

在这里插入图片描述
打开界面中点击Add,添加以下信息:
在这里插入图片描述
■ 3) 查看~/.config/autostart/文件夹

如果我们使用了文件以及界面添加自动启动两种方式,此时可以打开文件夹 ~/.config/autostart/,就会发现这两个添加项,都出现在了这个目录中。

可见两种方式实际作用是一样的。

保留其中一个即可,建议保留第二种,里面已经添加了分辨率设置命令。

在这里插入图片描述

参考文献

[1] How to run Jupyter Notebooks on remote server — SSH
[2] Running Jupyter Notebook on a remote server
[3] jetson nano开启VNC
[4] jetson nano配置远程桌面连接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/145502.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ICG-DBCO;吲哚菁绿-二苯基环辛炔,荧光染料标记DBCO

中文名&#xff1a;吲哚菁绿-二苯基环辛炔 英文名&#xff1a;ICG-DBCO&#xff0c;ICG-Dibenzocyclooctyne 分子式: C63H64N4O5S 分子量: 989.27 g/mol 外观&#xff1a;绿色粉末 激发发射波长:785/821nm 结构式&#xff1a; ​ 溶解度&#xff1a;有机溶剂/水 储藏方法…

使用无人机 LiDAR 的重叠树冠的新型植被点云密度树分割模型

Paper题目&#xff1a;A Novel Vegetation Point Cloud Density Tree-Segmentation Model for Overlapping Crowns Using UAV LiDAR Abstract 由于常用的冠层高度模型(CHM)的局限性&#xff0c;在具有高密度和重叠树冠的森林生态系统中检测和分割单个树木经常会导致偏差。针对…

Flink 第3章 反压策略

概述Flink 中文网站的讲解https://flink-learning.org.cn/article/detail/138316d1556f8f9d34e517d04d670626涉及内容&#xff1a;网络流控的概念与背景TCP的流控机制Flink TCP-based 反压机制 1.5之前Flink Credit-based 反压机制 1.5及以后总结与思考网络流控的概念与背景为什…

AtCoder Beginner Contest 283 E - Don‘t Isolate Elements

E - Dont Isolate Elements (atcoder.jp)题意&#xff1a;题意&#xff1a;定义孤独的数为&#xff0c;该数上下左右的数都和它相反给定一个01矩阵&#xff0c;每次操作可以把某一行的数取反&#xff0c;问你把该矩阵变成没有孤独的数的最少操作次数是多少思路&#xff1a;一开…

AI降噪的N种数据扩增方法

数据和特征决定了机器学习的上限&#xff0c;而模型和算法只是逼近这个上限而已 基于统计信号处理的传统噪声抑制方法是通过检测持续的背景声&#xff0c;来估计背景噪声&#xff0c;然后通过估计到的背景噪声计算增益因子对带噪语音进行抑制。但这种方式针对规律的稳态噪声比较…

【算法笔记】最近公共祖先(LCA)算法详解

0. 前言 最近公共祖先简称 LCA&#xff08;Lowest Common Ancestor&#xff09;。两个节点的最近公共祖先&#xff0c;就是这两个点的公共祖先里面&#xff0c;离根最远的那个。 这种算法应用很广泛&#xff0c;可以很容易解决树上最短路等问题。 为了方便&#xff0c;我们记…

企业内训方案|领导力与执行力/TTT内训师/管理者情商修炼

企业内训方案|领导力与执行力/TTT内训师/管理者情商修炼 》》领导力与执行力 从精兵到强将 高绩效团队协作与跨部门沟通 核心人才的管理与激励 卓越管理者的胜任力提升 MTP中层管理技能提升训练 打造高绩效团队 高效沟通技巧 高绩效团队管理&#xff08;中高层/中基层&#xf…

CRM帮助企业实现销售自动化

随着互联网技术的发展&#xff0c;各家企业都善用互联网优势发布各种信息&#xff0c;导致潜在客户被各种推销信息所淹没&#xff0c;销售周期延长&#xff0c;企业可以借助CRM有效规范销售流程&#xff0c;帮助企业实现销售自动化。 前言 各行各业的业务流程中似乎都少不了销…

OSPF综合实验(1.5)

目标&#xff1a; 1、首先进行基于172.16.0.0/16的ip地址规划 首先题中有5个区域和一个RIP共需要5个网段 可以借3位划分为8个网段 172.16.0.0/19 area 0 然后将172.16.0.0/19再借6位分为172.16.0.0/25---172.16.31.128 25作为其中前一个骨干ip网段 172.16.0.0/25在用于只…

TCP滑动窗口机制(附图例)

文章目录前言一、滑动窗口的引出二、流量控制2.1 16位窗口大小2.2 发送缓冲区2.3 逐步解析滑动窗口运作三、快重传机制四、拥塞控制&#xff08;仅供参考&#xff09;五、延迟应答与捎带应答&#xff08;略&#xff09;总结前言 博主个人社区&#xff1a;开发与算法学习社区 博…

测开-刷笔试题时的知识点

圈复杂度&#xff08;暂缓&#xff09;复杂度越大&#xff0c;程序越复杂计算公式&#xff1a;V(G) E - N 2E代表控制流边的数量&#xff0c;n代表节点数量V (G) P 1p为判定节点数几种常见的控制流图&#xff1a;Linux文件权限具有四种访问权限&#xff1a;r&#xff08;可…

进程信号理解3

进程信号理解3 1.什么叫做信号递达 实际执行信号的处理动作叫做信号递达&#xff0c;比如默认&#xff0c;忽略&#xff0c;自定义动作 2.什么叫做信号未决&#xff1f; 信号产生到信号递达的状态叫做信号未决 3.进程被阻塞和进程被忽略有什么区别&#xff1f; 进程被阻塞属…

iPhone更换字体教程,无需越狱,支持所有苹果设备!

上周开始&#xff0c;技术大神zhuowei 发现了一个iOS系统更换字体的漏洞&#xff0c;经过不断修正&#xff0c;现在已经可利用上了&#xff01; 先来看看更换字体后的效果&#xff0c;更换之后&#xff0c;所有App上的字体都得到更改&#xff0c;下图是打开文章的效果 下图是聊…

excel查重技巧:如何用组合函数快速统计重复数据(上)

统计不重复数据的个数&#xff0c;相信不少小伙伴在工作中都遇到过这样的问题。通常的做法都是先把不重复的数据提取出来&#xff0c;再去统计个数。而提取不重复数据的方法之前也分享过&#xff0c;基本有三种方法&#xff1a;高级筛选、数据透视表和删除重复项。其实使用公式…

Ngnix 实现访问黑名单功能

前言 有时候在配置的时候我们会禁用到一些IP&#xff0c;使用nginx 禁用到ip但是需要重启nginx&#xff0c;这样当我们要是实现动态的这种就比较麻烦&#xff0c;当然你可以使用网关来实现相对于nginx实现的这种方式要好很多&#xff0c;但是今天咱们说到这里&#xff0c;那就…

数据可视化系列-05数据分析报告

文章目录数据可视化系列-05数据分析报告1、了解初识数据分析报告数据分析报告简介数据分析报告的作用报告的能力体现报告编写的原则报告种类2、掌握数据分析报告结构标题页目录前言正文结论与建议附录3、了解报告的描述规范报告注意事项报告表达的维度数据结论可用指标数据可视…

代码随想录算法训练营第3天| 203. 移除链表元素、206. 反转链表

代码随想录算法训练营第3天| 203. 移除链表元素、206. 反转链表 移除链表元素 力扣题目链接 删除链表中等于给定值 val 的所有节点。 这里以链表 1 4 2 4 来举例&#xff0c;移除元素4。 那么因为单链表的特殊性&#xff0c;只能指向下一个节点&#xff0c;刚刚删除的是链表…

RS485通信----基本原理+电路图

一、RS485 通信----简介 RS485 是美国电子工业协会&#xff08;Electronic Industries Association&#xff0c;EIA&#xff09;于1983年发布的串行通信接口标准&#xff0c;经通讯工业协会&#xff08;TIA&#xff09;修订后命名为 TIA/EIA-485-A。 RS485 是一种工业控制环境…

获取Java集合中泛型的Class对象

直接获取时获取不到的&#xff0c;类型被虚拟机擦除了 泛型的正常工作是依赖编译器在编译源码的时候&#xff0c;先进行类型检查&#xff0c;然后进行类型擦除并且在类型参数出现的地方插入强制转换的相关指令实现的。编译器在编译时擦除了所有类型相关的信息&#xff0c;所以…

【36张图,一次性补全网络基础知识】

OSI和TCP/IP是很基础但又非常重要的知识&#xff0c;很多知识点都是以它们为基础去串联的&#xff0c;作为底层&#xff0c;掌握得越透彻&#xff0c;理解上层时会越顺畅。今天这篇网络基础科普&#xff0c;就是根据OSI层级去逐一展开的。 01 计算机网络基础 01 计算机网络的…