[patch] overcoming PATH_MAX - very long paths with rsync - integration of liblongpath

Nils Goroll slink at schokola.de
Tue Aug 20 06:29:25 MDT 2013


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>


More information about the rsync mailing list