ebiggers / ntfs-3g-system-compression

NTFS-3G plugin for reading "system compressed" files
GNU General Public License v2.0
118 stars 5 forks source link

Hide the "user.WofCompressedData" xattr #5

Open samhocevar opened 6 years ago

samhocevar commented 6 years ago

I would like to copy files across NTFS partitions using rsync -X (which is supposed to preserve xattrs). I expect the plugin to decompress files on the source partition, so that they are written uncompressed on the target partition. However this does not work because Linux cannot handle the user.WofCompressedData xattr. Even the xattr utility cannot properly read attributes on compressed files.

Here is for instance what happens when doing xattr '/c/Program Files (x86)/windows nt/accessories/wordpad.exe' on a Win10 partition. For some reason the attribute user.WofCompressedData always has size 65536, which is illegal on Linux (XATTR_SIZE_MAX is 65536).

listxattr("/c/.../wordpad.exe", NULL, 0) = 23
listxattr("/c/.../wordpad.exe", "user.WofCompressedData\0", 23) = 23
getxattr("/c/.../wordpad.exe", "user.WofCompressedData", NULL, 0) = 65536
getxattr("/c/.../wordpad.exe", "user.WofCompressedData", 0x189ac60, 65536) = -1 E2BIG (Argument list too long)

Could there be a way for the system compression plugin to hide this attribute? Or is this a task for ntfs-3g instead?

marcosfrm commented 4 years ago

Ping?