使用 Windows 10 Bash 将文件从远程复制到本地

使用 Windows 10 Bash 将文件从远程复制到本地

我正在尝试使用 Win 10 Bash Shell 将远程主机上的某些文件复制到我的本地计算机,由于安全策略,我只能从远程执行此操作,因此我确保本地端口已打开,登录到远程,然后输入:

scp somefile [email protected]:~/

并提示我输入密码:

[email protected]'s password:

我没有,因为我没有设置任何密码。尝试了远程用户的密码、johndoe用户密码(通过以用户身份登录johndoe并运行设置passwd)和 Windows 10 密码,但都不起作用。然后我尝试提供一个 root 密码,因为我还没有,我运行了

sudo passwd root

并被告知password updated successfully。但是下次我运行相同的命令时,它只是要求输入新的 UNIX 密码,就好像没有密码一样。而且scp仍然无法使用此密码。现在我被困住了......

答案1

结果scp是尝试直接连接到 Windows 10 系统,而不是 Linux 子系统;这就是为什么所有密码都不起作用的原因,因为用户johndoe首先不存在于我的 Windows 系统上。

为了解决这个问题,我安装了Windows 版 OpenSSHwhoami然后,我将 Linux 子系统用户名改为我的 Windows 用户名(在 Windows PowerShell 或命令提示符中输入的用户名);scp仍然不起作用(出现lost connection错误),但至少sftp现在可以了:

sftp [email protected]

相关内容