7

CentOS 5.9 サーバーに gitolite をインストールしています。git ユーザーを作成しsu - git、公開鍵を ~/.ssh/ ディレクトリに入れることができた後、github から gitolite リポジトリのクローンを作成し、実行しgitolite/install -lnました。次のステップは、gitolite セットアップを実行することです。

git@hostname [~]# gitolite setup -pk $HOME/.ssh/micha.pub
Initialized empty Git repository in /home/git/repositories/gitolite-admin.git/
Initialized empty Git repository in /home/git/repositories/testing.git/
FATAL: fingerprinting failed for '/tmp/Q3pnE4WVbu'

Google検索とここでの検索は、このFATALエラーの解決に役立たず、今は困っています。

セットアップを実行する前に、gitolite.conf ファイルをカスタマイズしておく必要がありますか? http://gitolite.com/gitolite/progit.htmlの指示に従っています。私のような初心者にとっては、通常の gitolite のドキュメントよりも理解しやすいからです。ただし、これらの手順では、.conf ファイルのカスタマイズについては言及されていません。


更新: 新しいキーを生成しようとしましたが、まだ失敗します:

git@hostname [~]# ssh-keygen -t rsa -C "Gitolite Admin Access (not interactive)" -P "" 
Generating public/private rsa key pair.
Enter file in which to save the key (/home/git/.ssh/id_rsa): /home/git/.ssh/micha
/home/git/.ssh/micha already exists.
Overwrite (y/n)? y
Your identification has been saved in /home/git/.ssh/micha.
Your public key has been saved in /home/git/.ssh/micha.pub.
The key fingerprint is:
33:b6:62:8b:b9:58:07:7a:71:6a:02:a5:ff:7e:c3:3a Gitolite Admin Access (not interactive)
git@hostname [~]# gitolite setup -pk $HOME/.ssh/micha.pub
Initialized empty Git repository in /home/git/repositories/gitolite-admin.git/
Initialized empty Git repository in /home/git/repositories/testing.git/
FATAL: fingerprinting failed for '/tmp/pUKqewb66w'

混乱し$HOMEた場合に備えて、フルパスに置き換えてみました。su - gitssh のインストールに問題はありますか? このサーバーへの接続にsshを使用しているため、どうなるかわかりません。


更新: gitolite は、以前にセットアップしようとして失敗した公開鍵を保持していたことが判明しました。次に、すべてのリポジトリ、gitolite ソース ディレクトリ、~/bin のシンボリック リンク、および .gitolite ディレクトリを削除し、インストール プロセスを再度開始しました。github から gitolite リポジトリのクローンを作成し、以前に使用しようとした他のすべてのキーを削除した後、新しいキーを生成しました。それから私は走りgitolite install -ln、ついに

git@hostname [~]# gitolite setup -pk $HOME/admin.pub
Initialized empty Git repository in /home/git/repositories/gitolite-admin.git/
Initialized empty Git repository in /home/git/repositories/testing.git/
FATAL: fingerprinting failed for '/tmp/tsIx4cKWHj'

まだ失敗しています。

4

9 に答える 9

3

gitolite は、authorized_keys ファイルを含む .ssh ディレクトリ内のすべてのキーのフィンガープリントを作成しています。.ssh ディレクトリおよびauthorized_keys ファイルから、不要または破損したキーを削除します。

于 2013-04-24T04:09:57.980 に答える
2

私は同じ問題に遭遇しました。コピー&ペースト中に、キーの 1 つに改行を含めたことが判明しました。気づくのに時間がかかった…

于 2013-11-25T13:28:24.380 に答える
1

gitolite の Git 履歴を調べ始めるまで、すべてのキーの再生成、gitolite の再インストール、すべてのキー ファイルのクリアなどをすべて試しましたが、すべて成功しませんでした。

問題は、github & google.code リポジトリの master ブランチが壊れていたことです。指紋の問題が消えたので、最後の安定バージョン v3.6.4 をチェックアウトしました。これを悪用する最近のコミットを 1 つ見つけることができると思います。

于 2016-01-14T15:24:03.107 に答える
1

に述べたように、これは ssh キーが適切に生成されていないことを意味します。

試す:

ssh-keygen -t rsa -f "${H}/.ssh/micha" -C "Gitolite Admin access (not interactive)" -q -P ""

OP mwotton は、以前の ssh キーから ~/.ssh をクリアすることが解決策であると報告しています。
これは、ssh-authkeys.fp_file()関数がfindで呼び出されるためです。

chomp( my @pubkeys = `find keydir/ -type f -name "*.pub" | sort` );

そのため、すでに にあった以前の (破損している可能性がある) キーを取得できます~/.ssh

于 2013-04-22T18:34:45.293 に答える
0

gitolite を v2 から v3 にアップグレードし、インストールを実行して管理者キーをセットアップしました

次に、構成リポジトリを強制的にプッシュすると、すべての問題が修正されました。

于 2016-05-21T07:54:54.613 に答える
0

私にとっては、ユーザーとしてコマンドを実行しないことで機能しました。ユーザーアカウントを作成しました(そして、ログインできるアカウントである必要があることがわかりました...つまり、ではない)。gitoliterootgit/bin/false/etc/passwd

于 2014-11-02T05:40:24.027 に答える