vscode ssh远程连接服务器的思考浅析

目录
  • 过往经验总结
  • 关于vscode
    • 与ssh有关的两个配置文件
    • 报错解决:ssh连接时提示管道不存在
      • 问题
      • 解决方案
      • 方案一:使用git中的ssh作为替代
      • 方案二:修改私钥文件权限
  • 各方式远程连接项目文件的性能对比
    • 现象
    • 原因分析

过往经验总结

注:笔者写本文的目的不是完整细致地描述连接的全过程,而是记录当中遇到的现象、问题,及为什么会产生这个问题的分析。所以部分过程会省略,或者默认读者都是很熟悉各种操作的。

使用ssh远程连接,要获知目标主机的ip地址,并使用正确的密码或密钥。

笔者之前曾尝试过用不同的工具来连接服务器。 其中,

  • putty和xshell本身就是支持多种连接协议的连接工具。 用它们连接很方便。输入密码就是尝试建立连接时输入用户名之后再输;输入密钥就是要找到该工具对应的配置入口。一些字体大小、发送请求时长之类的参数设置也可以直接在工具界面找到。
  • idea之类的IDE现在也有了remote ssh 的功能。这个ssh是IDE自带的。 它连接简单,傻瓜式操作。只需要在新建项目界面,点击远程连接的按钮,一步步往下就成功了。 但它有个特点,就是有点卡。这和它处理文件的机制有关系,后面会细说。

关于vscode

其实vscode本质上只是一个编辑器,它强大的功能依托于各种可安装的插件。 很多插件本质上就是将 已有 的功能在vscode中以另一种形式展现出来。

举个例子,小明还没有在本机安装git,那他安装的和git有关的插件是不会生效的。同理,vscode的ssh本质上是将电脑已有的ssh服务在vscode中呈现。如果连接不上,要么是插件本身有问题(基本排除,真有问题应该很多人给差评了),要么是本机的ssh服务有问题,要么是参数设置有问题。

与ssh有关的两个配置文件

.ssh/config 这是对单个ssh连接的配置信息,格式可参照如下:

