作者:SkyXZ

CSDN:SkyXZ~-CSDN博客

博客园:SkyXZ - 博客园

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

一、VScode端配置

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

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

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

  ForwardX11 yes
ForwardX11Trusted yes
ForwardAgent yes

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

ssh-keygen #Windows CMD

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

接着我们将生成的公钥复制进我们要配置免密登陆也就是配置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进入后我们点击下载并安装

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

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

二、Linux端配置

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

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 #测试

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

VScode配置X11转发!让你彻底摆脱显示屏!!!的更多相关文章

  1. 转 SecureCRT 使用X11 转发功能打开图形化窗口

    https://yq.aliyun.com/articles/53308 摘要: 有些时候,有些程序可能需要依赖图形界面才能启动,例如安装Oracle时(其实oracle支持命令行安装),例如需要启动 ...

  2. Nginx配置proxy_pass转发的/路径问题

    Nginx配置proxy_pass转发的/路径问题 在nginx中配置proxy_pass时,如果是按照^~匹配路径时,要注意proxy_pass后的url最后的/,当加上了/,相当于是绝对根路径,则 ...

  3. Windows下Nginx的安装与使用(一):配置端口转发

    什么是端口转发 当我们在服务器上搭建一个图书以及一个电影的应用,其中图书应用启动了 8001 端口,电影应用启动了 8002 端口.此时如果我们可以通过: localhost:8001 //图书 lo ...

  4. 二、vue之 使用vscode配置

    vue之 使用vscode配置 visual  studio code 简称vscode,下图为图标 ... 开启vscode ... 1.导入文件夹,选择菜单栏 文件-打开文件夹->选择相应已 ...

  5. VSCode配置Git随记

    VSCode配置Git随记 2018年05月29日 10:14:24 Dominic- 阅读数:4096   vscode中对git进行了集成,很多操作只需点击就能操作,无需写一些git指令. 不过这 ...

  6. VSCode配置python调试环境

    VSCode配置python调试环境 很久之前的一个东东,翻出来看看 VSCode配置python调试环境 * 1.下载python解释器 * 2.在VSCode市场中安装Python插件 * 4.在 ...

  7. Go(02)windows环境搭建和vscode配置

    之前讲述过linux环境下Go语言开发环境搭建,这次简述下windows的搭建以及vscode配置 windows环境搭建 同样去https://studygolang.com/dl下载windows ...

  8. VSCode配置简单的vue项目

    VSCode配置简单的vue项目 https://www.cnblogs.com/wnxyz8023/p/9989447.html 由于最近要使用的项目框架为前后端分离的,采用的是vue.js+web ...

  9. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

  10. golang命令和VSCode配置

    Go是一门全新的静态类型开发语言,具有自动垃圾回收.丰富的内置类型.函数多返回值.错误处理.匿名函数.并发编程.反射等特性 golang常用命令: go env #查看go的环境 echo %GORO ...

随机推荐

  1. Flink 中的事件时间触发器和处理时间触发器

    EventTimeTrigger EventTimeTrigger 的触发完全依赖 watermark,换言之,如果 stream 中没有 watermark,就不会触发 EventTimeTrigg ...

  2. uni app下开发AI运动小程序解决方案

    一.引言 近年来,随着AI视频识别技术的飞速发展,市场上涌现出了众多基于视觉识别的AI运动APP.这些APP凭借AI视觉识别技术的强大能力,让用户只需面对摄像头进行运动锻炼,就能享受到智能计时.精准计 ...

  3. Solr的学习使用之(七)Solr高级查询facet、facet.pivot简介 - OnTheRoad_Lee

    http://martin3000.iteye.com/blog/1330106 1 .什么是Faceted Search Facet['fæsɪt]很难翻译,只能靠例子来理解了.Solr作者Yoni ...

  4. vue3 父子组件传值

    父传子组件 <template> <div> <!-- 通过自定义属性传递值 --> <Subassembly :value="doc"/ ...

  5. 对于web性能优化我有话说!

    web性能是什么呢? 简单来说就是咱们的项目打开的快不快,举以下几个例子 表单提交 列表切换 动画的流程性 打开速度 MDN上对web性能的定义则是Web性能是网站或应用程序的客观度量和可感知的用户体 ...

  6. Shape文件格式

    Shape文件格式 一个ESRI的shapefile数据包含一个主文件(.shp),一个索引文件(.shx)和一个dBASE(.dbf)表.主文件是直接访问的,变长记录的文件,每一条记录都描述一个形状 ...

  7. postgresql序列重复问题处理

    问题 在执行数据插入时,postgresql 提示more than one owned sequence found错误.这个和之前文章中写的序列编号错乱不同,是由数据表的一个列生成了多个序列导致的 ...

  8. 使用hub部署PaddleOCR

    使用hub部署PaddleOCR 概述 目前有一些处理证件照片.资质照片的业务需求,已经尝试过 llava-llama3​ 与 llama3.2-vision​,表现都不佳,要么不能正确 ocr 出文 ...

  9. checker jenkins 启动配置

    chmod -R 755 bin scp target/*.jar ubuntu@x:/home/ubuntu/checker/ scp config/*.yml ubuntu@x:/home/ubu ...

  10. Qt编写地图综合应用50-获取区域边界

    一.前言 区域边界也是一些坐标点集合,而且不同的行政区划得到的区域边界点数组集合个数不同,觉得部分都是一个集合,少部分有一些飞地之类的,需要多个闭合区域,所以会得到多个数组集合,绘制的时候都要分别取出 ...