我进行了大量搜索并测试了不同的解决方案,但都没有成功!
当我想要推送我的代码时,收到以下错误:
Warning: the ECDSA host key for 'git.mywebsite.ir' differs from the key for the IP address '164.138.23.11'
Offending key for IP in /home/alireza/.ssh/known_hosts:10
Matching host key in /home/alireza/.ssh/known_hosts:1
Are you sure you want to continue connecting (yes/no)? yes
每次推送更改时,我应该怎么做才能删除此消息?有什么想法吗?
答案1
它说:
/home/alireza/.ssh/known_hosts 中 IP 的违规密钥:10
因此,出于某种原因,你必须删除第十known_hosts 中的行。
运行此命令删除known_hosts中的第10行:
sed -i '10d' ~/.ssh/known_hosts
或者使用ssh-keygen
ssh-keygen -R git.mywebsite.ir
引自 男人
-R hostname Removes all keys belonging to hostname from a known_hosts file. This option is useful to delete hashed hosts (see the -H option above).
答案2
当我收到消息时:
/home/myusername/.ssh/known_hosts 中 IP 的违规密钥:12
注意行号 - 就我而言 -12
因此打开“known_hosts”文件并删除12-扔。
对我来说,这解决了这个问题。
注意,如果你找不到 .ssh 文件夹 -.ssh文件夹是隐藏的,为了从文件管理器中看到它 - 您必须“显示隐藏文件和文件夹”。在 Linux Mint 中(也可能在您的发行版中)在文件管理器中 - 有一个快捷方式可以显示/隐藏隐藏文件夹 -> Ctrl+H
干杯
答案3
您必须编辑您的 known_hosts 文件(位于 ~/.ssh/known_hosts)并删除与该地址相关的条目。