OS X 10.9 で、公開鍵認証のサーバに SSH で接続しようとすると、 "Saving password to keychain failed" というエラーが出てしまう件について。
% git push origin master
Saving password to keychain failed
Identity added; /Users/shao/.ssh/id_dsa
...
Homebrew からインストール。
brew tap homebrew/dupes
brew install homebrew/dupes/openssh --with-brewed-openssl --with-keychain-support
パッチ は不要になりました。
インストール完了後、plist を編集 (/usr/bin/ssh-agent
から /usr/local/bin/ssh-agent
に置き換え)
sudo sed -i '' 's/\/usr\/bin\/ssh-agent/\/usr\/local\/bin\/ssh-agent/' /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist
ssh-agent の再起動
launchctl unload -w /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist
sudo killall ssh-agent
launchctl load -w -S Aqua /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist
launchctl start org.openbsd.ssh-agent
環境変数の設定 (.bash_profile や .zshenv などに書く)
export SSH_AUTH_SOCK=$(launchctl getenv SSH_AUTH_SOCK)
以上の手続きにより、正しくキーチェーンに鍵を保存できる OpenSSH を使うことができるようになる。