$ ssh usaname@login.somehost.no
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 не использует переменную окружения $ HOME, когда пытается найти ~ / .ssh?
(редактировать: исправлено форматирование)
HOME
для%USERPROFIEL%
переменных окружения , прежде чем установлен Cygwin. Итак ... / home / <myusername> не было создано (/etc/passwd cannot be found
). И не может использовать ключ ssh в% USERPROFILE%.db_home: /%H
исправить проблему отлично. Большое спасибо!В /etc/nsswitch.conf:
Смотрите настройку db_home . Это говорит Cygwin просто использовать
%USERPROFILE%
каталог Windows как Cygwin $ HOME.Это необходимо, если, например, вы хотите использовать одни и те же ключи SSH между git (GitHub Enterprise) и SSH для различных локальных систем Unix / Linux.
Настройка
%HOME%
на уровне ОС не сработала (хотя$HOME
в bash правильно отражает настройки).Из исходного вопроса видно, что SSH пытается обновить домашний каталог Windows, который в более старой версии Windows Vidar есть
C:\Documents and Settings\vidar kongsli
. В текущих версиях (7+, я думаю) эквивалентC:\Users\%USERNAME%
(или, если Windows не установлена на C :,%SystemDrive%\Users\%USERNAME%
).источник
Переменная
HOME
экспортируется? Попробуй:export HOME
потомssh
снова.источник
Установить
db_home
в/etc/nsswitch.conf
на пути к вашему дому. Этот метод рекомендован MSYS2.Добавление
HOME
переменной окружения также работает .Git-for-Windows включает
env
в себяdb_home
, который должен прочитать вашуHOME
переменную bash, однако это ненадежно .источник
db_home: windows cygwin desc