【问题标题】:Ant: SCP:No response from serverAnt:SCP:服务器无响应
【发布时间】:2014-09-06 04:48:53
【问题描述】:

我正在尝试使用 Ant <scp> 将一些文件发送到远程计算机,但得到服务器错误没有响应。

尝试使用详细选项并得到以下响应。

  [scp] Authentications that can continue: publickey,keyboard-interactive,password
  [scp] Next authentication method: publickey
  [scp] Authentications that can continue: keyboard-interactive,password
  [scp] Next authentication method: keyboard-interactive
  [scp] Authentications that can continue: password
  [scp] Next authentication method: password
  [scp] Authentication succeeded (password).
  [scp] Disconnecting from xx-hostname-xx port 22
  [scp] Caught an exception, leaving main loop due to socket closed

代码没有问题,因为它可以与其他主机一起正常工作。问题必须在其他地方。以前有人遇到过这个问题吗?提前致谢。

P.S:我可以使用 putty 从本地连接到远程机器,没有任何问题。我已经在远程机器上安装了openssh

【问题讨论】:

    标签: ant ssh exec scp openssh


    【解决方案1】:

    scp 程序是否安装在远程系统上?本地 scp 实例(我想在这种情况下是 ant)需要在远程系统上运行另一个 scp 副本。如果本地程序无法在远程系统上运行scp,您将得到此行为。

    编辑:

    您的本地 scp 客户端(在本例中为 ant)将与远程主机建立 ssh 连接。通过该连接,它将尝试在远程系统上运行一个名为“scp”的程序。两个 scp 实例将进行通信以进行文件传输。所以远程系统上的程序必须命名为“scp”,并且必须在 ssh 会话的命令路径中。我不认为 WinSCP 满足这些标准中的任何一个。它不会安装名为“scp”或“scp.exe”的程序。至少在我的 PC 上,它并没有将自己安装到我的命令路径中。

    简单的测试是与远程系统建立交互式 ssh 连接,看看您是否可以在该会话中运行“scp”。如果你得到一个错误,那么ant 也会得到一个错误。

    【讨论】:

    • 我已经在远程机器上安装了 Winscp(Win 2012)。错误仍然没有区别
    • 你是对的。 “scp”命令在我的远程机器上不起作用,但在其他机器上工作(文件传输成功)。那么如何在win2012上安装scp呢?
    • 我没有使用 Windows 版 OpenSSH 的经验,但我希望制作您的 OpenSSH 包的人也会提供 scp 版本,无论是作为同一包的一部分还是在不同的包中包裹。如果您使用的是 Cygwin,看起来 OpenSSH 带有 scp 程序的副本。因此可能是程序在主机上,但由于命令 PATH 或其他原因而找不到它。或者 OpenSSH 安装可能会丢失一些文件。
    猜你喜欢
    • 2013-12-17
    • 1970-01-01
    • 1970-01-01
    • 2020-07-16
    • 1970-01-01
    • 2015-08-01
    • 2012-03-20
    • 2012-03-30
    • 1970-01-01
    相关资源
    最近更新 更多