我刚刚安装了 Cygwin,openssh 忽略了 known_hosts 文件。我猜想 openssh 甚至看不到 ~/.ssh 文件夹。我定义了一个 Windows 环境变量 HOME,Cygwin 确实在 %HOME% 中启动。~/.ssh 上的权限为 600,~/.ssh 中的权限除了 known_hosts 和 *.pub 为 644 之外,其他所有权限均为 600。我得到的只是
$ ssh -vvv -Y foo
OpenSSH_6.1p1, OpenSSL 1.0.1c 10 May 2012
debug2: ssh_connect: needpriv 0
ssh: Could not resolve hostname learnlab: hostname nor servname provided, or not known
请注意,我没有该行debug1: Reading configuration data /etc/ssh/ssh_config
,更奇怪的是,Cygwin 没有安装 /etc/ssh。
答案1
事实证明我不仅必须设置 %HOME%,还必须为 /home/myhome 创建一个挂载点。
$ cat /etc/fstab.d/myhome
c:/Users/myhome/My\040Documents /home/myhome ntfs binary 0 0