cjnaz / rclonesync-V2

A Bidirectional Cloud Sync Utility using rclone
MIT License
355 stars 39 forks source link

Error when file contains "é" : execv() arg 2 must contain only strings #42

Closed Hellorelei closed 4 years ago

Hellorelei commented 4 years ago

First, thank you so much for making this tool!

I'm trying to make it work on my Debian server, but it aborts when it encounters a file or directory whose name contains the "é" character. I have tried to run it in Python 3.7 and it does not make a difference. Works fine with all other files. I've tried looking around for others sharing the same issues, and sadly I haven't found anything.

I'm very new to Linux though so it might be a problem unrelated to the actual script and something in my configuration, but I've done my best to ensure everything was in the right locale. I'm sorry if that's the case! 😭

Input :

terry@biscotte:~/workflows/rclonesync$ ./rclonesync.py /media/gabi/ksync kdrive: --first-sync -v -d --config /home/terry/.config/rclone/rclone.conf

Output :

2020-02-03 19:47:31,170: ***** BiDirectional Sync for Cloud Services using rclone ***** 2020-02-03 19:47:31,181: Lock file created: </tmp/rclonesync_LOCK__media_gabi_ksync_kdrive_> 2020-02-03 19:47:31,181: Synching Path1 </media/gabi/ksync/> with Path2 <kdrive:> 2020-02-03 19:47:31,181: Command args: <Path1=/media/gabi/ksync, Path2=kdrive:, check_access=False, check_filename=RCLONE_TEST, config=/home/terry/.config/rclone/rclone.conf, dry_run=True, filters_file=None, first_sync=True, force=False, max_deletes=50, no_datetime_log=False, rc_verbose=None, rclone=rclone, rclone_args=None, remove_empty_directories=False, verbose=True, workdir=/root/.rclonesyncwd> 2020-02-03 19:47:31,184: >>>>> --first-sync copying any unique Path2 files to Path1 2020-02-03 19:48:19,862: Path2 --first-sync copying to Path1 - /media/gabi/ksync/delarageaz/Drive/1540968814110036.zip 2020/02/03 19:48:20 NOTICE: 1540968814110036.zip: Not copying as --dry-run 2020-02-03 19:48:20,037: Path2 --first-sync copying to Path1 - /media/gabi/ksync/delarageaz/Drive/6x12_Panoramasoftware.zip 2020/02/03 19:48:20 NOTICE: 6x12_Panoramasoftware.zip: Not copying as --dry-run 2020-02-03 19:48:20,247: Path2 --first-sync copying to Path1 - /media/gabi/ksync/delarageaz/Drive/Aaaé.txt 2020-02-03 19:48:20,256: WARNING rclone copyto try 1 failed. - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-03 19:48:20,257: message: <execv() arg 2 must contain only strings> 2020-02-03 19:48:20,264: WARNING rclone copyto try 2 failed. - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-03 19:48:20,265: message: <execv() arg 2 must contain only strings> 2020-02-03 19:48:20,273: WARNING rclone copyto try 3 failed. - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-03 19:48:20,274: message: <execv() arg 2 must contain only strings> 2020-02-03 19:48:20,274: ERROR rclone copyto failed. (Line 245) - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-03 19:48:20,274: Lock file removed: </tmp/rclonesync_LOCK__media_gabi_ksync_kdrive_> 2020-02-03 19:48:20,274: ***** Critical Error Abort - Must run --first-sync to recover. See README.md *****

cjnaz commented 4 years ago

Hum... I tried it on my Centos 7 box with no issues. I tried with and without --first-sync and --dry-run.
Ideas / things to try:

Hellorelei commented 4 years ago

I ran the command again, this time workdir=/home/terry/.rclonesyncwd, but the failure happened again.

Rclone is in version v1.51.0.

