VS Code SSH 远程连接服务器及坑点解决

news2025/1/17 3:49:26

背景

Linux服务器重装了一下,IP没有变化,结果VS Code再重连的时候就各种问题,导致把整个流程全部走了一遍,留个经验帖以备查看

SSH

首先确保Windows安装了ssh,通过cmd下ssh命令查看是否安装了。

在这里插入图片描述

没安装,跳转安装Windows下的ssh

对应的,也需要Linux安装ssh,本文是Ubuntu系统,使用以下命令安装:

sudo apt update
sudo apt install openssh-server

启动ssh服务,并验证是否开启:

sudo systemctl start ssh
sudo systemctl status ssh

在这里插入图片描述

密钥

在Windows上打开命令行窗口(win+r输入cmd),然后输入: ssh-keygen,接着一路按回车键即可。

在这里插入图片描述
在.ssh目录下生成了公钥私钥

在这里插入图片描述

把公钥配置到Linux服务器,连接Linux服务器,然后cd到家目录或者root根目录(用哪个用户登录就去哪个目录),然后cd到.ssh文件夹(没有就创建一个),接着创建authorized_keys文件。

mkdir .ssh(没有该目录,创建)
vim authorized_keys

将windows中公钥信息复制到该文件中,保存关闭。切记不要把ssh-rsa复制进去,只复制下面的内容。

在这里插入图片描述

VS Code

默认已经下载好Remote-SSH插件,然后找到VS Code左下角设置-扩展-Remote-SSH,将config文件路径填进去(就是上面Windows中.ssh文件夹中的config文件)。

在这里插入图片描述

然后按F1,输入:ssh,连接主机

在这里插入图片描述
接着输入:ssh root@192.168.xxx.xxx,后面是linux服务器的ip地址,root是用户名,然后进行连接。

打开VS Code,然后按F1,然后输入ssh,打开配置文件

在这里插入图片描述
在这里插入图片描述

之后就会出现远程连接的标识,直接连接即可。

在这里插入图片描述

坑点

重装系统IP不变,Host key verification failed. 过程试图写入的管道不存在。

原IP地址的linux服务器成功用SSH连接过,后来因某些原因,Linux服务器重装了,但IP依旧保留不变。原因是VS Code读了旧缓存,但是你的系统已经是新的了。

部分报错如下:

> Someone could be eavesdropping on you right now (man-in-the-middle attack)!
> It is also possible that a host key has just been changed.
> The fingerprint for the ED25519 key sent by the remote host is
> SHA256:z6+hBVhvhl5CJHb7duA8ku3nq3ZiRrhWv89SIEgjDwY.
> Please contact your system administrator.
> Add correct host key in C:\\Users\\dell/.ssh/known_hosts to get rid of this message.
> Offending ECDSA key in C:\\Users\\dell/.ssh/known_hosts:2
> Host key for 10.xxx.xxx.xxx has changed and you have requested strict checking.
> Host key verification failed.
> 过程试图写入的管道不存在。

可以看到C:\Users\dell/.ssh/known_hosts中确实将目标linux服务器列为known_host,进入到特定文件中,如下如所示的known_hosts文件和known_hosts.old,找到该ip对应的行,将其删除,再进行连接尝试。

在这里插入图片描述

Resolver error: Error: 无法安装 VS Code 服务器 . No space left on device

部分报错如下:

[20:03:55.990] > scp: /home/test/.vscode-server/vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz: No space left on device 
> vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz             100% 8752KB  22.5MB/s   00:00     
> vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz.done          0%    0     0.0KB/s   --:-- ETAscp: /home/test/.vscode-server/vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz.done: No space left on device

单纯的服务器磁盘不足 ,使用以下命令看空间,增大磁盘容量。很明显,/dev/sda5空间都炸了,需要扩展根目录空间。

