Tim Kientzle <[email protected]> wrote: > If you're looking for details about tar formats, > I wrote up a lengthy man page with a lot of > details about tar format variants. > > There are online versions at the libarchive Wiki: > > http://code.google.com/p/libarchive/wiki/ManPageTar5 > > and at the FreeBSD project man page reference: > > http://www.freebsd.org/cgi/man.cgi?query=tar&sektion=5&manpath=FreeBSD+8.0-RELEASE&format=html > > The mdoc-to-HTML translations seem to have some minor problems, though. > If you don't have access to a FreeBSD system, you might find the > mdoc source to be helpful: > > http://code.google.com/p/libarchive/source/browse/trunk/libarchive/tar.5 > > In answer to your original question, the old "GNU tar" format > violates the POSIX ustar specification in several respects. > (GNU tar came out around the same time as the first POSIX > specification.) Most obviously, it sets the 8 bytes > starting at offset 257 to: > 'u' 's' 't' 'a' 'r' space space null > where POSIX ustar archives set those same 8 bytes to: > 'u' 's' 't' 'a' 'r' null '0' '0' > > The GNU tar format also does not use the ustar > 'prefix' field as specified in POSIX and has non-POSIX > extensions for handling long filenames, long linknames, > and sparse files. The mechanism used for sparse > files, in particular, can cause tar implementations > that don't understand this extension to lose header > synchronization.
This is also explained in the star archive format man page http://cdrecord.berlios.de/private/man/star/ http://cdrecord.berlios.de/private/man/star/star.4.html BTW: star was the first tar archiver that implemented the POSIX.1-2001 archive format. Jörg -- EMail:[email protected] (home) Jörg Schilling D-13353 Berlin [email protected] (uni) [email protected] (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily
