1

Railsアプリケーションのデプロイに取り組んでいます。

サーバーに Gitosis をセットアップしました。Git ユーザーが起動していて、既にサーバーに「デプロイ」ユーザーがいます! サーバー上のデプロイユーザーからローカルマシンへの「git clone」でした。Gitosis をセットアップした後、サーバー (git ユーザー) から「git clone」することもできます。

私が欲しいのは、サーバー内の「git clone」から「git clone」して「git」ユーザーから「deploy」ユーザーにすることです!

ここで写真の問題。

この問題がsshパーミッションなどにあることはすでに知っています。なぜなら、デプロイユーザーで「git clone」しようとすると、

Initialized empty Git repository in /home/deploy/some_folder/.git/
The authenticity of host '[178.xx.xx.xx]:30000 ([178.xx.xx.xx]:30000)' can't be established. 
RSA key fingerprint is dc:f3:53:35:xx:xx:xx:f7:62:4c:e3:68:7e:70:46:cb. 
Are you sure you want to continue connecting (yes/no)? ( MY ANSWER yes )
Failed to add the host to the list of known hosts (/home/deploy/.ssh/known_hosts). 
git@178.xx.xx.xx's password:

この問題を解決するために私がしなければならないことを教えてください!

前もって感謝します!

4

1 に答える 1

2

これはおそらく git の問題ではなく、ssh の問題です。git サーバー (localhost) に ssh で接続することで、同じ問題を再現できるはずです。おそらく、フォルダー ~/.ssh (または ~/.ssh/known_hosts) のアクセス許可が正しくありません (ディスクがいっぱいであるか、ファイル システムが破損している可能性もありますが、その可能性はほとんどありません)。

そこに重要なデータがない場合は、~/.ssh を削除して、次の ssh (または git) で localhost にアクセスしようとするときに ssh に再構築させることができます。


そうは言っても、gitosis はユーザー認証に証明書を使用することを思い出しました。.ssh には id_rsa と id_rsa.pub が必要です。それらがローカルホストに保持されている場合は、必ず保存してください。

また、展開ユーザーの証明書を gitosis に登録し、gitosis.conf でリポジトリへのアクセスを許可していることを確認してください。パスワードを要求する ssh ステージは、秘密鍵が何らかの理由で認証に使用されていないことを意味します。

于 2010-07-26T09:45:24.273 に答える