Error renaming partial file if its file already exists on remote

What is the problem you are having with rclone?

Whenver I copy/sync an existing file, I get a 553 rename error for that file

I have tried 4 different Android FTP servers and this issue occurs with all of them

Run the command 'rclone version' and share the full output of the command.

rclone v1.71.1
- os/version: debian 13.1 (64 bit)
- os/kernel: 6.12.48+deb13-amd64 (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.25.1
- go/linking: static
- go/tags: none

Which cloud storage system are you using? (eg Google Drive)

FTP server on Android

The command you were trying to run (eg rclone copy /tmp remote:tmp)

rclone copy local:/tmp/test.png phone:/tmp

The rclone config contents with secrets removed.

[phone]
type = ftp
host = 192.168.1.8
user = <HIDE>
port = 2121
pass = <HIDE>

[local]
type = local

A log from the command with the -vv flag

2025/09/28 00:52:22 DEBUG : rclone: Version "v1.71.1" starting with parameters ["rclone" "copy" "local:/tmp/test.png" "phone:/tmp" "-vv"]
2025/09/28 00:52:22 DEBUG : Creating backend with remote "local:/tmp/test.png"
2025/09/28 00:52:22 DEBUG : Using config file from "/home/user/.config/rclone/rclone.conf"
2025/09/28 00:52:22 DEBUG : fs cache: renaming child cache item "local:/tmp/test.png" to be canonical for parent "/tmp"
2025/09/28 00:52:22 DEBUG : Creating backend with remote "phone:/tmp"
2025/09/28 00:52:22 DEBUG : ftp://192.168.1.8:2121/tmp: Connecting to FTP server
2025/09/28 00:52:22 DEBUG : ftp://192.168.1.8:2121/tmp: dial("tcp","192.168.1.8:2121")
2025/09/28 00:52:22 DEBUG : ftp://192.168.1.8:2121/tmp: > dial: conn=192.168.1.5:58526->192.168.1.8:2121, err=<nil>
2025/09/28 00:52:22 DEBUG : test.png: Sizes differ (src 68 vs dst 75)
2025/09/28 00:52:22 DEBUG : ftp://192.168.1.8:2121/tmp: dial("tcp","192.168.1.8:43411")
2025/09/28 00:52:22 DEBUG : ftp://192.168.1.8:2121/tmp: > dial: conn=192.168.1.5:34756->192.168.1.8:43411, err=<nil>
2025/09/28 00:52:22 ERROR : test.png.4bd48363.partial: partial file rename failed: Move Rename failed: 553 Can't rename file.
2025/09/28 00:52:22 INFO  : test.png.4bd48363.partial: Removing failed copy
2025/09/28 00:52:23 ERROR : Attempt 1/3 failed with 1 errors and: Move Rename failed: 553 Can't rename file.
2025/09/28 00:52:23 DEBUG : test.png: Sizes differ (src 68 vs dst 75)
2025/09/28 00:52:23 DEBUG : ftp://192.168.1.8:2121/tmp: dial("tcp","192.168.1.8:42711")
2025/09/28 00:52:23 DEBUG : ftp://192.168.1.8:2121/tmp: > dial: conn=192.168.1.5:45918->192.168.1.8:42711, err=<nil>
2025/09/28 00:52:23 ERROR : test.png.4bd48363.partial: partial file rename failed: Move Rename failed: 553 Can't rename file.
2025/09/28 00:52:23 INFO  : test.png.4bd48363.partial: Removing failed copy
2025/09/28 00:52:23 ERROR : Attempt 2/3 failed with 1 errors and: Move Rename failed: 553 Can't rename file.
2025/09/28 00:52:23 DEBUG : test.png: Sizes differ (src 68 vs dst 75)
2025/09/28 00:52:23 DEBUG : ftp://192.168.1.8:2121/tmp: dial("tcp","192.168.1.8:33429")
2025/09/28 00:52:23 DEBUG : ftp://192.168.1.8:2121/tmp: > dial: conn=192.168.1.5:42416->192.168.1.8:33429, err=<nil>
2025/09/28 00:52:23 ERROR : test.png.4bd48363.partial: partial file rename failed: Move Rename failed: 553 Can't rename file.
2025/09/28 00:52:23 INFO  : test.png.4bd48363.partial: Removing failed copy
2025/09/28 00:52:23 ERROR : Attempt 3/3 failed with 1 errors and: Move Rename failed: 553 Can't rename file.
2025/09/28 00:52:23 INFO  : 
Transferred:            204 B / 204 B, 100%, 0 B/s, ETA -
Errors:                 1 (retrying may help)
Elapsed time:         1.0s

2025/09/28 00:52:23 DEBUG : 4 go routines active
2025/09/28 00:52:23 DEBUG : ftp://192.168.1.8:2121/tmp: closing 1 unused connections
2025/09/28 00:52:23 NOTICE: Failed to copy: Move Rename failed: 553 Can't rename file.

welcome to the forum,

try --inplace to prevent rclone from renaming the file.


and to keep the logs small, use --retries=1


fwiw, will get much better results using sftp server


on android, i run rclone inside termux
and rclone can emulate servers such as rclone serve ftp, rclone serve sftp

I read that --inplace can cause data loss if file was modified while it was syncing, I don't understand how this exactly happens though

really, please share the topic??

if the contents of a source file changes whilst copying it, that would lead to data loss.
that applies to most any copy tools.

whereas, --inplace applies after the file copy operation has completed.


on windows, the workaround is to create a VSS snapshot and use that as the source.
that is what i do.

i have a handy, dandy howto guide
https://forum.rclone.org/t/how-to-enable-vss-for-rclone-on-windows/11675

https://rclone.org/bisync/#concurrent-modifications

There is also another scenario I'm thinking about, if I loaded a file in a text editor on remote location before syncing and I saved it unknowingly during syncing, will that saved data get overwritten since the file hasn't yet been fully written by the FTP client?

ok, well, the debug log you posted it for copy, not bisync

You are right, it seems I have diverged the original conversation against --inplace since my goal is bisync

But I wanted to know if there's with my rclone setup or command that made renaming files in FTP not working so that I can use it without --inplace

what other ftp clients have you tested, where the issue does not occur.


then run rclone bisync and see what happens.

I have tested 4 different apps and faced this with all of them, I will try rclone on Termux

I have same issue with any rclone command where a file is to be updated on remote, so that's why I demonstrated it with copy

i wrote a howto guide about that.

Rclone on termux - Turn your android phone into a media server

1 Like

Thanks! I didn't think of trying FTP on Termux, I used termux-setup-storage and tested FTP server, it seems to work well without --inplace (it doesn't support modtimes though)

It seems, weird enough, that many FTP servers on Android don't support renaming to replace existing files

fwiw, use rclone serve sftp, as that supports modtime and file transfer verification using checksums.

Nice! I originally wanted SFTP but didn't find apps for that

actually, with termux, i do not use rclone serve sftp.

i prefer a simpler solution.
Package OpenSSH provides a tool for accessing remote hosts over SFTP

1 Like

You may want to read

in short it seems to be (to me) android file management issue, given you tried multiple ftp clients servers on android.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.