IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了),打开文件夹后切换文件夹。

简介: 本文介绍了如何使用VS Code通过Remote-SSH插件连接远程服务器进行代码开发,并与PyCharm进行了对比。作者认为VS Code在连接和配置多个服务器时更为简单,推荐使用VS Code。文章详细说明了VS Code的安装、远程插件安装、SSH配置文件编写、服务器连接以及如何在连接后切换文件夹。此外,还提供了使用密钥进行免密登录的方法和解决权限问题的步骤。

前言

一、链接服务器vscode和pycharm的对比

1、pycharm

  1. pycharm链接服务器需要专业版本,社区版本不行
  2. pycharm配置麻烦,不如vscode简单。
  3. 如果要链接多个服务器,不如vscode配置简单,pycharm每个都要重新配置,而vscode只需要配置C:\Users\feng\.ssh\config文件即可(本博文有说明)
  4. 但是开发习惯好用。debug方便。目前我也就发现这么一个优点了

2、vscode

  1. vscode 安装简单,使用插件即可链接服务器。
  2. 链接多个服务器,配置简单。
  3. debug相对麻烦一些,但是还好。

3、总结

推荐使用vscode。

二、VS Code的安装与下载

vscode 的全称是 Visual Studio
官网传送门:https://code.visualstudio.com/
下站列表传送门:https://code.visualstudio.com/Download
下载安装比较简单,不做演示

三、链接远程服务器

1、安装远程插件:Remote-SSH

打开vscode,在左边找到插件商店,搜索 ssh ,找到remote-ssh,也是下载次数最多的,进行下载安装。
在这里插入图片描述

下载完后,vscode的左边会出现电脑的小图标,如下所示:

在这里插入图片描述

2、写ssh配置文件

点击下图中的+号。

在这里插入图片描述

填写链接服务器内容。

在这里插入图片描述

如下所示:后面的IP换成你要链接的远程服务器IP即可。
在这里插入图片描述

点击回车,出现下图,继续回车,这里是链接ssh的配置文件。
保存之后,会将刚才的连接信息存储在 C:\Users\feng\.ssh\config

在这里插入图片描述

选中刚刚创建的目录,在左侧就可以看到远程服务器站点

在这里插入图片描述

点击下图设置按钮也可以对信息进行修改,也可以添加多个服务器配置,每添加一个,就会在左边列表增加一个。

在这里插入图片描述

选择第一个

在这里插入图片描述

下图就是ssh的配置文件了。

在这里插入图片描述

介绍一下参数:

Host name        # name值可以随意取
  HostName ip    # ip是服务器地址
  User 用户名    # 登录的用户名
  Port port       # 端口号,一般是22,我这里不是,按需填写

我一般会修改一下host,改为ip的后两个。

点击下左侧刷新,列表也会更新为 Host的值。

在这里插入图片描述

3、链接服务器

点击下图的箭头,就是进入服务器

在这里插入图片描述

下图,选择Linux

在这里插入图片描述

下图,点击 Coninue

在这里插入图片描述

下图,输入密码即可。

在这里插入图片描述

4、登录成功,打开文件夹

登录成功后,回到文件夹位置,需要手动打开,如下图所示。

在这里插入图片描述
剩下的按提示输入即可

在这里插入图片描述

到此完毕

四、打开文件夹后,切换文件夹

1、原因

上面第三章第四小节中选择打开了一个文件夹,但是突然想打开一个家目录的文件夹。此时应该怎么做呢?

2、 ‌通过命令面板重新选择文件夹

  1. 使用快捷键 Ctrl+Shift+P(Windows) 或 Cmd+Shift+P (Mac)打开 命令面板

    在这里插入图片描述

  2. 在命令面板中输入:File: Open Folder 并选择该命令,这将打开一个文件浏览器窗口,让你选择新的文件夹。

    在这里插入图片描述

  3. 选择你想要打开的新文件夹,并点击“打开”按钮。

  4. 可能会输入密码。输入即可

3、‌通过菜单选项重新选择文件夹‌:

  1. 在VS Code的菜单栏中选择 文件
  2. 在下拉菜单中选择 打开文件夹 。也可以使用快捷键 Ctrl+K 然后按 Ctrl+O (这两个快捷键需要连按,Ctrl不松手)。
  3. 在弹出的对话框中浏览并选择你想要打开的文件夹。
  4. 点击“选择文件夹”按钮确认你的选择。

