一、一堆废话
之前在Windows上写代码又反复上传到服务器,于是想使用sshfs将Linux文件系统直接挂载Windows,这样省区同步的麻烦。
当我在命令行上一切准备就绪,且弹出输入密码后,兴高采烈的输入后,居然弹出了...
xxx@xxx.xxx.xxx's password:
read: Connection reset by peer
我真的是瞬间茫然,网上很多说使用-o参数解决,但我压根就是没啥作用。
突然,灵机一现,Windows的ssh是啥时候装上去的,于是对各端版本就行查看。
#Linux服务器:
xxx@xxx.xxx.xxx:~$ ssh -V
OpenSSH_8.2p1 Ubuntu-4ubuntu0.5, OpenSSL 1.1.1f 31 Mar 2020
#Windows(实际Win11):
C:\Users\xxx> ssh -V
OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2
Windows上的为何是这版本。突然想到sshfs不是自带了ssh,于是查看了他的版本:
C:\Users\xxx>ssh -V
OpenSSH_8.4p1, OpenSSL 1.1.1f 31 Mar 2020
好像还行,于是到了最终解决方案。
二、我的最终解决方案----改环境变量。
将sshfs目录写到新环境变量,为兼容原先Windows的openssh中除ssh外的其他功能,将Windows的openssh调到sshfs环境变量下面。
最后,重启电脑。重复之前sshfs连接操作即可。
三、最终总结:Linux服务器和Windows的openssh版本问题,可以使用sshfs自带的ssh版本。