我以前从未使用过 bash 语言(scp -r 是 bash 的一部分吗?),我想将一个 C++ Xcode 文件复制到另一个 IDE(更具体地说是用于机器人控制器)。那个 C++ 文件位于一个文件夹中,我听说您使用scp -r
文件夹?所以我尝试使用它: 主机密钥是控制器的 IP 地址,我不太清楚是什么,有人告诉我使用它。scp -r Desktop/oroni-club/gyro.cpp [email protected]:"[path]"
"[path]"
我也不断收到此错误:Host key verification failed. lost connection
,并且它最终无法将 C++ 文件复制到其他 IDE。
我不确定该怎么做以及如何将 C++ 文件复制到这个其他非 C++ IDE(这个只提供 C 和 Python,但你仍然可以通过终端使用 bash 添加 C++ 文件),我对此完全陌生...
答案1
主机密钥是一个 RSA(或 DSA,或椭圆曲线)公钥,ssh/scp 服务器(运行 sshd 的服务器)通过它向您的 ssh/scp 客户端验证自身身份,因此您知道自己没有连接到冒名顶替的服务器。首次连接到新服务器时,ssh/scp 客户端会询问您是否要接受提供的主机密钥。如果您接受,它将被存储起来,~/.ssh/known_hosts
以便将来用于验证该主机。
如果您确定没有遇到中间人攻击或其他冒名顶替者,您可以清除之前为该主机名或 IP 地址缓存的主机密钥,方法是编辑~/.ssh/known_hosts
以删除该主机的行,或者您可以使用ssh-keygen -R hostname
删除它。如果您始终通过 IP 地址连接,则使用该 IP 地址而不是主机名作为 的参数ssh-keygen -R …
。