VScode配置X11转发!让你彻底摆脱显示屏!!!

news/2025/3/10 5:55:29/文章来源:https://www.cnblogs.com/SkyXZ/p/18687026

作者:SkyXZ

CSDN:SkyXZ~-CSDN博客

博客园:SkyXZ - 博客园

         在我们远程SSH使用开发板或者是服务器开发的时候,你是否总是苦于没有图像显示环境导致OpenCV的cv2.show()操作总是报没有xcb的错?你是否总算是烦恼于在电脑上写完视觉代码想进行验证时还需反复给开发板插上显示屏再运行?看完这篇文章让你彻底摆脱下面这个报错!!!

image-20250123003706104

一、VScode端配置

        要在VScode上配置X11转发我们首先要下载两个插件,分别是Remote X11Remote X11 (SSH)这两款插件缺一不可哦,具体样子如下:

image-20250123005737406

        接着我们修改我们的SSH配置,让我们在使用VScode进行SSH连接的时候能自动启用X11转发,我们点击远程资源管理器插件然后点击齿轮图标打开SSH配置文件,接着我们选择自己使用的ssh配置文件来打开

image-20250123005936357

        打开后可以看到,这里面有很多的我们平时常用的远程连接配置,我们找到我们需要配置X11转发的连接配置在对应项后面添加如下选项即可,具体参考如下图片:

  ForwardX11 yesForwardX11Trusted yesForwardAgent yes

image-20250123010202897

        由于X11需要在免密SSH登陆的情况下才能使用,因此我们需要为我们需要连接的板端或者服务器配置免密登陆,首先我们打开Windows的CMD,在终端中输入如下命令生成公钥:

ssh-keygen #Windows CMD

        然后我们可以发现我们C盘的用户文件夹下的.ssh文件夹里面便会生成我们的密钥id_rsa为私钥,id_rsa.pub为公钥

image-20250123020229217

        接着我们将生成的公钥复制进我们要配置免密登陆也就是配置X11的设备上,然后在Linux端的.ssh目录下创建(如果没有的话)一个authorized_keys文件并将我们的公钥传进去即可实现免密登陆SSH到我们的设备:

# 在Windows
scp ~/.ssh/id_rsa.pub <user_name>@<your_ip>:/path/to/your/路径
# 在Linux
touch ~/.ssh/authorized_keys
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

        最后我们只需要在电脑端下载我们的X11客户端即可,我使用的是Xming,其下载地址为:Xming X Server for Windows download | SourceForge.net进入后我们点击下载并安装

image-20250123015134757

        然后我们只需要下载后的Xming程序,我们在开始菜单中搜索XLaunch然后点击运行后将Display number设置为0后一直点击下一页直到显示点击完成之后我们便成功启动了X11的服务端,之后我们要使用X11的时候只需要启动这个服务一直在后台挂着就可以啦!!!

image-20250123020839492

image-20250123020911376

        下载完Xming后我们打开系统环境变量设置,在系统变量中新建变量"DISPLAY"其值为"localhost:0.0"即可,我们便完成了Windows端的配置!

image-20250123015717182

二、Linux端配置

        完成了Windows端之后我们接着来配置Linux端,我们首先修改/etc/ssh/sshd_config文件,将如下两行取消注释,并使用如下命令重启服务即可

image-20250123021844820

sudo systemctl reload sshd.service
sudo systemctl restart sshd.service

        接着我们将如下命令添加进Bash即可使用X11转发

# step 1 设置X11
export DISPLAY="localhost:10.0" # 加入Bash后Source即可
# step 2 验证
echo $DISPLAY  #输入命令,若输出localhost:10.0即代表配置成功

三、测试使用

        最后我们远程SSH上我们的开发板或者是服务器,在终端中输入如下命令,如果出现对应的图像即代表我们的X11配置成功:

xclock #测试

image-20250123022338947

至此,我们VScode端的X11转发已经配置完成啦!配置过程遇到问题的欢迎在评论区留言(附上截屏等详细信息),我每天都在线解答大家的问题!!!

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做题小结-1.23

我今年真的不想打铁了 https://codeforces.com/contest/2049/problem/C这个题 我是优先队列过的 求和次数 最大 实际上 是一个结论题 很重要if ((a + b + c) & 1) {cout << "-1\n";return;}if ((b + a) < c)cout << a + b << nl;elsecout &…

