问题 使用Git生成SSH密钥时出错:“没有这样的文件”


当我尝试生成SSH密钥时,我不断遇到同样的错误:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/konrad/.ssh/id_rsa):

在这里我按回车键。

Could not create directory '/home/konrad/.ssh'

然后我输入我的密码。

open /home/konrad/.ssh/id_rsa failed: No such file or directory.
Saving the key failed: /home/konrad/.ssh/id_rsa.

我曾尝试多次重新安装Git,但这没有帮助。我想可能是因为C:/ Users / Konrad应该是默认目录,而不是/ home。任何建议?


9555
2018-06-04 16:31


起源

你在窗户吗?您使用的是cygwin,还是一些gui安装程序?尝试使用存在密钥对时存在的目录(因此键入C:\ Users \ Konrad而不是按Enter键接受默认值)。 - Ben Taitelbaum
好吧,我不得不接受默认,猜测是因为我只键入了用户而不是C /用户 - Warpzit


答案:


在msysgit上,首先需要设置用户环境变量 HOME (在Windows中默认不设置)。

HOME 可以设置为您想要的任何目录,您只需要确保您有权在其中写入(并且该目录存在并且 .ssh 在它下面也存在)。


9
2018-06-04 16:56



谢谢;有用! - Konrad
奇怪的是,我从来没有在我的设置上设置env var。要么msysgit安装程序为我做了回复,或者它已经设置好了 - 这可以从msysgit安装程序中删除,因为git ...哦,也许是git 1.6.6-ish? - damianb
@Obsidian_:我怀疑任何安装程序会为你设置这种变量:太多潜在的副作用。在Windows上,您确实需要自己设置它。 - VonC
你如何设置HOME变量?我似乎设置为“/ h”,这可能是为什么我得到与OP相同的错误的问题。 - user1809923
@ user1809923 superuser.com/q/25037/141  stackoverflow.com/a/1493058/6309 - VonC


删除到命令行并键入:

ssh-keygen -t rsa

并按照提示进行操作。我相当确定 git正是为你而做的。


3
2018-06-04 17:08