FileZilla:将文件移动到文件已存在的目录中失败并显示“失败”

FileZilla:将文件移动到文件已存在的目录中失败并显示“失败”

我需要将其拖放file_1到也存在的位置dir_1。我希望将其覆盖。dir_2file_1

我可以通过本地机器上的拖放功能执行此操作,但无法再从另一个 FileZilla 目录进行拖放。我收到一条错误:

mv /home/path/file_1.png /home/path2/file_1.png: failure

直到几天前我才能够这样做。然后它最后会显示“重命名成功”。我没有更改任何设置。我使用的是 3.12.0.2 版本。我不认为我最近更新过,但也许我更新过。

上述命令在 shell 中有效,以同一用户登录。我还可以将文件拖到没有同名文件的文件夹中。

这非常重要,因为我喜欢将所有文件上传到临时目录,然后再将它们移动到最终生产目录。这是为了避免上传连接问题影响生产目录中的内容。

附言:只有我一个人遇到这个问题吗?你们有人尝试过 3.12.0.2 版本并且成功了吗?

答案1

我假设您正在使用 SFTP 协议(​​因为您有 SSH 访问权限,并且从“失败”消息中可以看到下文)。

使用 SFTP 协议时,FileZilla 只是SSH_FXP_RENAME向 SFTP 服务器发送请求。FileZilla 不会检查目标文件是否已存在,更不用说在重命名源文件之前尝试删除它。

根据SFTP 规范

如果已存在具有 newpath 指定名称的文件,则会出错。

事实上,如果目标文件已经存在,最广泛使用的 SFTP 服务器实现 OpenSSH 就会使请求失败SSH_FXP_RENAME。它确实会失败,并显示一个相当神秘的“失败”错误消息,就像OpenSSH SFTP 服务器在很多情况下


所以我相信它对你来说永远都行不通。除非你之前使用了不同的 SFTP 服务器,这违反了规范。

事实证明您之前使用的是 FTP,而不是 SFTP。

相关内容