Host <连接的主机名(可以自己取>
  HostName <主机ip地址>
  User <连接的用户>
  IdentityFile <认证文件,也就是密钥文件的路径>

settings.json 这是对vscode的全局配置,其中也可以加入ssh相关的内容,比如设置使用的ssh服务路径。

报错解决:ssh连接时提示管道不存在

问题

网上说是win10自带的openssh的问题。

我在cmd上尝试过直接使用该工具,发现会提示私钥文件权限太大,故禁止连接。

由此确认是本机ssh服务的问题

解决方案

方案一:使用git中的ssh作为替代

  • 找到该ssh的位置:在git中用 whereis ssh命令。(windows则进入git-bash来敲命令)
  • settings.json中加入如下一行: "remote.SSH.path":<git路径+git中ssh路径的拼接体>,

保存后重启vscode。

方案二:修改私钥文件权限

网上有博客文章介绍过具体操作,总结来说就是鼠标点按钮一步步找到入口然后设置目标主机对文件的访问权限,同时禁止其他用户的权限。不过我没有用这种方式,因为我对windows自带的openssh其实是不太放心的。

各方式远程连接项目文件的性能对比

现象

  • 同时打开多个putty/xshell终端以显示项目文件没问题
  • 同时用多个vscode窗口打开项目也没问题
  • 同时用IDE打开两个及以上项目文件会导致服务器死机
  • 一个ide,再来一个vscode也不行

原因分析

  • IDE比较耗性能,vscode更轻量
  • 两者对文件的同步方式不同。 当连接中断时,vscode上显示的当前项目文件也没有了,但是idea上的还在,只是改了之后不能同步到远程主机了。这说明,vscode只是将远程终端上的内容换种形式呈现出来,而idea则是在本地也备份了一份文件。

以上就是vscode ssh远程连接服务器的思考浅析的详细内容,更多关于vscode ssh远程连接服务器的资料请关注我们其它相关文章!

(0)

相关推荐

  • Vscode的SSH插件远程连接Linux的实现步骤

    最近在B站上看到Vscode可以远程连接Linux, 不仅有与linux一模一样的终端,而且写代码很舒服,所以尝试了一下远程连接. 首先,要先在Vscode中安装 “Remote-SSH”扩展(插件), 安装好之后,在工具栏会出现这个图标: 之后点击“+”,添加远程主机: 点击之后,会弹出一个框,要我们输入待连接的远程主机的用户名和IP地址:按格式输入,输入之后,回车键确认 如何查看Linux的IP地址: 方法一:进入Linux的设置(Setting) 方法二:在linux的终端输入一条指令 $

  • vscode ssh安装librosa处理音频的解决方法

    需要处理原始的音频,所以给服务器的环境安装librosa的包 pip install librosa 直接pip install librosa不报错,但是执行import librosa的py文件还是会报错:OSError: sndfile library not found  查了下, 1.让安装libsndfile,pip之后直接报错了 2.解决方法:换个librosa的版本 : pip install librosa==0.6.0 这个是可以安装成功的  但是再次执行import lib

  • Win10下配置VScode远程开发ssh-remote(免密登录)

    目录 问题背景: 环境准备: 配置步骤: 1.在本地配置服务器的免密登录 2.VScode上的配置 问题背景: 在开发或者做实验的过程中,我们经常会用到远程服务器或者Github的项目,而我服务器上的项目只能在Jupyter Notebook上编写(或许可以在其他IDE上写,但我不知道).而我们喜欢用的IDE比如Pycharm.轻量级的VScode,如何在本地的IDE上使用服务器的项目且快速.方便地写代码呢?这就是今天要详细介绍的VScode配置免密ssh+remote,一旦连接成功,我们就可以

  • VSCode远程SSH免密登录配置实现

    最近更新了VS Code之后,发现Remote-ssh拓展里的端口转发功能没了,很伤心,在探索的同时,顺手配置了一下VS Code ssh免密登录,以省去每次连接远程文件夹时输入两次密码的烦恼. 网上教程很多,但是很多没有给出细节,对于新手不友好,本文旨在通俗地介绍配置方法. 关键词:VS Code:vscode:ssh:远程开发 本次教程建立在VS Code+Remote-SSH插件开发环境.本地环境是Windows,远程环境是Linux的普通用户,非root. 第一步:本地 打开C:\Use

  • VSCode使用ssh密钥免密远程登录服务器的方法

    目录 1. 使用ssh密钥免密远程登录服务器 2. 配置解释器 1. 使用ssh密钥免密远程登录服务器 如果你还未曾成功远程登陆过服务器,下面这篇博客或许对你有帮助 如果你成功远程登陆过服务器,Let's start! 1. 在VSCode的terminal中输入 ssh-keygen 一直按回车,直到出现: 这个时候你会拥有一对私钥和公钥,路径为: C:\Users\user_name\.ssh\id_rsa C:\Users\user_name\.ssh\id_rsa.pub 如果没有在上面

  • vscode ssh远程连接服务器的思考浅析

    目录 过往经验总结 关于vscode 与ssh有关的两个配置文件 报错解决:ssh连接时提示管道不存在 问题 解决方案 方案一:使用git中的ssh作为替代 方案二:修改私钥文件权限 各方式远程连接项目文件的性能对比 现象 原因分析 过往经验总结 注:笔者写本文的目的不是完整细致地描述连接的全过程,而是记录当中遇到的现象.问题,及为什么会产生这个问题的分析.所以部分过程会省略,或者默认读者都是很熟悉各种操作的. 使用ssh远程连接,要获知目标主机的ip地址,并使用正确的密码或密钥. 笔者之前曾尝

  • vscode远程开发使用SSH远程连接服务器的方法「内网穿透」

    目录 1.安装OpenSSH 2.vscode配置ssh 3. 局域网测试连接远程服务器 4. 公网远程连接 4.1 ubuntu安装cpolar 4.2 创建隧道映射 4.3 测试公网远程连接 5. 配置固定TCP端口地址 5.1 保留一个固定TCP端口地址 5.2 配置固定TCP端口地址 5.3 测试固定公网地址远程 远程连接服务器工具有很多,比如XShell.putty等,可以通过ssh来远程连接服务器,但这用于写代码并不方便,可能需要现在本地写好代码后再将源代码传送到服务器运行.服务器上

  • Python3 SSH远程连接服务器的方法示例

    下载paramiko 首先,我的windows系统上有python2和python3.使用下面命令切换到python3: activate py3 接着使用下面命令下载相关模块: pip install ecdsa pip install Crypto pip install paramiko 连接服务器操作: # -*- coding: utf-8 -*- import paramiko # 服务器相关信息,下面输入你个人的用户名.密码.ip等信息 ip = "" port = 22

  • vscode 远程连接服务器docker容器的设置方法

    目录 拉取镜像 运行镜像(产生一个容器) 启动容器 进入容器 查看所有镜像 退出容器 重启容器 查看所有容器 删除容器 批量删除docker中已经停止的容器 vscode通过ssh远程连接服务器中的容器 拉取镜像 docker pull [options] name [:tag] 表示从仓库拉取镜像 options是参数 tag是版本 运行镜像(产生一个容器) docker run [options] image [:tag] [command] [arg-] 运行一个容器 以镜像为模版创建容器

  • 解决阿里云ssh远程连接短时间就会断掉的问题

    问题重现 阿里云服务器,使用Finalshell远程连接,在操作中没有出现任务异常,只要远程连接过程中没有了操作,过一会服务器就会断开.出现无法在输入框里敲入命令,需要关掉当前窗口重连. 问题分析 一般这种问题,我们先检查finalshell本身是否有问题,我们可以打开xshell,远程连接阿里云,发现xshell依旧会有断开的情况. 那我们就排除了是软件的问题,接下来要排查ssh服务,是否是sshd配置文件做了一些限定. 问题解决 1. 打开sshd的配置文件 [root@ecs-c13b ~

  • vscode通过Remote SSH远程连接及离线配置的方法

    安装 1.先安装vscode,然后在扩展中搜索Remote SSH插件并安装. 2.我要连接远程Ubuntu系统的服务器,所以需要在服务器上安装ssh并配置:     1)安装ssh服务端:apt-get install openssh-server     2) 确认ssh-server是否启动:ps -e | grep ssh     3) 如果ssh没有启动,则需要启动ssh-server:/etc/init.d/ssh start     4) 如果ssh启动了,重启一下:/etc/in

  • VSCode远程连接服务器报错:Could not establish connection to

    目录 报错信息: 解决方法: 假设你已经做好了如下配置和尝试 在Extensions中安装好了Remote -SSH 添加了你要访问的服务器ip地址等信息,并拥有了一个config文件(如下图) 请记住这个config文件的路径,一般为"C:\Users\user_name\.ssh\config" 于是你开始尝试连接服务器,选择了最上方下拉菜单中的Linux/Windows之后,不幸失败了 报错信息: 出现Could not establish connection to "

  • 分享VSCOCE远程连接服务器的一次错误记录(推荐)

    记录这个问题的目的是希望能帮助到遇到相同问题的人,自己也留个记录. 背景 这个问题的背景是这样的,工作当中android源码是放在公司服务器上的,这样看代码就不是很方便,于是就是用了VSCODE的ssh登录功能,比较方便,图形化的编辑查看服务器的代码,就跟在本地查看修改是一样的,很方便. 上两张图看一下 错误现象 忘记截错误图了,实际就是连接失败 错误引起 平时用着都没有问题突然就连接不上了,我通过putty登录到服务器,df -h查看硬盘存储空间,发现硬盘又满了,由于之前经历过服务器空间不足,

  • 详解vscode实现远程linux服务器上Python开发

    最近需要训练一个生成对抗网络模型,然后开发接口,不得不在一台有显卡的远程linux服务器上进行,所以,趁着这个机会研究了下怎么使用vscode来进行远程开发. (1)在windows系统命令行下运行命令:ssh-keygen, 一路回车,将会在C:\Users\用户名.ssh目录下生成两个文件:id_rsa和id_rsa.pub. 前者是私钥,后者是公钥.如下所示: (2)将公钥文件的内容拷贝到远程linux服务器需要免密登录的用户家目录内的.ssh目录内,重命名为authorized_keys

  • VSCode如何远程连接Linux教程(密钥的使用)

    目录 1.VSCode远程连接步骤 2.密钥的使用 1.配置密钥 2.密钥基本使用 3.配置密钥config VSCode在远程连接Linux时,怎么连接,是否需要密钥,以下进行记录讲解. 1.VSCode远程连接步骤 1.安装插件 打开VSCode后,使用快捷键 Ctrl+Shift+X 或者使用如下图标,在里面搜索 ssh,进行安装 2.配置远程服务器 安装后,会出现左下角那个按钮,点击会出现右边的选项,在 设置中进行远程服务器的配置.  3.配置 config 的文件 选择第一行,出现如下

随机推荐