scp exec 请求在通道 0 上失败

bal*_*ire 14 ssh cygwin scp

我正在尝试将 SCP 文件从一台计算机传输到另一台计算机,但是我得到了

exec 请求在通道 0 上失败”。

但是,当我使用 SSH 时,我可以毫无问题地访问机器。如果有帮助,我将在 Cygwin 中使用 SCP 功能。

我在网上搜索时发现的是“.bashrc”文件,但我发现的唯一一个是“bash.bashrc”。

这是我使用的命令:

scp /filelocation/file user@hostname:/folderlocation
Run Code Online (Sandbox Code Playgroud)

我还尝试使用 IP 地址而不是主机名,但结果相同。

我检查了远程站点是否有 SCP 命令。

str*_*ght 1

要查看 .bashrc 文件(以及其他以点开头的文件),您需要执行以下操作

ls -a
Run Code Online (Sandbox Code Playgroud)

简单的解决方法是重命名 .profile、.bashrc、.login、.bash_profile 文件,这样它们就不会被包含在内。这些称为 shell 启动文件。

如果您的 scp 现在可以工作,答案就在这些文件之一中。

基本上,shell 启动文件之一正在发送回输出,这会扰乱正在进行的 ssl 协商。

它可以像发送特殊的转义序列来设置窗口标题一样简单。另一个罪魁祸首是 stty 命令。

仅当使用以下命令登录时,您才希望将输出环绕到终端

if tty -s >/dev/null 2>&1; then
    # here if have a real terminal associated to send stty commands 
    # or other special escape sequences to terminal
fi
Run Code Online (Sandbox Code Playgroud)


归档时间:

查看次数:

18868 次

最近记录:

4 年,10 月 前