所以,这是我的设置:我有计算机 A 和计算机 B,都运行 Ubuntu 20.01。每台计算机都有 openssh-server 工作得很好。昨天,我使用rsync将一个大文件从A复制到B,看起来没有任何问题(这是第一次使用rsync)。今天,我尝试通过 SSH 从 B 连接到 A,但出现“没有到主机的路由”错误。然后我尝试通过 SSH 从 A 到 B 连接,再次出现“没有到主机的路由”。然后,我在每台计算机上执行了: 并且没有给我带来任何问题。然后,我在两台电脑上做了一个:都成功了。然后,我做了一个:在两台计算机上尝试连接到另一台计算机,结果是:ssh [email protected]
ssh -T [email protected]
nmap -Pn -p22 192.168.xx.yy
PORT STATE SERVICE
nmap tested in A with IP of A: 22/tcp filtered ssh
nmap tested in A with IP of B: 22/tcp open ssh
nmap tested in B with IP of A: 22/tcp filtered ssh
nmap tested in B with IP of B: 22/tcp open ssh
真正让我烦恼的是,昨天,在使用 rsync 之前,ssh 连接工作得很好。文件已成功复制,并且两台计算机均已重新启动,因此我不知道是否有某些文件已损坏或类似的情况。我什至不确定 rsync 是否是导致问题的原因。可以肯定的是,在计算机 A 中,我做了以下操作:
sudo lsof -i -P -n | grep 192.168
我看到的唯一 IP 地址是来自 A 的 IP 地址。不确定这是否有帮助,但我只使用了一个 rsync 命令,即以下命令:
rsync -rvz -e 'ssh -p XXXX' --progress /PATH/TO/SOURCE/FILE [email protected]:/PATH/TO/DESTINATION/FILE
编辑:我不认为路径是问题,因为我从 /home/user 中的 dicerctory 运行 rsync,但为了披露,实际的 rsnc 命令是:
rsync -rvz -e 'ssh -p 2222' --progress ./someDB.sql [email protected]:/home/user/DBs
至于我运行命令的绝对路径是:
/home/user/DB/
答案1
回想一下,那rsync
是单程;即它有一个来源,和一个目的地。它似乎您可能所做的就是从您的文件中复制一些配置文件来源计算机(来自/etc
)到您的目的地电脑。
我什至不会尝试猜测这些可能是什么,因为您已经掩盖了命令中使用的实际选项rsync
,但猜测与网络配置有关(废话!)
现在这对你没有帮助,但根据我的经验,最有用整个rsync
曲目中的选项是--dry-run
.它实际上是一个“重来”。