当前位置:   article > 正文

VScode搭建远程Python环境_vscode远程python

vscode远程python

前言

之前一直使用jupyter lab在服务器上进行代码编写,今天尝试了一下使用VScode来进行远程代码编写,特此记录。

安装

首先安装Remote-ssh插件。
在这里插入图片描述
然后,使用Ctrl + Shift + P打开命令面板,输入connect to host,选择第一个命令:

在这里插入图片描述
选择Add New SSH Host
在这里插入图片描述
然后按提示输入远端地址和登录账户即可。

在这里插入图片描述
这里选择我们计算机用户名目录下的ssh配置文件,如果没有的话,需先将电脑的ssh功能打开,Win10功能中已支持ssh,可以很方便开启。参考:安装OpenSSH,link
在这里插入图片描述
然后右键选择连接即可。
在这里插入图片描述

解决VScode的Remote SSH使用Windows username而不是ssh_config文件中的username问题

在进行完如上配置后,我在第一次连接远端主机时一切正常。但后续添加其他远端节点时,发现VScode连接时自动使用Windows计算机自己的主机名而不是我配置在文件中的登录账户名。查找了一些资料后,找到了一个解决方法,记录如下:

首先,我们打开C:/Users/your_username/.ssh/config这个文件,然后把里面所有的Host后的名称加上我们的登录账户名。示例如下:

Host 10.10.10.1
  User usename
  HostName 10.10.10.1
  • 1
  • 2
  • 3

改为

Host usename@10.10.10.1
  User usename
  HostName 10.10.10.1
  • 1
  • 2
  • 3

这样修改之后就可以保证每次使用配置的账户名称进行登录。

免密登陆方法

以上配置好之后,每次连接远端主机都需要输入密码,十分麻烦。我们可以配置免密登录来方便连接。

首先,需要使用ssh-keygen -t rsa 在本地用户目录下(即C:/Users/your_username/.ssh/)生成一对密钥,id_rsa和id_rsa.pub。如果本地目录已经有该文件则不用在重新生成。可以参考 vscode避免每次ssh都输入密码

然后,我们将生成的id_rsa.pub文件中的内容追加到远端服务器的/home/username/.ssh/目录下的authorized_keys(如果没有需要自己创建)文件中。之后就可以实现免密登录。

‘Bad owner or permissions’ 以及 vscode"远程主机远程 ssh 过程试图写入的管道不存在"问题的解决

经过上述配置后,几天内我的VScode是正常的,但是由于电脑用户名设置为中文,导致了一些错误。于是在我将Windows用户名改回英文后,VScode一直连接不上。且终端中的报错信息一直为:‘Bad owner or permissions’ 以及 vscode"远程主机远程 ssh 过程试图写入的管道不存在"。

经过查找资料,发现是WIn10的OpenSSH有问题。解决方法为将系统环境变量里的

%SystemRoot%/openssh
  • 1

改为电脑上安装的git中的ssh路径,我的是:

D:\Program Files\Git\usr\bin
  • 1

参考

[1] Visual Studio Code Remote SSH uses Windows username instead of username in ssh_config, link
[2] win10 ssh 完美解决 ‘Bad owner or permissions’ 以及 vscode"远程主机远程 ssh 过程试图写入的管道不存在"问题, link

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/603373
推荐阅读
相关标签
  

闽ICP备14008679号