1

Windows バッチ スクリプトを毎晩実行して、データの新しいコピーを Mercurial リポジトリからローカル ハード ドライブにプルし、ローカルにあるデータを上書きしようとしています。リポジトリが配置されているサーバーには多くのリポジトリがあるため、サーバーのサブディレクトリに配置されています。RSA キーを使用するように PuTTY をセットアップしたので、PuTTY でサーバーにログオンするときは、ユーザー名を入力するだけで済みます。

バッチ スクリプトには次のコマンドがあります。

hg pull ssh://myusername@mydomain.com/targetrepo/

...しかし、これはパスワードを入力するためのプロンプトを開くだけです。通常はこれで問題ありませんが、プルはバッチ スクリプトから実行されるため、動作させるには RSA キー認証が必要です。

Mercurial リポジトリを含むサーバーのサブディレクトリにあるバッチ スクリプトを、パスワードの入力を必要とせずに実行できるようにするにはどうすればよいですか?

4

1 に答える 1

2

ご自身でおっしゃいましたが、動作するには RSA キー認証が必要です。したがって、それが機能しない理由をデバッグする必要があります。最も簡単な方法は、サーバー側で sshd ログを確認することです。それはおそらくのいずれかになります

  • キーがサーバーにありません
  • サーバー上の ~/.ssh ディレクトリまたはそのコンテンツのパーミッションが間違っています
  • サーバー上の SSH デーモンは、パスワードなしのアクセスを許可しません
  • 実際にはパスワードを要求するわけではありません。キーのパスフレーズを要求しています
于 2010-11-30T20:16:44.767 に答える