From: Chris Ball Date: 19:26 on 18 Sep 2003 Subject: GNU tar(1). Please allow me to introduce you all to GNU tar. GNU tar does wonderful new things, none of which have been done in a mostly unchanging fashion for several decades. Since the code is in such constant flux, sometimes it's inevitable that occasional bugs slip through the net of the keen and watchful GNU developers. Like, say, this one: I create an archive of /usr under Solaris, with `tar cvf usr.tar /usr`. I copy it to a Linux machine. I unpack it with `tar xvf usr.tar`. But wait. We have errors. They look like this: tar: usr/bin/uncompress: Cannot hard link to `/usr/bin/compress': No such file or directory tar: usr/bin/zcat: Cannot hard link to `/usr/bin/compress': No such file or directory tar: usr/bin/zipinfo: Cannot hard link to `/usr/bin/unzip': No such file or directory That doesn't seem right. Actually, the Solaris fetish for hard links doesn't seem right -- but of more importance to me right now, neither does the error; usr/bin/unzip *does* exist in the archive. Maybe an strace -elink will help: link("/usr/bin/compress", "usr/bin/uncompress") = -1 ENOENT (No such file or directory) link("/usr/bin/compress", "usr/bin/zcat") = -1 ENOENT (No such file or directory) link("/usr/bin/unzip", "usr/bin/zipinfo") = -1 ENOENT (No such file or directory) # ^ note leading slash So, while GNU tar's happy to remove leading slashes from archive paths while unpacking, it'd rather spew links straight through to the machine the archive's being unpacked on than to the archive it's just made for itself. CHRIS SMASH NOW. AXE FIRE PLASTIC. DEATH. BURN. (In case you're thinking that this'll be fixed by now, well, it's in the latest Debian stable tar (1.13.25). It's been reported to bug-gnu-utils on many occasions, including this one from _2001_: <http://mail.gnu.org/archive/html/bug-gnu-utils/2001-05/msg00217.html>.) - Chris.
Generated at 10:26 on 16 Apr 2008 by mariachi