Nils Goroll
2013-Aug-20 12:29 UTC
[patch] overcoming PATH_MAX - very long paths with rsync - integration of liblongpath
I need to migrate data from a Linux box (PATH_MAX 4096) to Solaris with (PATH_MAX 1024) and it so happens that not only do paths longer than 1K actually exist, but also is the application in no way bound to 4K paths. In an effort to find a generic solution to these issues, I have written liblongpath. See https://code.uplex.de/liblongpath - there is a manpage (online as RST: https://code.uplex.de/liblongpath/liblongpath/blobs/master/src/liblongpath.rst ) I am attaching a patch to rsync master which integrates liblongpath using the redefining headers. This patch needs 0002-modernize-configure.ac-update-gnulib-macros-and-add.patch.bz2 which is included in my previous email. To build rsync with liblongpath, either install liblongpath to a standard prefix, or use rsync configure with --with-liblongpath_unsafe-prefix=<prefix> I have run successful tests on Debian 6, ancient OpenSolaris snv_134 (32 + 64 bit) and SmartOS 20130111T010112Z (32) with rsync and the (currently undocumented) liblongpath test, so I am pretty confident that the initial release should be at least of some use. Also I have successfully migrated some ~1.5 TB of small files with rsync+liblongpath. Feedback welcome. Nils -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 0003-use-liblongpath-if-available.patch URL: <http://lists.samba.org/pipermail/rsync/attachments/20130820/b2ed90e6/attachment.ksh>