安装gitolite时,我得到“/tmp/id_rsa.pub似乎不是一个有效的ssh pubkey文件”

时间:2013-05-27 16:43:05

标签: git gitolite

我正在尝试在CentOS linux服务器上安装git和gitolite用于我们的开发。到目前为止,除了使用此命令为gitolite定义管理员用户的步骤外,其他所有操作都已正常运行:

gitolite setup -pk /tmp/id_rsa.pub
FATAL: errors found but logfile could not be created
FATAL: /home/git/.gitolite/logs/gitolite-2013-05.log: No such file or directory
FATAL: die      '/tmp/id_rsa.pub' does not seem to be a valid ssh pubkey file

看起来像两个错误;在/home/git/中只有这些文件

.gitolite.rc
.bashrc
.bash_profile
.bash_logout

第二个(这似乎是问题)是pub_key无效。但是,根据git书,文件看起来很相似。我这样生成了它:

  1. 在我的电脑上安装git(不是服务器)

  2. 来自git bash:

  3. ssh-keygen.exe
    (default path)
    (no password)
    (no password)
    

    我通过名为WinSCP的程序将生成的.pub文件复制到服务器上的tmp目录。

    我做错了什么?我在谷歌找不到答案。

    PS。如果您需要更多信息,请告诉我。

2 个答案:

答案 0 :(得分:1)

确保/tmp/id_rsa.pub与您在PC上的一行完全相同,在一行中,行末没有^M(仅\n,而不是{ {1}})。

阅读gitolite setup help page,您应该使用admin的用户名命名您的公钥(在服务器的/ tmp上)。

  

首次运行时,您需要准备一个公钥文件(通常来自管理员的工作站)。
  如果主要的gitolite admin的用户名是“\r\n”,则此文件应命名为“alice”。然后,作为托管用户,运行:

alice.pub

答案 1 :(得分:1)

我也遇到了这个问题,并研究了gitolite的来源。代码基本上正在执行

ssh-keygen -l -f yourFile.pub

验证文件是否是有效的ssh-public key ...在我的机器上(OpenWRT路由器)未安装ssh-keygen。安装时使用:

opkg update
opkg install openssh-keygen

为我解决了这个问题。