Bug: Backup to exFAT volume seems to fail due to case-sensitivity

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Bug: Backup to exFAT volume seems to fail due to case-sensitivity

David Croll
Hi,


So I tried something... tried to back up from an ext4 filesystem to
exFAT. rsync works without any problems.


With the best regards,


David


david@nitro ~> uname -a
Linux nitro 5.3.0-46-generic #38-Ubuntu SMP Fri Mar 27 17:37:05 UTC 2020
x86_64 x86_64 x86_64 GNU/Linux

david@nitro ~> sudo rdiff-backup -v 5 --force /home/
/media/david/Backup\ SSD/Nitro/home/
Using rdiff-backup version 1.9.0b0
     with cpython /usr/bin/python3 version 3.7.5
     on Linux-5.3.0-46-generic-x86_64-with-Ubuntu-19.10-eoan, fs
encoding utf-8
Unable to import win32security module. Windows ACLs
not supported by filesystem at /home
-----------------------------------------------------------------
Detected abilities for source (read only) file system:
   Access control lists                         On
   Extended attributes                          On
   Windows access control lists                 Off
   Case sensitivity                             On
   Escape DOS devices                           Off
   Escape trailing spaces                       Off
   Mac OS X style resource forks                Off
   Mac OS X Finder information                  Off
-----------------------------------------------------------------
Exception '' raised of class '<class 'AssertionError'>':
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 390, in error_check_Main
     Main(arglist)
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 412, in Main
     take_action(rps)
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 348, in take_action
     Backup(rps[0], rps[1])
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 424, in Backup
     rpout.conn.fs_abilities.backup_set_globals(rpin, force)
   File
"/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
line 1044, in backup_set_globals
     dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
   File
"/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
line 159, in init_readwrite
     self.set_case_sensitive_readwrite(subdir)
   File
"/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
line 325, in set_case_sensitive_readwrite
     assert not upper_a.lstat()

Traceback (most recent call last):
   File "/usr/local/bin/rdiff-backup", line 32, in <module>
     rdiff_backup.Main.error_check_Main(sys.argv[1:])
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 390, in error_check_Main
     Main(arglist)
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 412, in Main
     take_action(rps)
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 348, in take_action
     Backup(rps[0], rps[1])
   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
line 424, in Backup
     rpout.conn.fs_abilities.backup_set_globals(rpin, force)
   File
"/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
line 1044, in backup_set_globals
     dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
   File
"/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
line 159, in init_readwrite
     self.set_case_sensitive_readwrite(subdir)
   File
"/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
line 325, in set_case_sensitive_readwrite
     assert not upper_a.lstat()
AssertionError


Reply | Threaded
Open this post in threaded view
|

Re: Bug: Backup to exFAT volume seems to fail due to case-sensitivity

EricZolf
Hi David,

this is a known issue #38, it'll get solved in due time (I'd like first
to simplify the code). Backing up from a POSIX to a non-POSIX file
system is currently not perfectly implemented, and exFAT has some
specialties which didn't exist as the code was written (FAT and NTFS
work better).

Sorry, Eric

#38 https://github.com/rdiff-backup/rdiff-backup/issues/38

On 12/04/2020 19:15, David Croll wrote:

> Hi,
>
>
> So I tried something... tried to back up from an ext4 filesystem to
> exFAT. rsync works without any problems.
>
>
> With the best regards,
>
>
> David
>
>
> david@nitro ~> uname -a
> Linux nitro 5.3.0-46-generic #38-Ubuntu SMP Fri Mar 27 17:37:05 UTC 2020
> x86_64 x86_64 x86_64 GNU/Linux
>
> david@nitro ~> sudo rdiff-backup -v 5 --force /home/
> /media/david/Backup\ SSD/Nitro/home/
> Using rdiff-backup version 1.9.0b0
>     with cpython /usr/bin/python3 version 3.7.5
>     on Linux-5.3.0-46-generic-x86_64-with-Ubuntu-19.10-eoan, fs
> encoding utf-8
> Unable to import win32security module. Windows ACLs
> not supported by filesystem at /home
> -----------------------------------------------------------------
> Detected abilities for source (read only) file system:
>   Access control lists                         On
>   Extended attributes                          On
>   Windows access control lists                 Off
>   Case sensitivity                             On
>   Escape DOS devices                           Off
>   Escape trailing spaces                       Off
>   Mac OS X style resource forks                Off
>   Mac OS X Finder information                  Off
> -----------------------------------------------------------------
> Exception '' raised of class '<class 'AssertionError'>':
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 390, in error_check_Main
>     Main(arglist)
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 412, in Main
>     take_action(rps)
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 348, in take_action
>     Backup(rps[0], rps[1])
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 424, in Backup
>     rpout.conn.fs_abilities.backup_set_globals(rpin, force)
>   File
> "/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
> line 1044, in backup_set_globals
>     dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
>   File
> "/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
> line 159, in init_readwrite
>     self.set_case_sensitive_readwrite(subdir)
>   File
> "/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
> line 325, in set_case_sensitive_readwrite
>     assert not upper_a.lstat()
>
> Traceback (most recent call last):
>   File "/usr/local/bin/rdiff-backup", line 32, in <module>
>     rdiff_backup.Main.error_check_Main(sys.argv[1:])
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 390, in error_check_Main
>     Main(arglist)
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 412, in Main
>     take_action(rps)
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 348, in take_action
>     Backup(rps[0], rps[1])
>   File "/usr/local/lib/python3.7/dist-packages/rdiff_backup/Main.py",
> line 424, in Backup
>     rpout.conn.fs_abilities.backup_set_globals(rpin, force)
>   File
> "/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
> line 1044, in backup_set_globals
>     dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
>   File
> "/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
> line 159, in init_readwrite
>     self.set_case_sensitive_readwrite(subdir)
>   File
> "/usr/local/lib/python3.7/dist-packages/rdiff_backup/fs_abilities.py",
> line 325, in set_case_sensitive_readwrite
>     assert not upper_a.lstat()
> AssertionError
>
>