test@ubuntu:~/Desktop$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           791M  2.0M  789M   1% /run
/dev/sda5        20G   19G     0 100% /
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/loop0       64M   64M     0 100% /snap/core20/2264
/dev/loop1      128K  128K     0 100% /snap/bare/5
/dev/loop3      313M  313M     0 100% /snap/code/161
/dev/loop2      312M  312M     0 100% /snap/code/159
/dev/loop4       64M   64M     0 100% /snap/core20/2318
/dev/loop5       75M   75M     0 100% /snap/core22/1380
/dev/loop7      350M  350M     0 100% /snap/gnome-3-38-2004/143
/dev/loop6      506M  506M     0 100% /snap/gnome-42-2204/176
/dev/loop11      39M   39M     0 100% /snap/snapd/21759
/dev/loop8      347M  347M     0 100% /snap/gnome-3-38-2004/119
/dev/loop10      46M   46M     0 100% /snap/snap-store/638
/dev/loop9       92M   92M     0 100% /snap/gtk-common-themes/1535
/dev/loop12      13M   13M     0 100% /snap/snap-store/1113
/dev/loop13      40M   40M     0 100% /snap/snapd/21184
/dev/sda1       511M  4.0K  511M   1% /boot/efi
tmpfs           791M   28K  791M   1% /run/user/1000

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1853442.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【STM32】STM32通过I2C实现温湿度采集与显示

目录 一、I2C总线通信协议 1.I2C通信特征 2.I2C总线协议 3.软件I2C和硬件I2C 二、stm32通过I2C实现温湿度(AHT20)采集 1.stm32cube配置 RCC配置: SYS配置: I2C1配置: USART1配置: GPIO配置&#…

图片覆盖攻击

点击劫持的本质是一种视觉欺骗。顺着这个思路,还有一些攻击方法也可以起到类似的作 用,比如图片覆盖。 一名叫 sven.vetsch 的安全研究者最先提出了这种 Cross Site Image Overlaying 攻击,简称 XSIO。sven.vetsch 通过调整图片的 style 使得…

中国港口年鉴(2000-2023年)

数据年限:2000-2023(齐全) 数据格式:pdf、excel 数据内容: 一、记述和反映了中国大陆江、海、河港口在深化改革、调整结构、整合资源、开拓经营、加快建设等方面所取得的成就和发展进程,香港特别行政区、澳…

动手学深度学习(Pytorch版)代码实践 -卷积神经网络-25使用块的网络VGG

25使用块的网络VGG import torch from torch import nn import liliPytorch as lp import matplotlib.pyplot as plt# 定义VGG块 # num_convs: 卷积层的数量 # in_channels: 输入通道的数量 # out_channels: 输出通道的数量 def vgg_block(num_convs, in_channels, out_channel…

MyBatis映射器:一对多关联查询

大家好,我是王有志,一个分享硬核 Java 技术的金融摸鱼侠,欢迎大家加入 Java 人自己的交流群“共同富裕的 Java 人”。 在学习完上一篇文章《MyBatis映射器:一对一关联查询》后,相信你已经掌握了如何在 MyBatis 映射器…

天气冷电脑不能启动找不到硬盘

https://diy.zol.com.cn/2004/0611/101994.shtml

es的检索-DSL语法和Java-RestClient实现

基本语法: GET /索引库名/_search {"query": {"查询类型": {"查询条件"}} }RestClient的导入在RestClient操作索引库和文档有介绍 查询所有: # 查询所有 GET /test/_search {"query": {"match_all"…

Linux操作系统段式存储管理、 段页式存储管理

1、段式存储管理 1.1分段 进程的地址空间:按照程序自身的逻辑关系划分为若干个段,每个段都有一个段名(在低级语言中,程序员使用段名来编程),每段从0开始编址。内存分配规则:以段为单位进行分配…

【高考选专业 | 家长篇】2024,计算机何去何从?小P老师带你看

