When I rclone copy files over 100Mb from Sharefile, the transfer fails due to MD5 hash differ error.
When I do this with --ignore-checksum option, it seems to work fine.
How can I get it working with MD5 checksum option for files over 100MB for integrity check?
What is your rclone version (output from rclone version)
rclone v1.55.1
os/type: linux
os/arch: amd64
go/version: go1.16.3
go/linking: static
go/tags: none
-->
Which cloud storage system are you using? (eg Google Drive)
ShareFile
The command you were trying to run (eg rclone copy /tmp remote:tmp)
rclone copy -c -v sharefile:path remote:path
The rclone config contents with secrets removed.
Paste config here
A log from the command with the -vv flag
corrupted on transfer: MD5 hash differ "fdfffe6d-1b70-4697-9846-1e270424a681" vs "d19f663cdab5f2f894e66b81d8eb2f8b"'
2021/12/20 21:33:43 DEBUG : 7 go routines active
2021/12/20 21:33:43 Failed to copy with 2 errors: last error was: corrupted on transfer: MD5 hash differ "fdfffe6d-1b70-4697-9846-1e270424a681" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
I upgraded to v.157.0 and re-tested, but still seeing the same issue. Here are the rclone config and debug log as requested. Any help would be appreciated.
2021/12/20 22:03:09 DEBUG : rclone: Version "v1.57.0" starting with parameters ["rclone" "copy" "-c" "-vv" "sharefile_test:test.file" "remote_path"]
2021/12/20 22:03:09 DEBUG : Creating backend with remote "sharefile_test:test.file"
2021/12/20 22:03:09 DEBUG : Using config file from "/root/.config/rclone/rclone.conf"
2021/12/20 22:03:09 DEBUG : sharefile root 'test.file': Token expired but no uploads in progress - doing nothing
2021/12/20 22:03:09 DEBUG : sharefile_test: Loaded invalid token from config file - ignoring
2021/12/20 22:03:09 DEBUG : Saving config "token" in section "sharefile_test" of the config file
2021/12/20 22:03:09 DEBUG : Keeping previous permissions for config file: -rw-r--r--
2021/12/20 22:03:09 DEBUG : sharefile_test: Saved new token in config file
2021/12/20 22:03:11 DEBUG : fs cache: adding new entry for parent of "sharefile_test:test.file", "sharefile_test:test.file"
2021/12/20 22:03:11 DEBUG : Creating backend with remote "remote_path"
2021/12/20 22:03:11 DEBUG : test.file: Need to transfer - File not found at Destination
2021/12/20 22:03:19 DEBUG : test.file: md5 = 988d957b-ff64-4a3d-8257-97de0ec659fa (sharefile root 'test.file')
2021/12/20 22:03:19 DEBUG : test.file: md5 = d19f663cdab5f2f894e66b81d8eb2f8b (Local file system at remote_path)
2021/12/20 22:03:19 ERROR : test.file: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:03:19 INFO : test.file: Removing failed copy
2021/12/20 22:03:19 ERROR : Attempt 1/3 failed with 1 errors and: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:03:19 DEBUG : test.file: Need to transfer - File not found at Destination
2021/12/20 22:03:24 DEBUG : test.file: md5 = 988d957b-ff64-4a3d-8257-97de0ec659fa (sharefile root 'test.file')
2021/12/20 22:03:24 DEBUG : test.file: md5 = d19f663cdab5f2f894e66b81d8eb2f8b (Local file system at remote_path)
2021/12/20 22:03:24 ERROR : test.file: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:03:24 INFO : test.file: Removing failed copy
2021/12/20 22:03:24 ERROR : Attempt 2/3 failed with 1 errors and: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:03:24 DEBUG : test.file: Need to transfer - File not found at Destination
2021/12/20 22:03:29 DEBUG : test.file: md5 = 988d957b-ff64-4a3d-8257-97de0ec659fa (sharefile root 'test.file')
2021/12/20 22:03:29 DEBUG : test.file: md5 = d19f663cdab5f2f894e66b81d8eb2f8b (Local file system at remote_path)
2021/12/20 22:03:29 ERROR : test.file: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:03:29 INFO : test.file: Removing failed copy
2021/12/20 22:03:29 ERROR : Attempt 3/3 failed with 1 errors and: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:03:29 INFO :
Transferred: 442.806 MiB / 442.806 MiB, 100%, 26.236 MiB/s, ETA 0s
Errors: 1 (retrying may help)
Elapsed time: 19.7s
2021/12/20 22:03:29 DEBUG : 6 go routines active
2021/12/20 22:03:29 Failed to copy: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
Tried it with shared-upload-cutoff flag and still getting the same error.
remote_path is a shared drive
2021/12/20 22:17:31 DEBUG : rclone: Version "v1.57.0" starting with parameters ["rclone" "copy" "sharefile_test:test.file" "remote_path" "--sharefile-upload-cutoff=5M" "--retries=1" "-vv"]
2021/12/20 22:17:31 DEBUG : Creating backend with remote "sharefile_test:test.file"
2021/12/20 22:17:31 DEBUG : Using config file from "/root/.config/rclone/rclone.conf"
2021/12/20 22:17:31 DEBUG : sharefile_test: detected overridden config - adding "{JvLx1}" suffix to name
2021/12/20 22:17:31 DEBUG : sharefile root 'test.file': Token expired but no uploads in progress - doing nothing
2021/12/20 22:17:31 DEBUG : sharefile_test{JvLx1}: Loaded invalid token from config file - ignoring
2021/12/20 22:17:31 DEBUG : Saving config "token" in section "sharefile_test" of the config file
2021/12/20 22:17:31 DEBUG : Keeping previous permissions for config file: -rw-r--r--
2021/12/20 22:17:31 DEBUG : sharefile_test{JvLx1}: Saved new token in config file
2021/12/20 22:17:33 DEBUG : fs cache: adding new entry for parent of "sharefile_test:test.file", "sharefile_test{JvLx1}:test.file"
2021/12/20 22:17:33 DEBUG : Creating backend with remote "remote_path"
2021/12/20 22:17:33 DEBUG : test.file: Need to transfer - File not found at Destination
2021/12/20 22:17:39 DEBUG : test.file: md5 = 988d957b-ff64-4a3d-8257-97de0ec659fa (sharefile root 'test.file')
2021/12/20 22:17:39 DEBUG : test.file: md5 = d19f663cdab5f2f894e66b81d8eb2f8b (Local file system at remote_path)
2021/12/20 22:17:39 ERROR : test.file: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:17:39 INFO : test.file: Removing failed copy
2021/12/20 22:17:39 ERROR : Attempt 1/1 failed with 1 errors and: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
2021/12/20 22:17:39 INFO :
Transferred: 147.602 MiB / 147.602 MiB, 100%, 27.599 MiB/s, ETA 0s
Errors: 1 (retrying may help)
Elapsed time: 7.7s
2021/12/20 22:17:39 DEBUG : 6 go routines active
2021/12/20 22:17:39 Failed to copy: corrupted on transfer: md5 hash differ "988d957b-ff64-4a3d-8257-97de0ec659fa" vs "d19f663cdab5f2f894e66b81d8eb2f8b"
rclone check sharefile_test:test.file /app/
2021/12/20 23:12:16 ERROR : test.file: File not in Local file system at /app/
2021/12/20 23:12:16 NOTICE: Local file system at /app/: 1 files missing
2021/12/20 23:12:16 NOTICE: Local file system at /app/: 1 differences found
2021/12/20 23:12:16 NOTICE: Local file system at /app/: 1 errors while checking
2021/12/20 23:12:16 Failed to check: 1 differences found
I was able to rclone copy a file of 5MB in size with --sharefile-upload-cutoff=1M flag. Here is the a full redacted debug log. Any other suggestions or ideas?
2021/12/21 18:00:39 DEBUG : Using config file from "/root/.config/rclone/rclone.conf"
2021/12/21 18:00:39 DEBUG : rclone: Version "v1.55.1" starting with parameters ["rclone" "copy" "--sharefile-upload-cutoff=1M" "-c" "-vv" "--retries=1" "sharefile_test:/Test" "/remote/test"]
2021/12/21 18:00:39 DEBUG : Creating backend with remote "sharefile_test:Test"
2021/12/21 18:00:39 DEBUG : sharefile_test: detected overridden config - adding "{jMuWh}" suffix to name
2021/12/21 18:00:39 DEBUG : sharefile root 'Test': Token expired but no uploads in progress - doing nothing
2021/12/21 18:00:39 DEBUG : sharefile_test{jMuWh}: Loaded invalid token from config file - ignoring
2021/12/21 18:00:40 DEBUG : Saving config "token" = "{"access_token":"xxxxxxxx","token_type":"bearer","refresh_token":"xxxxxxx","expiry":"2021-12-22T02:00:40.242757851Z"}" in section "sharefile_test" of the config file
2021/12/21 18:00:40 DEBUG : Keeping previous permissions for config file: -rw-r--r--
2021/12/21 18:00:40 DEBUG : sharefile_test{jMuWh}: Saved new token in config file
2021/12/21 18:00:40 DEBUG : fs cache: renaming cache item "sharefile_test:/Test" to be canonical "sharefile_test{jMuWh}:Test"
2021/12/21 18:00:40 DEBUG : Creating backend with remote "/remote/test"
2021/12/21 18:00:40 DEBUG : Local file system at /remote/test: Waiting for checks to finish
2021/12/21 18:00:40 DEBUG : Local file system at /remote/test: Waiting for transfers to finish
2021/12/21 18:00:43 DEBUG : test_file2.txt: MD5 = 694f54b964da6084944900b51f17683c OK
2021/12/21 18:00:43 INFO : test_file2.txt: Copied (new)
2021/12/21 18:00:43 INFO :
Transferred: 4.920M / 4.920 MBytes, 100%, 2.009 MBytes/s, ETA 0s
Transferred: 1 / 1, 100%
Elapsed time: 3.5s
2021/12/21 18:00:43 DEBUG : 7 go routines active
that is an old version, best to use latest stable, v1.57.0
i could be wrong, but i see the problem as what causes the md5 hash to look like fdfffe6d-1b70-4697-9846-1e270424a681 to have dashes.
is it sharefile or rclone?
might try to upload a file over 128MiB using --sharefile-upload-cutoff=1M
if possible, enclose the debug logs with three backticks so it looks like this.
2021/12/21 18:00:39 DEBUG : Using config file from "/root/.config/rclone/rclone.conf"
2021/12/21 18:00:39 DEBUG : rclone: Version "v1.55.1" starting with parameters ["rclone" "copy" "--sharefile-upload-cutoff=1M" "-c" "-vv" "--retries=1" "sharefile_test:/Test" "/remote/test"]
not possible. fs cache: renaming cache item is just some confusing terminology for how rclone calls remotes.
as that would be in any debug log, you can just ignore that.
ok, let's see where that strange md5 hash is coming from.
for test_file.zip that is in sharefile, try both of these.