Skip to main content

Rclone Delete Modes

Delete timing is the critical safety switch in rclone sync. Choosing the right mode reduces accidental data loss and makes behavior predictable under failure conditions.

Modes

ModeBehaviorTypical use
--delete-beforeDelete extras before uploadRare pipelines with strict destination shape
--delete-duringDelete while transferringRuntime-sensitive large jobs
--delete-afterDelete after transfer phaseSafer default for most production jobs

Baseline

rclone sync /srv/site remote:site/current --delete-after --dry-run -vv

Examples with Output

1. Example 1

Input command:

rclone sync /srv/site remote:site/current --delete-before --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-before)
Would transfer 46 files

2. Example 2

Input command:

rclone sync /srv/site remote:site/current --delete-during --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-during)
Would transfer 52 files

3. Example 3

Input command:

rclone sync /srv/site remote:site/current --delete-after --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after)
Would transfer 58 files

4. Example 4

Input command:

rclone sync /srv/site remote:site/current --delete-after --backup-dir remote:site/rollback/$(date +%F-%H%M) --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --backup-dir remote:site/rollback/$(date +%F-%H%M))
Would transfer 64 files

5. Example 5

Input command:

rclone sync /srv/site remote:site/current --delete-during --check-first --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-during --check-first)
Would transfer 70 files

6. Example 6

Input command:

rclone sync /srv/site remote:site/current --delete-after --size-only --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --size-only)
Would transfer 76 files

7. Example 7

Input command:

rclone sync /srv/site remote:site/current --delete-after --checksum --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --checksum)
Would transfer 82 files

8. Example 8

Input command:

rclone sync /srv/site remote:site/current --delete-after --exclude "**/*.tmp" --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --exclude "**/*.tmp")
Would transfer 88 files

9. Example 9

Input command:

rclone sync /srv/site remote:site/current --delete-after --include "**/*.php" --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --include "**/*.php")
Would transfer 94 files

10. Example 10

Input command:

rclone sync /srv/site remote:site/current --delete-before --track-renames --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-before --track-renames)
Would transfer 100 files

11. Example 11

Input command:

rclone sync /srv/site remote:site/current --delete-after --log-level INFO --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --log-level INFO)
Would transfer 106 files

12. Example 12

Input command:

rclone sync /srv/site remote:site/current --delete-after --stats 30s --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --stats 30s)
Would transfer 112 files

13. Example 13

Input command:

rclone sync /srv/site remote:site/current --delete-during --transfers 8 --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-during --transfers 8)
Would transfer 118 files

14. Example 14

Input command:

rclone sync /srv/site remote:site/current --delete-after --transfers 4 --checkers 16 --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --transfers 4 --checkers 16)
Would transfer 124 files

15. Example 15

Input command:

rclone sync /srv/site remote:site/current --delete-after --backup-dir remote:site/rollback/latest --suffix .bak --dry-run -vv

Expected output:

NOTICE: safety profile applied (delete-after --backup-dir remote:site/rollback/latest --suffix .bak)
Would transfer 130 files