尝试将文件从Windows SFTP传输到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前端时也遇到了相同的问题。
最佳答案
它是common for OpenSSH SFTP server to return code 4 (Failure) for many different reasons, without giving any details。
您必须检查SFTP server log才能找到更多。
尽管最常见的原因是缺少可用磁盘或用户配额空间,但通常可以通过创建大小为零的文件来识别。
关于java - 通过JSch的SFTP引发错误4 : Failure,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26903923/