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

2024-06-24 03:36

本文主要是介绍VS Code SSH 远程连接服务器及坑点解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景

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

这篇关于VS Code SSH 远程连接服务器及坑点解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1089060

相关文章

IDEA和GIT关于文件中LF和CRLF问题及解决

《IDEA和GIT关于文件中LF和CRLF问题及解决》文章总结:因IDEA默认使用CRLF换行符导致Shell脚本在Linux运行报错,需在编辑器和Git中统一为LF,通过调整Git的core.aut... 目录问题描述问题思考解决过程总结问题描述项目软件安装shell脚本上git仓库管理,但拉取后,上l

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

解决docker目录内存不足扩容处理方案

《解决docker目录内存不足扩容处理方案》文章介绍了Docker存储目录迁移方法:因系统盘空间不足,需将Docker数据迁移到更大磁盘(如/home/docker),通过修改daemon.json配... 目录1、查看服务器所有磁盘的使用情况2、查看docker镜像和容器存储目录的空间大小3、停止dock

idea npm install很慢问题及解决(nodejs)

《ideanpminstall很慢问题及解决(nodejs)》npm安装速度慢可通过配置国内镜像源(如淘宝)、清理缓存及切换工具解决,建议设置全局镜像(npmconfigsetregistryht... 目录idea npm install很慢(nodejs)配置国内镜像源清理缓存总结idea npm in

idea突然报错Malformed \uxxxx encoding问题及解决

《idea突然报错Malformeduxxxxencoding问题及解决》Maven项目在切换Git分支时报错,提示project元素为描述符根元素,解决方法:删除Maven仓库中的resolv... 目www.chinasem.cn录问题解决方式总结问题idea 上的 maven China编程项目突然报错,是

在Ubuntu上打不开GitHub的完整解决方法

《在Ubuntu上打不开GitHub的完整解决方法》当你满心欢喜打开Ubuntu准备推送代码时,突然发现终端里的gitpush卡成狗,浏览器里的GitHub页面直接变成Whoathere!警告页面... 目录一、那些年我们遇到的"红色惊叹号"二、三大症状快速诊断症状1:浏览器直接无法访问症状2:终端操作异常

mybatis直接执行完整sql及踩坑解决

《mybatis直接执行完整sql及踩坑解决》MyBatis可通过select标签执行动态SQL,DQL用ListLinkedHashMap接收结果,DML用int处理,注意防御SQL注入,优先使用#... 目录myBATiFBNZQs直接执行完整sql及踩坑select语句采用count、insert、u

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Java服务实现开启Debug远程调试

《Java服务实现开启Debug远程调试》文章介绍如何通过JVM参数开启Java服务远程调试,便于在线上排查问题,在IDEA中配置客户端连接,实现无需频繁部署的调试,提升效率... 目录一、背景二、相关图示说明三、具体操作步骤1、服务端配置2、客户端配置总结一、背景日常项目中,通常我们的代码都是部署到远程

MyBatis Plus大数据量查询慢原因分析及解决

《MyBatisPlus大数据量查询慢原因分析及解决》大数据量查询慢常因全表扫描、分页不当、索引缺失、内存占用高及ORM开销,优化措施包括分页查询、流式读取、SQL优化、批处理、多数据源、结果集二次... 目录大数据量查询慢的常见原因优化方案高级方案配置调优监控与诊断总结大数据量查询慢的常见原因MyBAT