在这里插入图片描述

五、vscode使用密钥免密登录

1、添加配置参数IdentityFile即可

加个参数,指向自己的密钥地址即可

Host custom_name
  HostName ip
  User user_name
  IdentityFile 密钥路径

2、报错

[14:59:57.719] Running script with connection command: "C:\Windows\System32\OpenSSH\ssh.exe" -T -D 64899 "16.86-feng" bash
[14:59:57.720] Terminal shell path: C:\Windows\System32\cmd.exe
[14:59:58.034] > Bad permissions. Try removing permissions for user: NT AUTHORITY\\Authenticated Users (S-1-5-11) on file D:/linux-miyao/16.86/id_1686.
> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
> @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
> Permissions for 'D:\\linux-miyao\\16.86\\id_1686' are too open.
> It is required that your private key files are NOT accessible by others.
> This private key will be ignored.
> Load key "D:\\linux-miyao\\16.86\\id_1686": bad permissions
> feng@192.168.16.86: Permission denied (publickey).
> 过程试图写入的管道不存在。
> ]0;C:\Windows\System32\cmd.exe
[14:59:58.034] Got some output, clearing connection timeout
[14:59:59.295] "install" terminal command done
[14:59:59.296] Install terminal quit with output: ]0;C:\Windows\System32\cmd.exe
[14:59:59.296] Received install output: ]0;C:\Windows\System32\cmd.exe
[14:59:59.296] Failed to parse remote port from server output
[14:59:59.297] Resolver error: Error: 
    at m.Create (c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:501230)
    at t.handleInstallOutput (c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:498552)
    at t.tryInstall (c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:623316)
    at async c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:582788
    at async t.withShowDetailsEvent (c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:586054)
    at async k (c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:579675)
    at async t.resolve (c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:583465)
    at async c:\Users\feng\.vscode\extensions\ms-vscode-remote.remote-ssh-0.113.1\out\extension.js:2:851126
[14:59:59.300] ------

3、完美解决

从你提供的日志信息来看,出现的问题是私钥文件权限设置得太宽松,这导致SSH连接尝试失败。以下是关键错误信息:

> Bad permissions. Try removing permissions for user: NT AUTHORITY\Authenticated Users (S-1-5-11) on file D:/linux-miyao/16.86/id_1686.
> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
> @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
> Permissions for 'D:\linux-miyao\16.86\id_1686' are too open.
> It is required that your private key files are NOT accessible by others.
> This private key will be ignored.
> Load key "D:\linux-miyao\16.86\id_1686": bad permissions

要解决这个问题,你需要修改私钥文件的权限,确保它只能被你自己的用户账户访问。以下是解决步骤:

a、打开命令提示符或PowerShell。

使用icacls命令来修改私钥文件的权限。以下命令将移除Authenticated Users对私钥文件的所有权限,并确保只有当前用户可以访问该文件:

icacls "D:\linux-miyao\16.86\id_1686" /remove "NT AUTHORITY\Authenticated Users"
icacls "D:\linux-miyao\16.86\id_1686" /inheritance:r
icacls "D:\linux-miyao\16.86\id_1686" /grant "你的用户名:(R)"

替换你的用户名为你登录Windows的用户名。

b、确认修改后的权限。你可以使用以下命令来检查权限是否正确设置:

icacls "D:\linux-miyao\16.86\id_1686"

输出应该只显示你的用户名有权限访问该文件。
在这里插入图片描述

c、尝试重新连接到远程服务器。

如果仍然遇到问题,确保你的私钥文件只有读取权限,并且只有所有者(你的用户账户)可以访问它。在某些情况下,你可能还需要确保父目录的权限设置也是安全的。
在进行权限修改操作时,请谨慎操作,确保不会意外地更改重要文件的权限。如果不确定如何操作,请咨询有经验的系统管理员。
密钥的权限如下
在这里插入图片描述