目录 2024年,计算机相关专业还值得选择吗?1.行业竞争现状2.专业前景分析 2024年,计算机相关专业还值得选择吗? 随着2024年高考落幕,数百万高三学生又将面临人生中的重要抉择:选择大学专业。有人欢喜&#x…

2024最新版:C++用Vcpkg搭配VS2022安装matplotlib-cpp库

matplotlib-cpp是一个用于在C中使用matplotlib绘图库的头文件库。它提供了一个简单的接口,使得在C中创建和显示图形变得更加容易。这个库的灵感来自于Python的matplotlib库,它使得在C中进行数据可视化变得更加便捷。 matplotlib-cpp允许在C中使用类似Py…

linux使用docker部署kafka集群

1、拉取kafka docker pull wurstmeister/kafka docker pull wurstmeister/zookeeper 2、创建网络 docker network create app-kafka 3、启动zookeeper docker run -d \--name zookeeper \-p 2181:2181 \--network app-kafka \--restart always \wurstmeister/zookeeper …

Java基础的重点知识-06-String、Arrays、Math、static关键字

文章目录 String类(java.lang)static关键字Arrays类(java.uitl)Math类(java.lang) String类(java.lang) java.lang.String 类代表字符串。 特征: 字符串不变:字符串的值在创建后不能被更改。因为String对象是不可变的&#xff…

【2024德国签证】资金证明详解|从线上开户到签证申请超详细指南!

保证金介绍 1.什么是德国保证金(自保金 Sperrkonto)? 来自非欧洲国家的国际学生必须提供经济资金证明,以证明你能支持你在德国的生活和学习。 保证金用途:非欧盟国家的公民,需要签证来德国,必…

安徽理工大学2计算机考研情况,招收计算机专业的学院和联培都不少!

安徽理工大学(Anhui University of Science and Technology),位于淮南市,是安徽省和应急管理部共建高校,安徽省高等教育振兴计划“地方特色高水平大学”建设高校,安徽省高峰学科建设计划特别支持高校&#…

C++初学者指南第一步---13.聚合类型

C初学者指南第一步—13.聚合类型 文章目录 C初学者指南第一步---13.聚合类型1. 类型分类(简化)2. 如何定义和使用3. 为什么选择自定义类型/数据聚合?4. 聚合类型初始化5.混合6. 复制7. 值和引用的语义8.聚合的向量(std::vector)9.最令人烦恼的…

python使用pywebview打造一个现代化的可视化GUI界面

🌈所属专栏:【python】✨作者主页: Mr.Zwq✔️个人简介:一个正在努力学技术的Python领域创作者,擅长爬虫,逆向,全栈方向,专注基础和实战分享,欢迎咨询! 您的…

不使用ES,如何使用MySQL实现模糊匹配

1.业务场景 例如:我们实现一个公司的申请审批流程,整个业务流程涉及到两种角色,分别是商务角色与管理员角色,整个流程如下图所示: 核心流程总结为一句话:商务角色申请添加公司后由管理员进行审批。 商务在…

Android中如何动态的调整Dialog的背景深暗

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点 在 Android 开发中,当你使用 Dialog 或 DialogFragment 时,可以通过设置 Window 的背景变暗来突出它的可见性。这个效果…

数据虚拟化、Data Fabric(数据编织)的兴起,对数据管理有何帮助?

数字化时代,虚拟化(Virtualization)并不是一个很陌生的词汇,它是现代数据中心资源管理的核心技术之一,是对 IT 资源(如服务器、存储设备、网络设备等)的抽象,通过屏蔽 IT 资源的物理…

C语言入门4-函数和程序结构

函数举例 读取字符串&#xff0c;如果字符串中含有ould则输出该字符串&#xff0c;否则不输出。 #include <stdio.h>// 函数声明 int getLine(char s[], int lim); int strindex(char s[], char t[]);int main() {char t[] "ould"; // 要查找的目标子字符串…