--rc-verbose does not provide me with more details on the failure :(

Using rclone copyto kdrive:<pathto>/Aaaé.txt Aaaé.txt worked perfectly, but using the previous rclonesync command afterwards did not work, with the same error message.

Running as normal user :

2020-02-07 12:55:26,085: ***** BiDirectional Sync for Cloud Services using rclone ***** 2020-02-07 12:55:26,192: Lock file created: </tmp/rclonesync_LOCK__media_gabi_ksync_kdrive_> 2020-02-07 12:55:26,192: Synching Path1 </media/gabi/ksync/> with Path2 <kdrive:> 2020-02-07 12:55:26,193: Command args: <Path1=/media/gabi/ksync, Path2=kdrive:, check_access=False, check_filename=RCLONE_TEST, config=/home/terry/.config/rclone/rclone.conf, dry_run=True, filters_file=None, first_sync=True, force=False, max_deletes=50, no_datetime_log=False, rc_verbose=None, rclone=rclone, rclone_args=None, remove_empty_directories=False, verbose=True, workdir=/home/terry/.rclonesyncwd> 2020-02-07 12:55:26,193: >>>>> --first-sync copying any unique Path2 files to Path1 2020-02-07 12:57:38,118: Path2 --first-sync copying to Path1 - /media/gabi/ksync/delarageaz/Drive/1540968814110036.zip 2020/02/07 12:57:38 NOTICE: 1540968814110036.zip: Not copying as --dry-run 2020-02-07 12:57:38,274: Path2 --first-sync copying to Path1 - /media/gabi/ksync/delarageaz/Drive/6x12_Panoramasoftware.zip 2020/02/07 12:57:38 NOTICE: 6x12_Panoramasoftware.zip: Not copying as --dry-run 2020-02-07 12:57:38,459: Path2 --first-sync copying to Path1 - /media/gabi/ksync/delarageaz/Drive/Aaaé.txt 2020-02-07 12:57:38,473: WARNING rclone copyto try 1 failed. - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-07 12:57:38,474: message: <execv() arg 2 must contain only strings> 2020-02-07 12:57:38,483: WARNING rclone copyto try 2 failed. - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-07 12:57:38,484: message: <execv() arg 2 must contain only strings> 2020-02-07 12:57:38,493: WARNING rclone copyto try 3 failed. - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-07 12:57:38,494: message: <execv() arg 2 must contain only strings> 2020-02-07 12:57:38,494: ERROR rclone copyto failed. (Line 245) - kdrive:delarageaz/Drive/Aaaé.txt 2020-02-07 12:57:38,494: Lock file removed: </tmp/rclonesync_LOCK__media_gabi_ksync_kdrive_> 2020-02-07 12:57:38,494: ***** Critical Error Abort - Must run --first-sync to recover. See README.md *****

Running with verbose flags :

2020-02-07 13:04:22,760:  ***** BiDirectional Sync for Cloud Services using rclone *****
2020-02-07 13:04:22,771:  Lock file created: </tmp/rclonesync_LOCK__media_gabi_ksync_kdrive_>
2020-02-07 13:04:22,771:  Synching Path1  </media/gabi/ksync/>  with Path2  <kdrive:>
2020-02-07 13:04:22,771:  Command args: <Path1=/media/gabi/ksync, Path2=kdrive:, check_access=False, check_filename=RCLONE_TEST, config=/home/terry/.config/rclone/rclone.conf, dry_run=True, filters_file=None, first_sync=True, force=False, max_deletes=50, no_datetime_log=False, rc_verbose=3, rclone=rclone, rclone_args=None, remove_empty_directories=False, verbose=True, workdir=/home/terry/.rclonesyncwd>
2020-02-07 13:04:22,771:  >>>>> --first-sync copying any unique Path2 files to Path1
2020-02-07 13:05:26,196:    Path2      --first-sync copying to Path1     - /media/gabi/ksync/delarageaz/Drive/1540968814110036.zip
2020/02/07 13:05:26 DEBUG : rclone: Version "v1.51.0" starting with parameters ["rclone" "copyto" "--config" "/home/terry/.config/rclone/rclone.conf" "kdrive:delarageaz/Drive/1540968814110036.zip" "/media/gabi/ksync/delarageaz/Drive/1540968814110036.zip" "-v" "-v" "-v" "--dry-run"]
2020/02/07 13:05:26 DEBUG : Using config file from "/home/terry/.config/rclone/rclone.conf"
2020/02/07 13:05:26 DEBUG : 1540968814110036.zip: Need to transfer - File not found at Destination
2020/02/07 13:05:26 NOTICE: 1540968814110036.zip: Not copying as --dry-run
2020/02/07 13:05:26 INFO  : 
Transferred:             0 / 0 Bytes, -, 0 Bytes/s, ETA -
Transferred:            1 / 1, 100%
Elapsed time:         0.0s

2020/02/07 13:05:26 DEBUG : 4 go routines active
2020/02/07 13:05:26 DEBUG : rclone: Version "v1.51.0" finishing with parameters ["rclone" "copyto" "--config" "/home/terry/.config/rclone/rclone.conf" "kdrive:delarageaz/Drive/1540968814110036.zip" "/media/gabi/ksync/delarageaz/Drive/1540968814110036.zip" "-v" "-v" "-v" "--dry-run"]
2020-02-07 13:05:26,348:    Path2      --first-sync copying to Path1     - /media/gabi/ksync/delarageaz/Drive/6x12_Panoramasoftware.zip
2020/02/07 13:05:26 DEBUG : rclone: Version "v1.51.0" starting with parameters ["rclone" "copyto" "--config" "/home/terry/.config/rclone/rclone.conf" "kdrive:delarageaz/Drive/6x12_Panoramasoftware.zip" "/media/gabi/ksync/delarageaz/Drive/6x12_Panoramasoftware.zip" "-v" "-v" "-v" "--dry-run"]
2020/02/07 13:05:26 DEBUG : Using config file from "/home/terry/.config/rclone/rclone.conf"
2020/02/07 13:05:26 DEBUG : 6x12_Panoramasoftware.zip: Need to transfer - File not found at Destination
2020/02/07 13:05:26 NOTICE: 6x12_Panoramasoftware.zip: Not copying as --dry-run
2020/02/07 13:05:26 INFO  : 
Transferred:             0 / 0 Bytes, -, 0 Bytes/s, ETA -
Transferred:            1 / 1, 100%
Elapsed time:         0.0s

2020/02/07 13:05:26 DEBUG : 4 go routines active
2020/02/07 13:05:26 DEBUG : rclone: Version "v1.51.0" finishing with parameters ["rclone" "copyto" "--config" "/home/terry/.config/rclone/rclone.conf" "kdrive:delarageaz/Drive/6x12_Panoramasoftware.zip" "/media/gabi/ksync/delarageaz/Drive/6x12_Panoramasoftware.zip" "-v" "-v" "-v" "--dry-run"]
2020-02-07 13:05:26,498:    Path2      --first-sync copying to Path1     - /media/gabi/ksync/delarageaz/Drive/Aaaé.txt
2020-02-07 13:05:26,501:    WARNING  rclone copyto try 1 failed.         - kdrive:delarageaz/Drive/Aaaé.txt
2020-02-07 13:05:26,501:  message:  <execv() arg 2 must contain only strings>
2020-02-07 13:05:26,504:    WARNING  rclone copyto try 2 failed.         - kdrive:delarageaz/Drive/Aaaé.txt
2020-02-07 13:05:26,504:  message:  <execv() arg 2 must contain only strings>
2020-02-07 13:05:26,506:    WARNING  rclone copyto try 3 failed.         - kdrive:delarageaz/Drive/Aaaé.txt
2020-02-07 13:05:26,507:  message:  <execv() arg 2 must contain only strings>
2020-02-07 13:05:26,507:    ERROR    rclone copyto failed.  (Line 245)   - kdrive:delarageaz/Drive/Aaaé.txt
2020-02-07 13:05:26,507:  Lock file removed: </tmp/rclonesync_LOCK__media_gabi_ksync_kdrive_>
2020-02-07 13:05:26,507:  ***** Critical Error Abort - Must run --first-sync to recover.  See README.md *****
cjnaz commented 4 years ago

I've tried creating a file with that name and cannot reproduce the problem. I suspect it has to do with the character encoding. Please upload a file here and I'll download it.

cjnaz commented 4 years ago

Hello @Terence-Chevroulet, were you able to solve this problem? If so, what was the issue? If not, please post a file you've created with the problem filename. If it is a character encoding issue then maybe the encoding will survive the post and download and I can use it for debug.

Also, what version of rclonesync are you running?

cjnaz commented 4 years ago

Please try v2.10.

Hellorelei commented 4 years ago

Hello, all my apologies for the silence. The person I was helping synchronise their drive noticed problems with special characters with the provider, and thus had to switch to their software.

I'm sorry I can't help you diagnose the eventual problem better, as I no longer have access to the drive to test. Although it is very possible the problem was on the provider side all along, and if that's the case, please accept my sincere apologies for the trouble caused.

Thank you for taking the time to develop this tool, as I'm sure it is very useful to many, many people.

cjnaz commented 4 years ago

Thanks. Take care.