智慧水务项目(七)vscode 远程连接ubuntu 20.04 服务器,调试pyscada,踩坑多多

一、说明

以前用过pycharm,远程连接还可以,但是vscode用以前还可以,就用它开发python了,想搞个远程,源码直接放服务器上,能远程调试,其实也很方便的,结果第一次还成功了,后来断网还是异常重启后就不不行了,搞了差不多5到6小时还是没搞定,后来老外还是给力,不知道网址了,意识就是插件remote-ssh版本搞了不行,0.107.1都不行,现在最新的都0.114了,感觉是不是还不行,结果我搞了个0.105.1,确实可以了。

二、凭记忆描述下哪些坑 

  • 坑一、 删除.ssh或者某些文件,删除服务器端的.vscode_server等文件

    其中删除.vscode_server本身就是最大的坑,重新下载花的时间够多,都是泪啊,不知道是谁用这个解决了问题的,我至少搞了3遍,都没搞定,只要异常就完事,而且不是这里进度条在动,就是那里,反正它一直在连服务器,你能说啥,就是啥也干不成

        坑二、 不知道了,后面直接上过程

三、配置

1、安装VSCODE,最新版的就行

注意:关闭自动更新,和一个版本id有关,必须和服务端的vscode server保持一致,这边更新了,1如果那边没更新,就出问题了,我没碰到过,也是避坑时查到的,觉得是这样的,因为安装服务器端时与这个id有关

打开VS Code编辑器
点击上方“文件”菜单,在子菜单中选择“首选项”。
在右侧列表中,点击“设置”项。
在设置页面上方搜索框输入“自动更新”。
在“Update mode”的下拉框中,选择“none”,即可成功地禁止自动更新。

2、安装windows 端vscode 插件

注意1、是windows 端的,是不是应该叫VSCODE 客户端,就是我们平常用的

注意2、其实只要安装一个remote-ssh就可以了,其他两个自动安装的

注意3、版本是0.105.1

 3、生产密钥,免密连接服务器

注意1、主要是最开始不顺利,一直重连,所以免得输密码

1、在windows cmd命令行下,ps也可以

执行 ssh-keygen -t rsa

全部回车默认生成即可

生产的文件在C:\Users\victor\.ssh,victor是windows 的登录用户名

2、将 id_rsa.pub想办法搞到服务器端,目录应该是/home/scada/.ssh,这个scada是服务器端的登录名,这个就是对于的用户文件夹

3、执行 cat id_rsa.pub >> authorized_keys ,如果authorized_keys有可以备份下,然后删除了执行,要不会跟在以前文本后面

4、配置config文件,这个就是下面这个红圈圈的配置文件,就是一个连接,点击右边的添加也可以建连接,但是配置也是可以的,如果密钥登录,就要自己手工配,直接干了就是了

 

Host 192.168.1.111  #服务器ip地址或域名
  HostName 192.168.1.111  #主机名
  User scada    #服务器登录用户
  IdentityFile C:\Users\victor\.ssh\id_rsa   #密钥,前面生成的私密

配置好左边红圈圈的连接就会出现

5、点击右边箭头就可以在当前窗口连接,也可以选择新窗口(鼠标放在ip地址上面右键)

第一次连接会很长时间,要下载服务器端的vscode server,就是个安装过程,安装王城后才是我这个图 

 

 左下角这样就代表连接上了,连接上了不一定能用,最开始我用高版本的remote-ssh插件,就会一直重新连接

 记住,windows vscode端插件都不要装,要不然会很郁闷,大概率就是点击扩展,在上面红圈圈这里有个进度条,一直不停,这样别的也干不了,因为它一直在连接,活没干玩,所以这里就等,等进度条没有了,我们干下面的,第一次很慢

4、安装扩展

服务器端我们装下面这么多插件,去市场上下载 

市场下载插件,把插件放在服务器的一个目录下面,去下面这个网址搜,然后下载,很简单,有的需要选操作系统,有的就一个通用的,下载后把它搞到ubuntu 20.04的哪个目录里,放在一起,他会以前安装

