$ ssh [email protected]
Could not create directory'/cygdrive/c/Documents and Settings/vidar kongsli/.ssh'.
The authenticity of Host 'login.somehost.no (...)' can't be established.
RSA key fingerprint is ....
Are you sure you want to continue connecting (yes/no)? no
Host key verification failed.
$ set | grep HOME
HOME=/cygdrive/d/home/vidar
HOMEDRIVE=C:
HOMEPATH=/cygdrive/d/home/vidar
$ ls ~/.ssh
id_rsa id_rsa.pub
Sshが〜/ .sshを見つけようとするときに$ HOME環境変数を使用しない理由は何ですか?
(編集:固定フォーマット)
見て /etc/passwd
。そこにあるエントリが、予想されるホームディレクトリと一致することを確認してください。これは、ユーザーのエントリの最後から2番目のフィールドです。
もしあなたの $HOME
変数が設定されていますが、sshがそれを認識していません。この行を/etc/nsswitch.conf
:
db_home: /%H
これにより、/ etc/passwdファイルが存在しなくてもCygwinホームディレクトリが設定されます。
/etc/nsswitch.conf:
db_home: windows
db_home設定 を参照してください。これはCygwinにWindowsを使用するように指示します%USERPROFILE%
ディレクトリをCygwin $ HOMEとして。
これは、たとえば、git(GitHub Enterprise)とSSHの間で同じSSHキーをさまざまなローカルUnix/Linuxシステムに共有する場合に必要です。
設定%HOME%
OSレベルでは機能しませんでした($HOME
in bashは設定を正しく反映します)。
元の質問から、SSHがWindowsホームディレクトリを更新しようとしていることがわかります。Vidarの古いバージョンのWindowsではC:\Documents and Settings\vidar kongsli
。現在のバージョン(7+、私は思う)では、同等のものはC:\Users\%USERNAME%
(または、WindowsがC:にインストールされていない場合は、%SystemDrive%\Users\%USERNAME%
)。
変数HOME
はエクスポートされますか?試してください:export HOME
次にssh
を繰り返します。