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 ...
随机推荐
- gal game 杂谈——《GINKA》
gal game 杂谈--<GINKA> 剧情梳理 Ps:女主分为小学阶段和高中阶段,这里称小学阶段为小时候的女主,高中阶段为大女主,分离出来爱的为GINKA(长相是小时候的女主). 1. ...
- Redis中有事务吗?有何不同?
与关系型数据库事务的区别 Redis事务是指将多条命令加入队列,一次批量执行多条命令,每条命令会按顺序执行,事务执行过程中不会被其他客户端发来的命令所打断.也就是说,Redis事务就是一次性.顺序性. ...
- Abp Vnext 中如何统一接口返回值
ABP Vnext Vue 的实现 https://github.com/WangJunZzz/abp-vnext-pro 在使用 abp 的过程中,如果提供给第三方接口要实现返回值统一需要怎么做? ...
- 【Azure 环境】从网络包中分析出TLS加密套件信息
问题描述 在抓取到网络包之后,如何来获取TLS信息呢?比如使用的是是么加密套件呢? 因为在应用层面,获取的错误信息非常简单: An TLS 1.2 connection request was rec ...
- win10中Docker安装、构建镜像、创建容器、Vscode连接实例
Docker方便一键构建项目所需的运行环境:首先构建镜像(Image).然后镜像实例化成为容器(Container),构成项目的运行环境.最后Vscode连接容器,方便我们在本地进行开发.下面以一个简 ...
- 【昌哥IT课堂】MySQL8.0新特性之不可见主键
一.概述作为 MySQL DBA ,相信大家都经历过在复制模式下,如果没有主键,遇到 load data ,大事务,ddl 等有大量表数据行扫描的行为时,会带来严重的主从延迟,给数据库稳定性和数据一致 ...
- 使用xtrabackup实现mysql定时热备份
1.原理:方案选型 mysqldump是逻辑备份解决方案,备份恢复速度慢,工具获取方便,数据量少推荐 主要用途是导出数据 xtrababckup是物理热备份,速度快,适合大数据量 xtrababcku ...
- JAVA开发规范v1.0
01-中铜国贸JAVA开发规范v1.0 一.编程规约 (一)命名风格 [强制]代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束. 反例:_name / _name / $Obje ...
- rabbitmq3.7.3 发布了一个新的 exchange x-random
direct exchange 同一个 routing key 可以绑定多个 queue,当给这个routing key发消息时,所有 queue 都会投递.这个行为对于一些场景不适用,有时我们希望只 ...
- 强化学习算法中的log_det_jacobian
相关: https://colab.research.google.com/github/google/brax/blob/main/notebooks/training_torch.ipynb 之前 ...