https://marketplace.visualstudio.comicon-default.png?t=N7T8https://marketplace.visualstudio.com/_apis/public/gallery/publishers/eeyore/vsextensions/yapf/2024.6.119105146/vspackage 

通过vsix安装,点击s个点,选从vsix安装

 点击vsix安装后出来下图,这是选择后的结果,开始出来的是home/scada,就是用户文件夹,每个人都不一样,最后选到前面放扩展的目录,选择一个它自己装好了,有时候会装几个,没装的继续选,

 

再看下图,这3个不是我在本地装的,我们本地只装了remote的3个扩展,记住别的都不能装,装了它一等你在服务器上装呢,是上面在服务器端装的,他会自己装在本地,两边都有。

 

四、编程了

下面啥也没有,我们点击打开文件夹

又到了服务器端ubuntu的用户目录,选自己的目录进去就可以了 

 

开始连接了 ,需要点时间,等进度条停

 

服务ubuntu的终端,左边的这个git也是用的服务器端的

 

 最后远程管理都在这里了,包括刚才建的工作目录也在这里可以直接连接

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

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

相关文章

学习笔记第二十八天

有名管道(FIFO) 有名管道是Linux系统中一种特殊的文件类型,它允许不相关的进程之间进行通信。有名管道在文件系统中具有具体的路径和名称,因此可以被多个进程共同访问。 特点 持久性:有名管道在文件系统中以文件的形…

LeetCode刷题笔记第231题:2 的幂

LeetCode刷题笔记第231题:2 的幂 题目: 想法: 对输入的数值循环除以2直至数值小于等于1,如果最终的数值为1则为2的幂,小于1则不是2的幂。 class Solution:def isPowerOfTwo(self, n: int) -> bool:if n 1:retur…

SpringBoot的事务/调度/缓存/邮件发送和一些Spring知识点总结

目录 1、SpringBoot的事务管理 2、SpringBoot的异步任务 3、SpringBoot定时任务调度 4、SpringBoot整合Mail发送邮件 5、Spring框架中的Bean的作用域 6、Spring框架中的Bean的线程安全 7、 Spring框架中的Bean生命周期 8、Spring框架如何解决循环依赖? 9、…

【Java】 Java 中的 BufferedReader 详解

我听见有人猜 你是敌人潜伏的内线 和你相知多年 我确信对你的了解 你舍命救我画面 一一在眼前浮现 司空见惯了鲜血 你忘记你本是娇娆的红颜 感觉你我彼此都那么依恋 🎵 许嵩《内线》 在 Java 中,处理文件输入和输出操作时&#xff…

如何开发一款流畅、稳定、有趣味性的棋类游戏?

开发一款流畅、稳定且具有趣味性的棋类游戏,需要从多个角度出发,进行全面的设计和技术实现。以下是开发过程中的关键要素: 1. 明确游戏规则与玩法设计: 首先,确定棋类游戏的基本规则和核心玩法。规则需要严谨而不复杂…

HarmonyOS Next 系列之列表下拉刷新和触底加载更多数据实现(十一)

系列文章目录 HarmonyOS Next 系列之省市区弹窗选择器实现(一) HarmonyOS Next 系列之验证码输入组件实现(二) HarmonyOS Next 系列之底部标签栏TabBar实现(三) HarmonyOS Next 系列之HTTP请求封装和Token…

东南大学:Wi-Fi 6搭档全光以太,打造“数智东南”信息高速路

东南大学:Wi-Fi 6搭档全光以太,打造“数智东南”信息高速路 - 华为企业业务 打好ICT底座,平台和应用层面就会非常通畅了。首先,出海企业的需求既有普遍性,也有垂直性行业的特性需求。普遍性需求需要通信、沟通数据和传…

虚幻反射-

在Unreal Engine中,如果你想获取一个AActor中的所有FProperty,可以使用TFieldIterator来遍历特定类的属性。以下是一些关键步骤和示例代码: 包含必要的头文件:首先,确保包含了反射相关的头文件。 #include "Engin…

GB/T 26825-2011 FJ抗静电防腐胶检测

