为什么这个 scp 命令会创建一个上一层的目录?

为什么这个 scp 命令会创建一个上一层的目录?

我正在尝试通过 ssh 将文件从一台计算机复制到另一台计算机。两台机器都是 Ubuntu 服务器。两台机器都交换了密钥,以便无需密码即可相互登录。

我的命令如下所示(当然,出于隐私原因更改了详细信息):

scp -i /var/www/place/.ssh/id_rsa file.tar.gz [email protected]:directoryName/file.tar.gz

但是,每次运行它时,我都会收到此错误:

Could not create directory '/var/www/.ssh'.
Host key verification failed.
lost connection

该命令似乎scp正在尝试创建一个名为 的.ssh上一级目录place

这里发生了什么? scp 是否需要创建某种临时目录才能执行?

运行该命令的用户帐户在 /var/www/place 中具有读/写权限,但在 /var/www 中没有读/写权限,那么如何运行此 scp 命令呢?

(请注意,我对 Linux 命令行的经验不是很丰富,所以请让答案冗长而简单。感谢您的理解。)

答案1

该问题与您设置的公钥身份验证无关。除了您的私钥和公钥之外,SSH 还会将您连接到的每个主机的主机密钥存储在 ~/.ssh 目录中名为known_hosts 的文件下。您看到的错误来自 SSH 最初创建此文件的尝试。

相关内容