小智带货助手人物模板制作以及抠除视频背景

小智在视频生成过程中,会用到一个必不可少的材料,就是人物模板(可以简单的理解为AI数字人)。人物模板具体要求以及如何制作如下: 1:可以自行用手机录制一段真人出镜的竖版视频,人物上半身出镜即可,建议站立姿势,随意说一段话或者朗读一段文字均可。简单的手势动作以及…

IO复用 select函数

I/O复用使得程序能同时监听多个文件描述符,这对提高程序的性能至关重要。 通常,网络程序在下列情况下需要使用I/O复用技术: 客户端客户端程序要同时处理多个socket。比如非阻塞connect技术。 客户端程序要同时处理用户输入和网络连接。比如聊天室程序。服务器TCP服务器要同时…

25.1.22小记

今天终于涉及到了面向对象中的类与对象的内容,在这里进行简单的记录 封装 : 把数据和对于数据的操作放在一起 对象 : 属性(数据) + 服务(操作) 一般情况,用户只可进行操作,而数据则被保护 自己定义的class可以作为数据类型定义 对象变量是对象的管理者 this : 成员函…

Vue2_引入及基本功能

介绍了 Vue 核心功能,或者说最基本的功能,包括声明式渲染、条件与循环、处理用户输入、组件化应用构建等,声明式渲染包括文本插值和指令两种方法;条件与循环主要是 v-if 和 v-for 这两个指令;处理用户输入涉及 v-on 和 v-model;组件化应用中指明一个组件本质上是一个拥有…

单纯形法原理

单纯形法的原理介绍及python实现代码单纯形法参考连接:单纯形法单纯形法是针对求解线性规划问题的一个算法,这个名称里的 “单纯形” 是代数拓扑里的一个概念,可以简单将“单纯形”理解为一个凸集,标准的线性规划问题(线性规划标准型)可以表示为: \[max\,(or\,min)\quad…

Tomcat 高并发之道原理拆解与性能调优

上帝视角拆解 Tomcat 架构设计,在了解整个组件设计思路之后。我们需要下凡深入了解每个组件的细节实现。从远到近,架构给人以宏观思维,细节展现饱满的美。 上回👉详情点我【Tomcat】Tomcat 架构原理解析到架构设计借鉴 站在上帝视角给大家拆解了 Tomcat 架构设计,分析 To…

Vue3 —— 安装及配置环境

Vue3的安装、配置(✿◕‿◕✿)Vue官网:https://vuejs.org/配置环境终端:Linux和Mac上可以用自带的终端。Windows上推荐用powershell或者cmd。Git Bash有些指令不兼容。安装Node.js:安装地址:https://nodejs.org/en/安装@vue/cli:执行:npm i -g @vue/cli如果执行后面的操作…

二. Redis 超详细的安装教程((七步)一步一步指导,步步附有截屏操作步骤)

二. Redis 超详细的安装教程((七步)一步一步指导,步步附有截屏操作步骤) @目录二. Redis 超详细的安装教程((七步)一步一步指导,步步附有截屏操作步骤)1. Redis 详细安装教程2. Redis 后台基本启动 & 详细的基本使用3. Redis 服务器的关闭和启动的注意事项4. 如何修改 Re…

数据分库分表和迁移方案

在我们业务快速发展的过程中,数据量必然也会迎来突飞猛涨。那么当我们的数据量百倍、千倍、万倍、亿倍增长后,原有的单表性能就不能满足我们日常的查询和写入了,此时数据架构就不得不进行拆分,比如单表拆分成10张表、100张表、单个月分多张表等等。下面我们针对具体案例分析…

Power BI 连接GaussDB提取数据方法

Power BI本身没有直接的链接器来获取GaussDB,目前连接GaussDB的方法有2个: ODBC, JDBC,这两种方式在云端都要通过设置网关,pbi云端通过网关链接到虚拟机或者某台电脑上,电脑安装个人网关(组织网关没有成功,不知道为什么,知道原因的希望能留言),下面说下两种连接方式: …

2025-1-20-盒子模型-弹性盒子模型

重新学一下巩固,之前发的看不了,本来还想着直接看呢 盒子模型 width,height是宽高,padding是内边距,如果里边有文本的话一般是贴着左上方,但是有内边距就不会,类似下边的演示图;border是内外之间边框,就是给宽高之外加一层;margin是外边距,可以理解为是你构造的边框…