最初にエージェントを初期化する必要があります。
これは複数の方法で実行できます。新しいシェルを起動することでも
ssh-agent bash
または ssh-agent
によって返される変数を評価することによって 現在のシェルで。
eval "$(ssh-agent)"
すべての履歴と変数を保持するため、2 番目の方法を使用することをお勧めします。
SSH エージェントが実行されていないか、設定されている環境変数が現在の環境で使用できない (最も重要なのは SSH_AUTH_SOCK
)、またはそれらが正しく設定されていない (死んだエージェントを指している)。
を使用して、現在のシェル セッションでエージェントを開始できます。
eval "$(ssh-agent)"
または
を使用して、エージェントを介して新しいシェル セッションを開始しますssh-agent fish
(fish
を置き換えます 使用しているシェルで)。しかし、あなたが以前はだったと言うので ssh-add
を使用できる これがないと、誤ってエージェントを殺してしまった (または他の理由で終了した) と思い込んでしまいます。エラーメッセージは SSH_AUTH_SOCK
環境変数は実際に設定されていますが、その ssh-add
そのパスで有効な通信ソケットが見つかりません。
完全にログアウトして再度ログインしたり、マシンを再起動したりした場合に、通常の方法が再び機能するようになったとしても、私は驚かないでしょう.
Windows PowerShell の場合 (管理者として実行):
<オール>ssh-agent の現在のステータスを確認する :
Get-Service | ?{$_.Name -like '*ssh-agent*'} | select -Property Name, StartType, Status
サービスが無効になっている場合は有効にします:
Set-Service -Name ssh-agent -StartupType Manual
サービスを開始:
Start-Service ssh-agent
前と同じようにキーを追加します:
ssh-add <path to the key>