What is the problem you are having with rclone?
I am trying to bidirectionally sync a local folder on my ubuntu machine with my Proton drive.
Normal sync will work, sync with --dry-run will work, but it will not work with S3app and terminal if I actually want to use bisync, a null reference error occurs.
Any help or ideas for workarounds would be highly appreciated. My goal is to have one proton drive folder to bisync accross multiple devices.
Run the command 'rclone version' and share the full output of the command.
rclone version
rclone v1.70.0-beta.8638.4d38424e6
- os/version: ubuntu 24.10 (64 bit)
- os/kernel: 6.11.0-21-generic (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.24.1
- go/linking: static
- go/tags: none
Which cloud storage system are you using? (eg Google Drive)
Proton Drive
The command you were trying to run (eg rclone copy /tmp remote:tmp
)
Tried both, the following command and the s3app to do the same
rclone bisync /home/xxProtonDrive "ProtonDrive:" --create-empty-src-dirs --compare size,modtime,checksum --slow-hash-sync-only --resilient -MvP --fix-case --resync -vv
Please run 'rclone config redacted' and share the full output. If you get command not found, please make sure to update rclone.
rclone config redacted
[ProtonDrive]
type = protondrive
username = xx@proton.me
password = XXX
client_uid = XXX
client_access_token = XXX
client_refresh_token = XXX
client_salted_key_pass = XXX
[s3drive_auto_62ukCdCCwCbOZVVlsgzKs6]
type = s3
provider = Other
region = us-east-1
secret_access_key = XXX
access_key_id = XXX
endpoint = https://storage.kapsa.io
no_check_bucket = true
[s3drive_xx]
type = alias
remote = s3drive_auto_62ukCdCCwCbOZVVlsgzKs6:bucket
A log from the command that you were trying to run with the -vv
flag
2025/04/09 09:43:13 DEBUG : rclone: Version "v1.70.0-beta.8638.4d38424e6" starting with parameters ["rclone" "bisync" "/home/xx/ProtonDrive" "ProtonDrive:" "--create-empty-src-dirs" "--compare" "size,modtime,checksum" "--slow-hash-sync-only" "--resilient" "-MvP" "--fix-case" "--resync" "-vv" "--log-file=/home/xx/Dokumente/rclonelog.txt"]
2025/04/09 09:43:13 DEBUG : Creating backend with remote "/home/xx/ProtonDrive"
2025/04/09 09:43:13 DEBUG : Using config file from "/home/xx/.config/rclone/rclone.conf"
2025/04/09 09:43:13 DEBUG : Creating backend with remote "ProtonDrive:"
2025/04/09 09:43:13 DEBUG : proton drive root link ID '': Has cached credentials
2025/04/09 09:43:15 DEBUG : proton drive root link ID '': Used cached credential to initialize the ProtonDrive API
2025/04/09 09:43:15 NOTICE: bisync is IN BETA. Don't use in production!
2025/04/09 09:43:15 INFO : Slow hash detected on Path1. Will ignore checksum due to slow-hash settings
2025/04/09 09:43:15 NOTICE: proton drive root link ID '': will use sha1 for same-side diffs on Path2 only
2025/04/09 09:43:15 NOTICE: Ignoring checksums during --resync as --slow-hash-sync-only is set.
2025/04/09 09:43:15 INFO : Bisyncing with Comparison Settings:
{
"Modtime": true,
"Size": true,
"Checksum": true,
"HashType1": 0,
"HashType2": 2,
"NoSlowHash": false,
"SlowHashSyncOnly": true,
"SlowHashDetected": true,
"DownloadHash": false
}
2025/04/09 09:43:15 DEBUG : defaulting to --resync-mode path1 as --resync is set
2025/04/09 09:43:15 DEBUG : Lock file created: /home/xx/.cache/rclone/bisync/home_xx_ProtonDrive..ProtonDrive_.lck
2025/04/09 09:43:15 INFO : Synching Path1 "/home/xx/ProtonDrive/" with Path2 "ProtonDrive:/"
2025/04/09 09:43:15 DEBUG : : updated backup-dir for Path1
2025/04/09 09:43:15 DEBUG : : updated backup-dir for Path2
2025/04/09 09:43:15 INFO : Copying Path2 files to Path1
2025/04/09 09:43:15 INFO : - Path2 Resync is copying files to - Path1
2025/04/09 09:43:15 DEBUG : filterSync.Opt.MinSize: off
2025/04/09 09:43:15 DEBUG : : updated backup-dir for Path1
2025/04/09 09:43:15 DEBUG : overriding equal
2025/04/09 09:43:16 DEBUG : File1: Original file size missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Original file size missing
2025/04/09 09:43:16 DEBUG : File3: Original file size missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Original file size missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: file sha1 digest missing
2025/04/09 09:43:16 DEBUG : writing result:
{
"Src": "ProtonDrive:/",
"Dst": "",
"Name": "File2withGermanäinName",
"AltName": "",
"Size": 0,
"Modtime": "2025-04-08T16:02:44Z",
"Hash": "",
"Flags": "-",
"Sigil": 43,
"Err": null,
"Winner": {
"Obj": {},
"Side": "src",
"Err": null
},
"IsWinner": true,
"IsSrc": true,
"IsDst": false,
"Origin": "sync"
}
2025/04/09 09:43:16 DEBUG : writing result:
{
"Src": "ProtonDrive:/",
"Dst": "",
"Name": "File2withGermanäinName",
"AltName": "",
"Size": 0,
"Modtime": "2025-04-08T16:02:44Z",
"Hash": "",
"Flags": "-",
"Sigil": 43,
"Err": null,
"Winner": {
"Obj": {},
"Side": "src",
"Err": null
},
"IsWinner": false,
"IsSrc": false,
"IsDst": true,
"Origin": "sync"
}
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Need to transfer - File not found at Destination
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Original file size missing
2025/04/09 09:43:16 DEBUG : File1: Original file size missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Original file size missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Original file size missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Original file size missing
2025/04/09 09:43:16 DEBUG : File1: file sha1 digest missing
2025/04/09 09:43:16 DEBUG : writing result:
{
"Src": "ProtonDrive:/",
"Dst": "",
"Name": "File1",
"AltName": "",
"Size": 0,
"Modtime": "2025-04-09T07:17:42Z",
"Hash": "",
"Flags": "-",
"Sigil": 43,
"Err": null,
"Winner": {
"Obj": {},
"Side": "src",
"Err": null
},
"IsWinner": true,
"IsSrc": true,
"IsDst": false,
"Origin": "sync"
}
2025/04/09 09:43:16 DEBUG : writing result:
{
"Src": "ProtonDrive:/",
"Dst": "",
"Name": "File1",
"AltName": "",
"Size": 0,
"Modtime": "2025-04-09T07:17:42Z",
"Hash": "",
"Flags": "-",
"Sigil": 43,
"Err": null,
"Winner": {
"Obj": {},
"Side": "src",
"Err": null
},
"IsWinner": false,
"IsSrc": false,
"IsDst": true,
"Origin": "sync"
}
2025/04/09 09:43:16 DEBUG : File1: Need to transfer - File not found at Destination
2025/04/09 09:43:16 DEBUG : File1: Original file size missing
2025/04/09 09:43:16 DEBUG : File3: Original file size missing
2025/04/09 09:43:16 DEBUG : File1: Original file size missing
2025/04/09 09:43:16 DEBUG : File1: Original file size missing
2025/04/09 09:43:16 DEBUG : File1: Original file size missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: file sha1 digest missing
2025/04/09 09:43:16 DEBUG : File2withGermanäinName: Original file size missing
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x19b90c6]
goroutine 85 [running]:
github.com/rclone/rclone/backend/protondrive.(*Object).Open(0xc000e135e0, {0x2e49be0, 0xc0008909b0}, {0xc000d86410, 0x1, 0xc000dee3a0?})
github.com/rclone/rclone/backend/protondrive/protondrive.go:877 +0x46
github.com/rclone/rclone/fs/operations.(*ReOpen).open(0xc000840540)
github.com/rclone/rclone/fs/operations/reopen.go:147 +0x109
github.com/rclone/rclone/fs/operations.NewReOpen({0x2e49be0, 0xc0008909b0}, {0x2e62b70, 0xc000e135e0}, 0xa, {0xc000d863e0, 0x1, 0x1})
github.com/rclone/rclone/fs/operations/reopen.go:102 +0x4f5
github.com/rclone/rclone/fs/operations.Open({0x2e49be0, 0xc0008909b0}, {0x2e62b70, 0xc000e135e0}, {0xc000d863e0, 0x1, 0x1})
github.com/rclone/rclone/fs/operations/reopen.go:124 +0x6b
github.com/rclone/rclone/fs/operations.(*copy).manualCopy(0xc00099a630, {0x2e49be0, 0xc0008909b0})
github.com/rclone/rclone/fs/operations/copy.go:261 +0x4dc
github.com/rclone/rclone/fs/operations.(*copy).copy(0xc00099a630, {0x2e49be0, 0xc0008909b0})
github.com/rclone/rclone/fs/operations/copy.go:310 +0x170
github.com/rclone/rclone/fs/operations.Copy({0x2e49be0, 0xc0008909b0}, {0x2e62010, 0xc000842000}, {0x0, 0x0}, {0xc000ad4540, 0x14}, {0x2e62b70, 0xc000e135e0})
github.com/rclone/rclone/fs/operations/copy.go:412 +0x473
github.com/rclone/rclone/fs/sync.(*syncCopyMove).pairCopyOrMove(0xc0002c9688, {0x2e49be0, 0xc0008909b0}, 0xc000890910, {0x2e62010, 0xc000842000}, 0x32, 0x50d01010df78648?)
github.com/rclone/rclone/fs/sync/sync.go:502 +0x1fe
created by github.com/rclone/rclone/fs/sync.(*syncCopyMove).startTransfers in goroutine 1
github.com/rclone/rclone/fs/sync/sync.go:532 +0x7d