Win10下配置VScode远程开发ssh-remote(免密登录)
作者:Cassie_pyLu 发布时间:2022-07-17 23:01:13
问题背景:
在开发或者做实验的过程中,我们经常会用到远程服务器或者Github的项目,而我服务器上的项目只能在Jupyter Notebook上编写(或许可以在其他IDE上写,但我不知道)。而我们喜欢用的IDE比如Pycharm、轻量级的VScode,如何在本地的IDE上使用服务器的项目且快速、方便地写代码呢?这就是今天要详细介绍的VScode配置免密ssh+remote,一旦连接成功,我们就可以在本地自己喜欢的IDE上操作远程服务器端的项目了。
环境准备:
1.Win10
2.VScode(VSCodeUserSetup-x64-1.36.1)友情提供下载地址VScode官网下载。强烈推荐VScode,比Pycharm好用得多得多得多,因为它是轻量级的!下载只需要几十M!
3.有一台远程可用的服务器
配置步骤:
1.在本地配置服务器的免密登录
这样做的目的是,每次用VScode打开远程服务器的时候,就不用输入一些繁琐的IP、密码等一类的信息了。
1)cmd打开命令提示符
2)在cmd下输入
ssh-keygen -t rsa -b 4096
生成SSH密钥和公钥(如下图红框所示)
(我记得此后连敲三下Enter就完成了,密钥id_rsa和公钥id_rsa.pub文件都默认保存在(C:\User\用户/.ssh)文件夹下)
3)将公钥文件id_rsa.pub传到远程服务器的authorized_keys文件中
在cmd下输入⬇️:
SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here
scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"
* 解释一下:
第一行作用相当于设置变量名,REMOTEHOST设置格式为“你在服务器的用户名@服务器的ip地址”
例如我在服务器的用户名是“lpy”,远程服务器的ip为49.52.10.120,那么我的第一行代码就是
SET REMOTEHOST=lpy@49.52.10.120
第二行scp命令的详细知识可以参考scp使用说明,它是Linux系统下基于ssh登陆进行安全的远程文件拷贝命令。知道这条命令的作用之后,我们就能知道前半部分是本地公钥文件的位置,后半部分是远程服务器端当前目录下名为tmp.pub的文件,我们要把本地的公钥拷贝到这个临时文件里。
%USERPROFILE%就是本地主机的用户名,在C:\Users这里找,%REMOTEHOST%是我们刚刚已经SET过的哦,就不用管它啦。
至此我们在命令提示符这里的工作已经全部完成啦,是不是很简单!!接下来我们继续哦~
2.VScode上的配置
1)首先打开已经下载好的VScode,下载插件Remote-SSH,步骤如下。
插件下载完毕后,我们可以发现,功能列多了一个图标
2.同时按Ctrl+Shift+p显示如下
我们选第一行的内容得到下面的页面,继续选择第一行内容
我们可以得到config文件,内容如下
Host name-of-ssh-host-here
User your-user-name-on-host
HostName host-fqdn-or-ip-goes-here
举个例子,我的设置为
保存即可(现在可以看到你配置的机器啦 csffm2)
3)点击红框处的图标
等待VS Code建立连接后就可以通过File > Open或File > Open Workspace直接打开远程机器上的文件或文件夹进行开发调试啦~
左下角表面我已经连接成功
中间方框就是我服务器上的项目,完成!Yeap!!补充一点就是,师兄说VScode这里建立的是服务器端的一个映射,也就是说这里的环境是服务器端的,你在服务器端下载的所有开发包,在VScode这里都是可以用的,而且如果你之后还会在VScode下载其他包的话,服务器端也是会有的。
参考链接:https://code.visualstudio.com/docs/remote/troubleshooting#_installing-a-supported-ssh-client
VScode里面,若左边工具栏没有了小电脑的标志最好的解决办法就是uninstall后install,因为插件很小所以这样的操作是最快最省事儿的!Python也是,如果解释器找不到了就重装一下。
来源:https://blog.csdn.net/weixin_40607008/article/details/98471293
![](https://www.aspxhome.com/images/zang.png)
![](https://www.aspxhome.com/images/jiucuo.png)
猜你喜欢
- 如果需要对列表中的每个元素执行相同操作,这时就需要遍历列表的所有元素。books=['半生缘','往事并不如烟
- 据国外媒体报道,相较于IE8浏览器,微软最新一代浏览器IE9的最大改进就是硬件加速HTML5。微软承诺,通过利用IE9中的硬件加速功能,开发
- 这篇文章阐述的是一种函数式编程(functional-programming)设计模式,我称之为惰性函数定义(Lazy Function D
- 代码如下:function FSOlastline(filename) dim fso,f,temparray
- 和大多数的语言脚本一样,学习ASP最好的方法就是亲身尝试ASP,使用你自己的系统安装PWS或者IIS。你可以边学习边在你自己的服务器上测试A
- 在 jupyter notebook参数化运行python 时,怕输出太多文件太大,想及时清除 notebook 的输出。在别人代码里看到用
- Selenium 封装了现成的文件上传操作。但是随着现代前端框架的发展,文件上传的方式越来越多样。而有一些文件上传的控件,要做自动化控制会更
- Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。1)
- 一、安装pip install xlwt二、创建表格并写入import xlwt# 创建一个workbook并设置编码workbook =
- 1、python代码实现图片分割成九宫格需要包含的库,没有下载安装的,需要自己安装哦。实现原理很简单,就是用PIL库不断画小区域,切下来存储
- 本文通过一个实际的散点图案例,展示了如何使用pyqt5嵌套一个pyecharts图层的方法,通过这个技巧,可以在pyqt5的框架中也实现精美
- 俺比较笨,对太专业的书一直不感冒,看了就想睡觉。最近李明同学传了本“大话设计模式”电子版。偶然翻了翻,感觉还满通俗的,正适合我这样的懒人学习
- 最近在学习关于Python数据分析与挖掘方面的知识,在学习到Python数据分析工具方面时,需要安装一些第三方扩展库来增强Python的数据
- 现在流行的静态博客/网站生成工具有很多,比如 Jekyll, Pelican, Middleman, Hyde 等等,StaticGen 列
- 五子棋还是有很多大佬发的,今天我也发一篇萌新写的小五子棋,这个是终端版的,如果有问题请大家指出,我去修改代码如下:screen = []sc
- 0.引言利用python开发,借助Dlib库捕获摄像头中的人脸,提取人脸特征,通过计算欧氏距离来和预存的人脸特征进行对比,达到人脸识别的目的
- 常用目标检测模型基本都是读取的PASCAL VOC格式的标签,下面代码用于生成VOC格式的代码,根据需要修改即可:from lxml imp
- Django是一个基于Python Web框架的高级Web框架,允许快速开发和干净,务实的设计。今天,我们将创建一个待办事项应用程序,以了解
- 在这篇文章中,我们将分析一个网络爬虫。网络爬虫是一个扫描网络内容并记录其有用信息的工具。它能打开一大堆网页,分析每个页面的内容以便寻找所有感
- 实例如下所示:# -*-coding:utf-8-*-import osfile_obj = open("test2.txt&qu