【问题标题】:ssh_init: Network error: Cannot assign requested addressssh_init:网络错误:无法分配请求的地址
【发布时间】:2020-10-30 05:24:23
【问题描述】:

我正在尝试在 Windows 10 平台上使用 putty 建立连接并传输文件。我已经验证了 putty 中的默认端口是 22。当我在命令行中运行命令来连接和传输文件时,虽然我得到了上述错误。知道为什么会这样或者我应该怎么做吗?

【问题讨论】:

    标签: deployment putty file-transfer


    【解决方案1】:

    你试过了吗:

    pscp -P 22 c:\documents\foo.txt user@example.com:/tmp/foo
    

    【讨论】:

    • 为什么要明确定义端口?
    • @mlhDev,当运行pscp-v(详细)时,它会打印Connecting to example.com port 0。所以,pscp 的默认端口似乎是 0,而不是 22,这很奇怪。
    • 这是known bug 在干净的机器上,它有两种解决方法。 TomRod 的回答给出了最好的一次性永久解决方案。
    • 为我工作。虽然我希望它将 22 作为默认端口。
    • 我使用了-p(小),用于保留文件属性。它应该是-P(大写),用于端口。要检查所有选项,请在命令提示符下键入 pscp。
    【解决方案2】:

    我不得不进入 Putty 默认设置并再次“保存”它们,尽管端口 22 显示为默认值。为我工作以避免每次都添加 -P 22 选项。

    【讨论】:

    • 这也是给我的。不知道进入那个状态需要什么,但对我来说这是一个相当新的安装。在腻子中保存的“默认设置”会话显示端口 22,并且重新加载保留端口 22。但果然,再次保存它使 pscp 开始为我给它的每个 IP 使用端口 22,而不是它一直使用的端口 0知识产权。离奇
    • 这应该是公认的解决方案,因为它是一次性修复。答案应指定 Putty 默认设置,因为它们也会影响不同的 pscp.exe 工具。
    • 对我来说,-P 22保存 Putty 的默认设置再次起作用,但我更喜欢默认设置。谢谢@Martha
    【解决方案3】:

    我遇到了同样的错误,最终进入了这个页面。 -P 22 没有解决我的问题。

    我使用 Putty 保存的会话并仔细检查了我的命令行并遇到了与 OP 相同的错误。

    我正在使用:

    pscp -l SESSION_NAME_IN_PUTTY ip:/remote_path local_path

    我查看了 pscp 的 command line options 并将 -l 更改为 -load 并且它起作用了。

    最终的命令看起来像:

    pscp -load SESSION_NAME_IN_PUTTY ip:/remote_path local_path

    注意:如果仍然有错误,请检查SESSION_NAME_IN_PUTTY 的拼写并确保它完全匹配。一个字母脱落,可能会导致同样的错误。

    【讨论】:

    • 另外,如果您要通过 pscp 推送的目录,请确保添加 -r
    【解决方案4】:

    在我的例子中,我在 Putty 中创建了一个缩短的“会话名称”——即完整主机名的更短表示。这适用于大多数 Putty 功能——但是当我尝试使用 pscp 时,我发现我需要一个与主机名相同的会话名称。

    【讨论】:

      【解决方案5】:

      我遇到这个错误是因为 Raspbian 中没有启用 SSH。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-04-09
        • 2021-02-28
        • 2011-03-12
        • 2011-10-13
        • 2012-05-28
        • 2020-08-24
        • 2013-03-16
        • 1970-01-01
        相关资源
        最近更新 更多