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

news2024/11/18 5:32:37

一、说明

以前用过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.coloradmin.cn/o/2066248.html

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

相关文章

【机器翻译方向】数据集合集!

本文将为您介绍经典、热门的数据集,希望对您在选择适合的数据集时有所帮助。 1 QUAK 发布方: Upstage高丽大学 发布时间: 2022 韩英合成机器翻译质量预测数据 (韩英神经机器翻译的一个合成质量估计数据集,QUAK) 是指韩语句子和…

erlang学习:erlang学习:书上案例22.6练习题3

初步实现了书上案例第二,三问的要求,对输出结果有部分偏差,没有实现对已完成任务状态的记录,因此已完成任务输出无论如何都是0,明天会在record中加一个字段进行已完成任务状态的记录 (2) 添加一个名为job_centre:stati…

业绩回暖的小鹏,何时能够迈过月销2万的“及格线”?

古罗马哲学家塞涅卡在他的《论天命》中曾写下这么一句话:“英勇的士兵能够从战斗的胜利中获得喜悦,而伟大的人能够从逆境中得到欢乐。” 对于企业来说,身处逆境不一定能得到欢乐,但是走出逆境一定振奋人心。 8月20日&#xff0c…

【原创教程】电气电工10:接压线端子

电气电工这些知识点,我们描述的比较细,虽然看起来比较简单,但是它是后面我们技能提升的基础,如果我们后面学电气工程师相关知识,这些都属于基本功。 接着我们来看一下接线端子 一、接线端子 接线端子的介绍: 接线端子是一种用于连接电线的设备,它能够将电线的导体与…

vue3 bug记录

项目场景: vue2.7 使用vue的ref,报错 Avoid adding reactive properties to a Vue instance or its root $data at runtime - declare it upfront in the data option. 原因分析: 表单组件使用了同名的ref,需要删掉

基于Modbus的MFC智能控制

1. 系统概述 利用LabVIEW通过Modbus 485协议实现对七星(Sevenstar)品牌质量流量控制器(MFC)的智能化控制。该系统将自动控制多个MFC的流速,实时监控其状态,并根据需要进行调整。 2. 硬件配置 MFCs: 七星品…

qt+ffmpeg报错non-existing PPS 0 referenced,如何解决???

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

LeetCode61.旋转链表

本题有两种做法:迭代和递归 本题的本质是:将链表中后k个结点变为前k个,然后将头结点连接到尾节点 迭代 考察知识: 边界条件判断链表倒k结点寻找Get思想:结环 /*** Definition for singly-linked list.* public cla…

基于51单片机的自动窗帘控制proteus仿真

地址:https://pan.baidu.com/s/1l7MGgoPD5Q58ANR1djYWow 提取码:1234 仿真图: 芯片/模块的特点: AT89C52/AT89C51简介: AT89C52/AT89C51是一款经典的8位单片机,是意法半导体(STMicroelectron…

【vue3+Typescript】手撸了一个轻量uniapp导航条

最近公共组件写到导航条,本来打算拿已有的改。看了下uniapp市场上已有的组件,一是不支持vue3typescript,二是包装过重。索性自己手撸了一个导航条,不到100行代码全部搞定,因为自己的需求很简单: 1&#xf…

深度学习----------------------残差网络ResNet

目录 ResNet加更多的层总是改进精度吗?残差块ResNet块细节不同的残差块ResNet块ResNet架构总结 ResNet代码实现残差块输入和输出形状一致增加输出通道数的同时,减半输出的高和宽ResNet模型观察ResNet中不同模块的输入形状是如何变化的训练模型 问题ResNe…

JRE和JDK概念区分

1.JRE Java Runtime Environment:java运行环境。JVMJava类库。开发好的java程序,直接运行,可只安装JRE。 2.JDK Java Development Kit:java软件开发工具包。JREJava开发工具。编译、运行java代码。 3.总结 JRE就是运行Java字…

制作网页底部以及<footer>置底

目录 前言 页脚置底 页脚置底的几种方法 使用calc()设置内容高度 使用flex布局 将内容部分的margin-bottom改为负值【不推荐】 一个网页底部Demo HTML部分: CSS部分: 效果: 其他说明 margin负值特性 下面以一个具体的例子来说明…

Edge-TTS:微软推出的,免费、开源、支持多种中文语音语色的AI工具[Python代码]

Edge-TTS,由微软推出的这款免费、开源的AI工具,为用户带来了丰富多样的中文语音体验。它不仅支持多种中文语音语色,还能实现流畅自然的语音合成。Edge-TTS凭借其高度可定制化的特点,广泛应用于智能助手、语音播报、教育培训等领域…

加速自动驾驶模型迭代,数据存算一体是关键

自动驾驶的每一个业务阶段都会涉及到 AI 深度学习算法和算力的参与,机器视觉,深度学习,传感器技术等均在自动驾驶领域发挥着重要的作用。自动驾驶系统不断迭代的前提是算法的持续优化,目前,自动驾驶发展的瓶颈主要在于…

【笔记】0基础python学爬虫(未完)

(一)用requests发送get请求 安装好pycharm(跳过) 在本地控制台输入pip install requests 安装requests模块 with防止资源浪费 不论f文件有没有执行成功最后都会关闭 请求获取url resp requests.get(url) resp.text获取源代码…

Redis的持久化、主从架构、哨兵高可用架构

目录 1.Redis持久化 1.1 RDB快照 1.2AOF 1.3混合持久化 2.Redis主从架构 2.1主从工作原理 2.1.1全量复制 2.1.2增量复制 3.Redis哨兵高可用架构 3.1哨兵架构模型 3.2哨兵模式的作用 3.3故障转移机制 3.4主节点选举机制 4.Redis管道-pipeline 1.Redis持久化 有两种…

MyBatis-Plus 一、(基础应用)

MyBatis-Plus(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 mybatis 、mybatis-plus 二者区别: MyBatis: 所有SQL语句全部自己写手动解析实…

EPCE-HDR

【GitHub】 【Paper】 摘要 由于相机能力的限制,数字图像通常比真实场景辐射更窄的动态光照范围。为了解决这个问题,高动态范围(HDR)重建被提出,以恢复动态范围,更好的表示真实世界的场景。然而&#xff0c…

haproxy编译安装

一、haproxy简介 HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。 HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬…