On Tue, Aug 19, 2008 at 12:25:21AM -0400, Daniel Kahn Gillmor wrote: > On Mon 2008-08-18 12:53:07 -0400, Tim Kientzle wrote: > > > Oh, yeah. Gunnar Ritter's "Heirloom toolchest" > > (based on open-sourced AT&T code) is also a good > > comparison point: > > > > http://heirloom.sourceforge.net/tools.html > > I just tested the heirloom suite here with a GNU cpio-built archive, > and it seems to unpack the hardlinks cleanly: > > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ strings /tmp/simple.cpio > 0707010004E351000041ED000003E8000003E80000000248AA45A900000000000000000000001200000000000000000000000200000000a > 0707010004E35C000081A4000003E8000003E80000000248AA45A400000000000000000000001200000000000000000000000400000000a/c > 0707010004E35C000081A4000003E8000003E80000000248AA45A400000007000000000000001200000000000000000000000400000000a/b > abcdef > 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000B00000000TRAILER!!! > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ rm -rf a > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ ../heirloom-070715/cpio/cpio -i -d < > /tmp/simple.cpio > 1 blocks > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ ls -l a > total 8 > -rw-r--r-- 2 foo foo 7 2008-08-19 00:04 b > -rw-r--r-- 2 foo foo 7 2008-08-19 00:04 c > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ rm -rf a > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ ../heirloom-070715/cpio/pax -r < > /tmp/simple.cpio > 1 blocks > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ ls -l a > total 8 > -rw-r--r-- 2 foo foo 7 2008-08-19 00:01 b > -rw-r--r-- 2 foo foo 7 2008-08-19 00:01 c > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ > > And it looks like it creates the archive format the same way that GNU > cpio does (at least as far as the hardlinks go): > > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ find a | ../heirloom-070715/cpio/pax > -wd -x newc | strings > 1 blocks > 070701ffffffff000041ed000003e9000003e90000000248aa475700000000000000ff000000ff00000000000000000000000200000000a > 07070100000001000081a4000003e9000003e90000000248aa45a400000000000000000000000100000000000000000000000400000000a/c > 07070100000001000081a4000003e9000003e90000000248aa45a400000007000000000000000100000000000000000000000400000000a/b > abcdef > 070701fffffffe000000000000000000000000000000010000000000000000000000ff000000ff00000000000000000000000b00000000TRAILER!!! > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ find a | > ../heirloom-070715/cpio/cpio -o -H sco | strings > 1 blocks > 070701ffffffff000041ed000003e9000003e90000000248aa48d700000000000000ff000000ff00000000000000000000000200000000a > 07070100000001000081a4000003e9000003e90000000248aa45a400000000000000000000000100000000000000000000000400000000a/c > 07070100000001000081a4000003e9000003e90000000248aa45a400000007000000000000000100000000000000000000000400000000a/b > abcdef > 070701fffffffe000000000000000000000000000000010000000000000000000000ff000000ff00000000000000000000000b00000000TRAILER!!! > 0 [EMAIL PROTECTED]:~/src/heirloom/test$ > > (weird that heirloom's cpio appears to call this format "sco" -- yet > another term for the 070701 magic number) > > I built the heirloom suite (version 070715) on debian lenny/sid by > just unpacking the tarball and running "make". > > I haven't had a chance to test out OpenSolaris's implementation yet.
I did a quick check of OpenSolaris, and it seems it uses the same method as gnu cpio. So to conclude, pax is the odd one out. -Otto -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]