What is the problem you are having with rclone?
I want to mirror a WebDAV directory to a local folder using bisync
2025/04/18 10:30:51 ERROR : Bisync critical error: corrupted on transfer: sizes differ src(Local file system at /home/XXXX/rsync/ionosmirror) 24 vs dst(webdav root 'mirror') 28
2025/04/18 10:30:51 ERROR : Bisync aborted. Must run --resync to recover.
Run the command 'rclone version' and share the full output of the command
rclone v1.69.1
- os/version: ubuntu 24.04 (64 bit)
- os/kernel: 6.11.0-112021-tuxedo (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.24.0
- go/linking: static
- go/tags: none
Which cloud storage system are you using? (eg Google Drive)
ionos hidrive
The command you were trying to run (eg rclone copy /tmp remote:tmp
)
Steps
- At first, I use
resync
and as WebDAV doesn't support change time, I use size-only:
rclone bisync ionos:mirror ~/rsync/ionosmirror --resync --size-only --log-level INFO
Log shows success:
2025/04/18 10:37:23 INFO : Validating listings for Path1 "ionos:mirror/" vs Path2 "/home/XXXX/rsync/ionosmirror/"
2025/04/18 10:37:23 INFO : Bisync successful
- After that, I leave out the
resync
rclone bisync ionos:mirror ~/rsync/ionosmirror --resync --size-only --log-level INFO
-
Adding and removing files works: Adding and removing files on both sides works, i.e. files are deleted and created as expected.
-
Changing files (I used a small text file):
- changing a file on the remote, and running the above command works, i.e. files are changed in local folder .
- changing a file on the local folder, and running the above command gives the error posted below
Please run 'rclone config redacted' and share the full output. If you get command not found, please make sure to update rclone
[ionos]
type = webdav
url = https://webdav.hidrive.ionos.com/users/XXX
vendor = other
user = XXX@xx.de
pass = XXXX
A log from the command that you were trying to run with the -vv
flag
~
❯ rclone bisync ionos:mirror ~/rsync/ionosmirror -vv --size-only
2025/04/18 10:48:13 DEBUG : rclone: Version "v1.69.1" starting with parameters ["rclone" "bisync" "ionos:mirror" "/home/konrad/rsync/ionosmirror" "-vv" "--size-only"]
2025/04/18 10:48:13 DEBUG : Creating backend with remote "ionos:mirror"
2025/04/18 10:48:13 DEBUG : Using config file from "/home/konrad/.config/rclone/rclone.conf"
2025/04/18 10:48:13 DEBUG : found headers:
2025/04/18 10:48:13 DEBUG : Creating backend with remote "/home/konrad/rsync/ionosmirror"
2025/04/18 10:48:13 NOTICE: bisync is IN BETA. Don't use in production!
2025/04/18 10:48:13 INFO : Setting --ignore-listing-checksum as neither --checksum nor --compare checksum are set.
2025/04/18 10:48:13 INFO : Bisyncing with Comparison Settings:
{
"Modtime": false,
"Size": true,
"Checksum": false,
"HashType1": 0,
"HashType2": 0,
"NoSlowHash": false,
"SlowHashSyncOnly": false,
"SlowHashDetected": true,
"DownloadHash": false
}
2025/04/18 10:48:13 DEBUG : Lock file created: /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.lck
2025/04/18 10:48:13 INFO : Synching Path1 "ionos:mirror/" with Path2 "/home/konrad/rsync/ionosmirror/"
2025/04/18 10:48:13 DEBUG : : updated backup-dir for Path1
2025/04/18 10:48:13 DEBUG : : updated backup-dir for Path2
2025/04/18 10:48:13 INFO : Building Path1 and Path2 listings
2025/04/18 10:48:13 DEBUG : &{0xc000a5c500 0xc000bd61e0 false false false /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror /home/konrad/.cache/rclone/bisync /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path1.lst /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path2.lst /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path1.lst-new /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path2.lst-new map[] 0xc000a5fb00 {{}} {{}} false false <nil> <nil> /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.lck map[] false}: starting to march!
2025/04/18 10:48:13 DEBUG : wurst: both path1 and path2
2025/04/18 10:48:13 DEBUG : wurst: is Object
2025/04/18 10:48:13 DEBUG : wurst_1: both path1 and path2
2025/04/18 10:48:13 DEBUG : wurst_1: is Object
2025/04/18 10:48:13 DEBUG : wurst_1_1_1: both path1 and path2
2025/04/18 10:48:13 DEBUG : wurst_1_1_1: is Object
2025/04/18 10:48:13 DEBUG : &{0xc000a5c500 0xc000bd61e0 false false false /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror /home/konrad/.cache/rclone/bisync /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path1.lst /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path2.lst /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path1.lst-new /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.path2.lst-new map[] 0xc000a5fb00 {{}} {{}} false false <nil> <nil> /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.lck map[] false}: march completed. err: <nil>
2025/04/18 10:48:13 INFO : Path1 checking for diffs
2025/04/18 10:48:13 INFO : Path2 checking for diffs
2025/04/18 10:48:13 DEBUG : wurst_1: (old: 6 current: 10)
2025/04/18 10:48:13 INFO : - Path2 File changed: size (larger) - wurst_1
2025/04/18 10:48:13 INFO : Path2: 1 changes: 0 new, 1 modified, 0 deleted
2025/04/18 10:48:13 INFO : (Modified: 1 larger, 0 smaller)
2025/04/18 10:48:13 INFO : Applying changes
2025/04/18 10:48:13 INFO : - Path2 Queue copy to Path1 - ionos:mirror/wurst_1
2025/04/18 10:48:13 INFO : - Path2 Do queued copies to - Path1
2025/04/18 10:48:13 DEBUG : : updated backup-dir for Path1
2025/04/18 10:48:13 DEBUG : wurst: Excluded (FilesFrom Filter)
2025/04/18 10:48:13 DEBUG : wurst: Excluded
2025/04/18 10:48:13 DEBUG : wurst_1_1_1: Excluded (FilesFrom Filter)
2025/04/18 10:48:13 DEBUG : wurst_1_1_1: Excluded
2025/04/18 10:48:13 DEBUG : wurst_1: Sizes differ (src 10 vs dst 6)
2025/04/18 10:48:13 DEBUG : webdav root 'mirror': Waiting for checks to finish
2025/04/18 10:48:13 DEBUG : writing result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 10,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 42,
"Err": null,
"Winner": {
"Obj": {},
"Side": "src",
"Err": null
},
"IsWinner": true,
"IsSrc": true,
"IsDst": false,
"Origin": "sync"
}
2025/04/18 10:48:13 DEBUG : writing result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 6,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 42,
"Err": null,
"Winner": {
"Obj": {},
"Side": "src",
"Err": null
},
"IsWinner": false,
"IsSrc": false,
"IsDst": true,
"Origin": "sync"
}
2025/04/18 10:48:13 DEBUG : webdav root 'mirror': Waiting for transfers to finish
2025/04/18 10:48:13 DEBUG : wurst_1: Update will use the normal upload strategy (no chunks)
2025/04/18 10:48:13 ERROR : wurst_1: corrupted on transfer: sizes differ src(Local file system at /home/konrad/rsync/ionosmirror) 10 vs dst(webdav root 'mirror') 6
2025/04/18 10:48:13 INFO : wurst_1: Removing failed copy
2025/04/18 10:48:13 DEBUG : writing result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 10,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 33,
"Err": {},
"Winner": {
"Obj": {},
"Side": "dst",
"Err": null
},
"IsWinner": false,
"IsSrc": true,
"IsDst": false,
"Origin": "sync"
}
2025/04/18 10:48:13 DEBUG : writing result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 6,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 33,
"Err": {},
"Winner": {
"Obj": {},
"Side": "dst",
"Err": null
},
"IsWinner": true,
"IsSrc": false,
"IsDst": true,
"Origin": "sync"
}
2025/04/18 10:48:13 ERROR : webdav root 'mirror': not deleting files as there were IO errors
2025/04/18 10:48:13 ERROR : webdav root 'mirror': not deleting directories as there were IO errors
2025/04/18 10:48:13 DEBUG : failed to marshal input: json: unsupported type: operations.LoggerFn
2025/04/18 10:48:13 DEBUG : logger:
2025/04/18 10:48:13 DEBUG : result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 10,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 42,
"Err": null,
"Winner": {
"Obj": null,
"Side": "src",
"Err": null
},
"IsWinner": true,
"IsSrc": true,
"IsDst": false,
"Origin": "sync"
}
2025/04/18 10:48:13 DEBUG : result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 6,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 42,
"Err": null,
"Winner": {
"Obj": null,
"Side": "src",
"Err": null
},
"IsWinner": false,
"IsSrc": false,
"IsDst": true,
"Origin": "sync"
}
2025/04/18 10:48:13 DEBUG : result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 10,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 33,
"Err": null,
"Winner": {
"Obj": null,
"Side": "dst",
"Err": null
},
"IsWinner": false,
"IsSrc": true,
"IsDst": false,
"Origin": "sync"
}
2025/04/18 10:48:13 DEBUG : result:
{
"Src": "/home/konrad/rsync/ionosmirror/",
"Dst": "ionos:mirror/",
"Name": "wurst_1",
"AltName": "",
"Size": 6,
"Modtime": "0001-01-01T00:00:00Z",
"Hash": "",
"Flags": "-",
"Sigil": 33,
"Err": null,
"Winner": {
"Obj": null,
"Side": "dst",
"Err": null
},
"IsWinner": true,
"IsSrc": false,
"IsDst": true,
"Origin": "sync"
}
2025/04/18 10:48:13 DEBUG : Got 4 results for copy2to1
2025/04/18 10:48:13 DEBUG : - 10 0001-01-01 00:00:00 +0000 UTC "wurst_1"
2025/04/18 10:48:13 DEBUG : - 6 0001-01-01 00:00:00 +0000 UTC "wurst_1"
2025/04/18 10:48:13 DEBUG : - 10 0001-01-01 00:00:00 +0000 UTC "wurst_1"
2025/04/18 10:48:13 DEBUG : - 6 0001-01-01 00:00:00 +0000 UTC "wurst_1"
2025/04/18 10:48:13 DEBUG : Lock file removed: /home/konrad/.cache/rclone/bisync/ionos_mirror..home_konrad_rsync_ionosmirror.lck
2025/04/18 10:48:13 ERROR : Bisync critical error: corrupted on transfer: sizes differ src(Local file system at /home/konrad/rsync/ionosmirror) 10 vs dst(webdav root 'mirror') 6
2025/04/18 10:48:13 ERROR : Bisync aborted. Must run --resync to recover.
2025/04/18 10:48:13 INFO :
Transferred: 10 B / 10 B, 100%, 0 B/s, ETA -
Errors: 2 (fatal error encountered)
Checks: 7 / 7, 100%
Elapsed time: 0.1s
2025/04/18 10:48:13 DEBUG : 8 go routines active
2025/04/18 10:48:13 NOTICE: Failed to bisync with 2 errors: last error was: bisync aborted