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

一、VScode端配置
要在VScode上配置X11转发我们首先要下载两个插件,分别是Remote X11和Remote 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转发!让你彻底摆脱显示屏!!!的更多相关文章
- 转 SecureCRT 使用X11 转发功能打开图形化窗口
https://yq.aliyun.com/articles/53308 摘要: 有些时候,有些程序可能需要依赖图形界面才能启动,例如安装Oracle时(其实oracle支持命令行安装),例如需要启动 ...
- Nginx配置proxy_pass转发的/路径问题
Nginx配置proxy_pass转发的/路径问题 在nginx中配置proxy_pass时,如果是按照^~匹配路径时,要注意proxy_pass后的url最后的/,当加上了/,相当于是绝对根路径,则 ...
- Windows下Nginx的安装与使用(一):配置端口转发
什么是端口转发 当我们在服务器上搭建一个图书以及一个电影的应用,其中图书应用启动了 8001 端口,电影应用启动了 8002 端口.此时如果我们可以通过: localhost:8001 //图书 lo ...
- 二、vue之 使用vscode配置
vue之 使用vscode配置 visual studio code 简称vscode,下图为图标 ... 开启vscode ... 1.导入文件夹,选择菜单栏 文件-打开文件夹->选择相应已 ...
- VSCode配置Git随记
VSCode配置Git随记 2018年05月29日 10:14:24 Dominic- 阅读数:4096 vscode中对git进行了集成,很多操作只需点击就能操作,无需写一些git指令. 不过这 ...
- VSCode配置python调试环境
VSCode配置python调试环境 很久之前的一个东东,翻出来看看 VSCode配置python调试环境 * 1.下载python解释器 * 2.在VSCode市场中安装Python插件 * 4.在 ...
- Go(02)windows环境搭建和vscode配置
之前讲述过linux环境下Go语言开发环境搭建,这次简述下windows的搭建以及vscode配置 windows环境搭建 同样去https://studygolang.com/dl下载windows ...
- VSCode配置简单的vue项目
VSCode配置简单的vue项目 https://www.cnblogs.com/wnxyz8023/p/9989447.html 由于最近要使用的项目框架为前后端分离的,采用的是vue.js+web ...
- centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课
centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更 ...
- golang命令和VSCode配置
Go是一门全新的静态类型开发语言,具有自动垃圾回收.丰富的内置类型.函数多返回值.错误处理.匿名函数.并发编程.反射等特性 golang常用命令: go env #查看go的环境 echo %GORO ...
随机推荐
- youtube视频下载,youtube-dl
[]为选填,用的时候去掉[] 用pip装youtube-dl pip install -U youtube-dl [--proxy=127.0.0.1:7890] youtube-dl下载youtub ...
- delphi12 Android Edit SDK安装
安装 delphi 12.1 后,编译 FMX Android 程序失败! 查找原因,SDK配置全是叹号! 之前用过SDK Manager.exe,直接打开即可以选择下载,但现在发现没有了,查找资料如 ...
- MindSpore-2.4版本中的一些新特性
技术背景 在前面的一篇博客中我们介绍了MindSpore-2.4-gpu的安装和其中可能出现的一些问题.这里我们在安装完成之后,可以尝试使用一些MindSpore新版本的特性.那么在安装之后,如果是使 ...
- 异构数据源DDL自动转换
当我们在不同数据库迁移.同步数据时,首先要做的就是把库和表的结构在目标端创建出来. 当我们把数据库的结构 dump 出来之后,这个 DDL 在目标端大概率是无法直接运行的,至少数据类型在不同数据库之间 ...
- apisix 转发 路由自动encode导致带中括号的文件下载404
问题:apisix 转发 路由自动encode导致带中括号的文件下载404 原因:因为apisix 解码后tomcat处理会有问题,下载不了 解决方案:请求改写---协议,选择保持原样
- dotnet学习笔记-专题04-配置的读取和写入-01
配置的读取和写入 读取配置的类,包括手动从json中读取配置.将json配置与配置类绑定.从控制台读取配置.从环境变量读取配置 using System.Diagnostics; using Micr ...
- 深度探讨Java字节代码的操纵方法
本文为IBM工程师成富编写的<Java深度历险>的第一部分Java字节代码的操纵,像这样Java语言的深度理解和运用还没有很多文章,我们把他奉献给读者,希望读者们喜欢. AD:2013云计 ...
- Java中的对象池模式
Java中的对象池模式 Java对象的生命周期分析: Java对象的生命周期大致包括三个阶段: 对象的创建,对象的使用, 对象的清除. 因此,对象的生命周期长度可用如下的表达式表示: T = T1 + ...
- Django Admin之常用功能汇总
1.字段支持下拉搜索框 1)在admin中新增字段autocomplete_fields autocomplete_fields = ("field1","field2& ...
- Astro v5 x DevNow
先介绍下 DevNow DevNow Github 体验网站 DevNow 是一个精简的开源技术博客项目模版,支持 Vercel 一键部署,支持评论.搜索等功能,欢迎大家体验.同时也支持 Follow ...