我在尝试通过 SFTP 将文件从 Windows 传输到 Unix 服务器时遇到了一个特殊问题。错误“堆栈跟踪”是 -
4: Failure
at com.jcraft.jsch.ChannelSftp.throwStatusError(ChannelSftp.java:2846)
at com.jcraft.jsch.ChannelSftp.checkStatus(ChannelSftp.java:2459)
at com.jcraft.jsch.ChannelSftp._sendCLOSE(ChannelSftp.java:2465)
at com.jcraft.jsch.ChannelSftp._put(ChannelSftp.java:683)
at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:475)
at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:365)
我在其他论坛上搜索了很多,但无法找到根本原因。我还观察到一件事 - 我尝试 SFTP 的文件名是 *.xml,当我将其更改为 *.XML 时,SFTP 是“成功”的。很奇怪无法识别问题。我正在尝试使用 JSch Java API。但我在尝试 WinSCP 前端时也看到了同样的问题。
It is OpenSSH SFTP 服务器由于多种不同原因返回代码 4(失败)的情况很常见,但未提供任何详细信息 https://winscp.net/eng/docs/sftp_codes#code_4.
你必须检查SFTP服务器日志 https://en.wikibooks.org/wiki/OpenSSH/Logging_and_Troubleshooting找到更多。
尽管最常见的原因是缺少可用磁盘或用户配额空间 - 这通常可以通过创建的文件大小为零来识别。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)