为什么 ssh-keygen 会创建空白的 .pub 文件?

为什么 ssh-keygen 会创建空白的 .pub 文件?

几个月前,我曾经ssh-keygen创建过id_rsa/id_rsa.pub用于 Github,一切顺利。 (我在本地使用 OSX Sierra,10.12.6,但我在远程的 Linux 终端上生成密钥对。我不知道 Linux 的具体风格。)

我需要为不同的存储库创建一个新的密钥对,因此我重复了该过程并创建了id_rsa_2/ id_rsa_2.pub。一切似乎都很顺利,但当我真正尝试获取我的公钥时,却一无所获。

所以如果我输入

cat ~/.ssh/id_rsa.pub 

然后我得到了我期望的输出。

但如果我进入

cat ~/.ssh/id_rsa_2.pub 

然后我什么也没得到。终端只是前进到下一行而没有任何输出。我现在已经生成了id_rsa_2、、甚至。在每种情况下,似乎运行顺利,并在创建过程中提供所有预期的输出。我可以看到id_rsa_3和文件准确地位于我期望的位置。(其中 n 在 {2, 3, 4, 5} 中)。id_rsa_4id_rsa_5ssh-keygenid_rsa_nid_rsa_n.pub

但每当我尝试检索公钥时,我都一无所获。

我通过 Google 找到的唯一问题是空间不足。但是,我已经确认我只使用了几个兆的用户空间(而我可用的空间远不止这些)。所以这不是空间问题。那么...为什么给ssh-keygen我的是空白的 .pub 文件?

我正在运行的确切命令是:

ssh-keygen -t rsa -C "my email address"

答案1

事实证明,这是另一个因空间不足而导致问题的情况。由于我的主目录中没有剩余空间,因此 ssh-keygen 只能输出空文件。一旦我清理了一些空间,它就可以正常工作了。

相关内容