我在WSL bash外壳中,试图通过ssh同步到远程云广播计算机(Debian)。但是,我一直收到协议不匹配错误。
一些研究表明,最常见的原因是外壳不干净,即:登录时会打印出一些东西的外壳。在远程计算机中,我将.hushlogin添加到了用户主目录,并且还向.bashrc添加了PS1 =“”以消除提示(每个地方的某些帖子)。
测试干净的外壳表明它确实是干净的。以下登录没有任何消息,甚至没有提示:
ssh -tt -i ~/id_rsa -F /dev/null -oStrictHostKeyChecking=yes -oUserKnownHostsFile=/mnt/c/Users/anonyuser/AppData/Roaming/GGP/ssh/known_hosts [email protected] -p 44722 --
以下显示log.out是用0个字节创建的:
ssh -tt -i ~/id_rsa -F /dev/null -oStrictHostKeyChecking=yes -oUserKnownHostsFile=/mnt/c/Users/anonyuser/AppData/Roaming/GGP/ssh/known_hosts [email protected] -p 44722 -- false > log.out
还有这个:
rsync -a -v -e "ssh -tt -i ~/id_rsa -F /dev/null -oStrictHostKeyChecking=yes -oUserKnownHostsFile=/mnt/c/Users/anonyuser/AppData/Roaming/GGP/ssh/known_hosts [email protected] -p 44722 --" lol.txt [email protected]:/home/cloudcast/
提供协议不匹配的版本。
与-vvvv一起运行显示此:
(Client) Protocol versions: remote=1752392034, negotiated=31
我已经尝试将sq命令中的-q和/或-2添加到ssh命令中,每处其他地方,但没有区别。
我检查了rsync版本,它们在远程和本地计算机上都是相同的:
rsync version 3.1.2 protocol version 31 Copyright (C) 1996-2015 by Andrew Tridgell, Wayne Davison, and others. Web site: http://rsync.samba.org/ Capabilities: 64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints, socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace, append, ACLs, xattrs, iconv, symtimes, prealloc
本地ssh版本为:OpenSSH_7.6p1 Ubuntu-4ubuntu0.3,OpenSSL 1.0.2n,2017年12月7日
远程ssh版本是:OpenSSH_7.4p1 Debian-10 + deb9u3,OpenSSL 1.0.2l,2017年5月25日
关于出什么问题的任何想法?
我在WSL bash外壳中,试图通过ssh同步到远程云广播计算机(Debian)。但是,我不断收到协议不匹配错误。一些研究表明,造成此问题的最常见原因是...
嗯,根据我上面的评论,我尝试了以下操作:rsync -a -vvvv -e "ssh -tt -i ~/id_rsa -F /dev/null -oStrictHostKeyChecking=yes -oUserKnownHostsFile=/mnt/c/Users/anonyuser/AppData/Roaming/GGP/ssh/known_hosts -p 44722" lol.txt [email protected]:/home/cloudcast/