智慧水务项目(七)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.comhttps://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也是用的服务器端的

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

相关推荐
SPC的存折3 分钟前
MySQL 8.0 分库分表
linux·运维·服务器·数据库·mysql
风吹迎面入袖凉21 分钟前
【Redis】Redisson分布式锁原理
java·服务器·开发语言
程序员buddha2 小时前
TypeScript详细教程
javascript·ubuntu·typescript
day day day ...2 小时前
MyBatis条件误写引发的查询条件污染分析与防范
java·服务器·tomcat
TechMasterPlus2 小时前
Linux U-Boot 与内核启动流程深度解析:从上电到 Shell 的完整之旅
linux·运维·服务器
大白菜和MySQL2 小时前
Linux下dhcp服务搭建
linux·运维·服务器
SPC的存折2 小时前
1、MySQL故障排查与运维案例
linux·运维·服务器·数据库·mysql
Deitymoon3 小时前
linux——TCP服务器获取客户端IP地址
linux·服务器·tcp/ip
CDN3603 小时前
高防服务器磁盘 / CPU 爆满?攻击引流与资源扩容实战
运维·服务器·网络协议
小贾要学习3 小时前
【Linux】应用层自定义协议与序列化
linux·服务器·c++·json