ssh: Could not resolve hostname d: Name or service not known
Windows下载Linux服务器文件,除了使用XShell中Xftp或者winscp等其他图形化界面软件外,还可使用类似Openssh for Windows.但是使用过的同学一定出现过“ssh: Could not resolve hostname d: Name or service not known”的报错。其实网上有很多解决方案,但是小编我看过后发现基本都无法彻底解决。今天就给大家分享一下我处理的过程。
一、首先安装Openssh for Windows;
1-1 如果本机是Windows系统,想从Linux系统下载文件到本机,那么执行 scp linux_user@linux_ip:/linux文件位置 windows本机位置
1-2 如果本机是windows系统,想将本机文件上传至Linux服务器,那么执行 scp windows文件位置 linux_user@linux_ip:/linux文件位置
二、根据实际情况执行完毕后,输入相应linux用户密码。
三、重点就是linux中路径使用“/”,而windows是用“\”。那么1-1中的“windows本机位置”应该怎么书写?其实小编试过很多种方法,比如
:/d:/ 😕/d:/ :\d\等,但是最终的报错要么是找不到路径,要么是提示这是一个目录,要么就是ssh: Could not resolve hostname d: Name or service not known的报错。经过小编两天的研究,最终百度了很多文章,都说是hosts的问题。但是这个款操作系统的SCP指令,小编认为和hosts无关.
最终经过小编不懈研究,终于找出解决方案
解决方案:
Openssh安装路径为 D:\Program Files\OpenSSH,打开后可以看到“home”文件夹。可以在home文件夹中建立自己的下载文件夹,比如Downloads,那么1-1中的SCP指令就可以这样写:
scp linux_user@linux_ip:/linux文件位置 home/Downloads
例如:
scp -r zj@192.168.1.199:/media/bak/myself/GD/Oracle_11g_11.2.0.1.0 /home/Downloads
备注:其实安装Openssh后,安装目录产生的home文件夹就等同于linux系统中的/home,只是在windows中换了一种方式而已!