web-dev-qa-db-ja.com

ssh-addが「エージェントへの接続エラー:そのようなファイルまたはディレクトリはありません」で戻る

ssh-addだけでは機能しません。

Error connecting to agent: No such file or directory

そのツールをどのように使用すればよいですか?

37
Wong Jia Hau

最初にエージェントを初期化する必要があります。

これは複数の方法で実行できます。新しいシェルを開始するか

ssh-agent bash

または、現在のシェルでssh-agentによって返された変数を評価します。

eval "$(ssh-agent)"

すべての履歴と変数を保持するため、2番目の方法を使用することをお勧めします。

37
Panki

SSHエージェントが実行されていないか、SSHエージェントが設定する環境変数が現在の環境で使用できません(最も重要なのはSSH_AUTH_SOCK)、または正しく設定されていない(死んだエージェントを指している)。

次のコマンドを使用して、現在のシェルセッションでエージェントを開始できます。

eval "$(ssh-agent)"

または、エージェントを使用して新しいシェルセッションを開始します

ssh-agent fish

fishは、使用しているシェルに置き換えてください)。しかし、あなたが言う慣れているssh-addこれがないと、エージェントを誤って殺した(または他の何らかの理由でエージェントが終了した)と信じてしまいます。エラーメッセージは、SSH_AUTH_SOCK環境変数が実際に設定されていますが、そのssh-addは、そのパスで有効な通信ソケットを見つけることができません。

完全にログアウトして再度ログインした場合、またはマシンを再起動した場合に、通常の方法で再び機能するようになっていても、驚かないでしょう。

24
Kusalananda

Windows Power Shellの場合:

  1. Ssh-agentの現在のステータスを確認します:「Get-Service | select -property name、starttype」
  2. 新しいタイプを設定します: "Set-Service -Name ssh-agent -StartupType Manual"
  3. 開始:「Start-Service ssh-agent」
  4. 以前と同じようにキーを追加します: "ssh-add"
5
Chris