FJ抗静电防腐胶是指涂覆于石油、化工贮运设备或建筑物室内地面上,能够防止静电积累并疏导静电快速释放的防腐蚀材料。 GB/T 26825-2011 FJ抗静电防腐胶检测项目: 测试项目 测试方法 干燥时间 GB/T 1728 硬度 GB/T 6739 粘接强度 GB/T 26825 抗压…

Golang | Leetcode Golang题解之第337题打家劫舍III

题目: 题解: func rob(root *TreeNode) int {val : dfs(root)return max(val[0], val[1]) }func dfs(node *TreeNode) []int {if node nil {return []int{0, 0}}l, r : dfs(node.Left), dfs(node.Right)selected : node.Val l[1] r[1]notSelected : …

Kali Linux网络问题解决与静态IP配置技巧

很多用户在使用 Kali Linux 时会遇到无法联网的问题,尤其是在 VMware 虚拟机中。这种情况相当常见,一般都是没有配置DNS服务器或者网卡配置文件的IP和虚拟网络编辑器的IP不一致所导致的,下面我们将探讨如何在 Kali Linux 中配置 DNS 服务和设…

mysql windows安装与远程连接配置

安装包在主页资源中 一、安装(此安装教程为“mysql-installer-community-5.7.41.0.msi”安装教程,安装到win10环境) 保持默认选项,点击”Next“。 点开第一行加号展开一路展开找到“MySQL Server 5,7,41 - X64”点击选中点击一下中间只想右侧的箭头看到…

Element-02.组件-Table表格

一.常见组件-表格 二.具体操作 <template><el-table:data"tableData"borderstyle"width: 100%"><el-table-columnprop"date"label"日期"width"180"></el-table-column><el-table-columnprop&q…

SQL - 事务

事务是代表单个工作单元的一组SQL语句&#xff0c;当我们需要对数据库进行多次更改的情况下&#xff0c;要使用事务&#xff0c;我们希望所有这些更改作为一个单元一起成功或失败事务属性 (ACID) 原子性(Atomicity)&#xff1a;事务中的所有操作要么全部完成&#xff0c;要么全…

各种文件的预览下载(docx,pdf,txt,图片)

一、word 1、word的预览可以用onlyoffice 2、word的预览下载 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title></head><body><div onclick"FilehandleClick()">word文件</…

Android -- 谷歌地图绘制

引言 集成之后&#xff0c;在项目中肯定要打点&#xff0c;画线&#xff08;实线&#xff0c;虚线&#xff09;&#xff0c;绘制区域等。 Android 谷歌地图绘制轨迹polyline 在Android中使用Google Maps绘制轨迹polyline的基本步骤如下&#xff1a; 确保你的项目已经正确集成…

spring:Springboot升级到最新的3.0或者java8升级到java17所需要的改动(持续更新)

背景 Spring Boot 2.x 升级到 Spring Boot 3.x 需要使用Java 17或更高版本&#xff0c;所以有些地方需要改动 pom.xml文件改动 修改pom.xml文件&#xff0c;version版本根据实际情况配置最新。 <!-- java.version版本8更换为17 --> <java.version>17</java.…

JS中链式调用的实现和应用

你好同学&#xff0c;我是沐爸&#xff0c;欢迎点赞、收藏和关注。个人知乎 不知你是否注意过&#xff0c;链式调用在编程中还是很普遍的&#xff0c;无论是原生JavaScript还是在一些框架和库中&#xff0c;都会看到它们的身影。今天我们一探究竟&#xff0c;看下链式调用是怎么…

Chat App 项目之解析(二)

Chat App 项目介绍与解析&#xff08;一&#xff09;-CSDN博客文章浏览阅读76次。Chat App 是一个实时聊天应用程序&#xff0c;旨在为用户提供一个简单、直观的聊天平台。该应用程序不仅支持普通用户的注册和登录&#xff0c;还提供了管理员登录功能&#xff0c;以便管理员可以…

MongoDB数据类型介绍

MongoDB作为一种高性能、开源、无模式的文档型数据库&#xff0c;支持丰富的数据类型&#xff0c;以满足各种复杂的数据存储需求。本文将详细介绍MongoDB支持的主要数据类型&#xff0c;包括数值类型、字符串类型、日期和时间类型、布尔类型、二进制类型、数组、对象以及其他扩…