相关文章
|
4月前
|
IDE 网络安全 开发工具
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
本文介绍了如何在PyCharm专业版中连接远程服务器并配置远程Python环境解释器,以便在服务器上运行代码。
686 0
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
|
6月前
|
机器学习/深度学习 IDE 数据挖掘
使用VScode的几点感受,对比Pycharm、Jupyter优劣势
使用VScode的几点感受,对比Pycharm、Jupyter优劣势
450 5
|
6月前
|
计算机视觉 Python
opencv在pycharm不能自动补全代码
opencv在pycharm不能自动补全代码
49 0
|
21天前
|
弹性计算 数据挖掘 应用服务中间件
阿里云轻量应用服务器68元与云服务器99元和199元区别及选择参考
目前阿里云有三款特惠云服务器,第一款轻量云服务器2核2G68元一年,第二款经济型云服务器2核2G3M带宽99元1年,第三款通用算力型2核4G5M带宽199元一年。有的新手用户并不是很清楚他们之间的区别,因此不知道如何选择。本文来介绍一下它们之间的区别以及选择参考。
327 87
|
14天前
|
存储 弹性计算 应用服务中间件
阿里云轻量应用服务器出新品通用型实例了,全球26个地域可选
近日,阿里云再度发力,推出了首款全新升级的轻量应用服务器——通用型实例。这款服务器实例不仅标配了200Mbps峰值公网带宽,更在计算、存储、网络等基础资源上进行了全面优化,旨在为中小企业和开发者提供更加轻量、易用、普惠的云计算服务,满足其对于通用计算小算力的迫切需求。目前,这款新品已在全球26个地域正式上线,为全球用户提供了更加便捷、高效的上云选择。
114 27
|
5天前
|
机器学习/深度学习 人工智能 弹性计算
阿里云AI服务器价格表_GPU服务器租赁费用_AI人工智能高性能计算推理
阿里云AI服务器提供多种配置,包括CPU+GPU、FPGA等,适用于人工智能、机器学习和深度学习等计算密集型任务。本文整理了阿里云GPU服务器的优惠价格,涵盖NVIDIA A10、V100、T4等型号,提供1个月、1年和1小时的收费明细。具体规格如A10卡GN7i、V100-16G卡GN6v等,适用于不同业务场景,详情见官方页面。
50 11
|
6天前
|
存储 弹性计算 数据挖掘
阿里云服务器ECS通用算力型u1和ECS经济型e实例性能特点、使用及常见问题解答FAQ
阿里云ECS云服务器的经济型e实例和通用算力型u1实例深受开发者和中小企业青睐。e实例适合中小型网站、开发测试等轻量级应用,采用共享CPU调度模式,性价比高;u1实例则适用于中小型企业级应用,提供更高的性能保障和稳定性,支持固定CPU调度模式,计算性能更稳定。同等配置下,u1实例在网络带宽、IOPS等方面表现更优,价格也相对较高。个人用户可选择e实例,中小企业建议选择u1实例以确保业务稳定性。
|
2月前
|
机器学习/深度学习 人工智能 PyTorch
阿里云GPU云服务器怎么样?产品优势、应用场景介绍与最新活动价格参考
阿里云GPU云服务器怎么样?阿里云GPU结合了GPU计算力与CPU计算力,主要应用于于深度学习、科学计算、图形可视化、视频处理多种应用场景,本文为您详细介绍阿里云GPU云服务器产品优势、应用场景以及最新活动价格。
阿里云GPU云服务器怎么样?产品优势、应用场景介绍与最新活动价格参考
|
30天前
|
存储 运维 安全
阿里云弹性裸金属服务器是什么?产品规格及适用场景介绍
阿里云服务器ECS包括众多产品,其中弹性裸金属服务器(ECS Bare Metal Server)是一种可弹性伸缩的高性能计算服务,计算性能与传统物理机无差别,具有安全物理隔离的特点。分钟级的交付周期将提供给您实时的业务响应能力,助力您的核心业务飞速成长。本文为大家详细介绍弹性裸金属服务器的特点、优势以及与云服务器的对比等内容。
119 23
|
2月前
|
人工智能 JSON Linux
利用阿里云GPU加速服务器实现pdf转换为markdown格式
随着AI模型的发展,GPU需求日益增长,尤其是个人学习和研究。直接购置硬件成本高且更新快,建议选择阿里云等提供的GPU加速型服务器。
利用阿里云GPU加速服务器实现pdf转换为markdown格式

热门文章

最新文章