$ 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
¿Alguna idea de por qué ssh no utiliza la variable de entorno $ HOME cuando intenta localizar ~ / .ssh?
(editar: formato fijo)
HOME
a%USERPROFIEL%
las variables de entorno antes de instalar el cygwin. Entonces ... / home / <myusername> no se ha creado (/etc/passwd cannot be found
). Y no puede usar la clave ssh en% USERPROFILE%.db_home: /%H
Solucione el problema perfectamente. ¡Muchas gracias!En /etc/nsswitch.conf:
Consulte la configuración db_home . Esto le dice a Cygwin que solo use el
%USERPROFILE%
directorio de Windows como Cygwin $ HOME.Esto es necesario si, por ejemplo, desea compartir las mismas claves SSH entre git (GitHub Enterprise) y SSH con varios sistemas locales Unix / Linux.
La configuración
%HOME%
en el nivel del sistema operativo no funcionó (aunque$HOME
en bash refleja correctamente la configuración).Puede ver en la pregunta original que SSH está intentando actualizar el directorio de inicio de Windows, que en la versión anterior de Windows de Vidar es
C:\Documents and Settings\vidar kongsli
. En las versiones actuales (7+, creo), el equivalente esC:\Users\%USERNAME%
(o, si Windows no está instalado en C :,%SystemDrive%\Users\%USERNAME%
).fuente
¿Se
HOME
exporta la variable ? Intenta:export HOME
luegossh
otra vez.fuente
Establecer
db_home
en/etc/nsswitch.conf
el camino a su hogar. Este es el método recomendado por MSYS2.Agregar una
HOME
variable de entorno también funciona .Git-para-Windows incluye
env
endb_home
, lo que debería leer suHOME
variable de fiesta, sin embargo, es poco fiable .fuente
db_home: windows cygwin desc