Bsdtar and archive torture tests

Ed Maste emaste at
Mon Sep 26 12:58:12 PDT 2005

In 16.11 "Backup Basics" the handbook mentions a paper by Elizabeth D.
Zwicky and presented at LISA V in 1991.  She tested a number of archive
and backup programs, including GNU tar and other tar implementations,
and dump/restore.  I've found that she's presented an updated version
of the paper at LISA XVII in 2003[1].

I ran the set of testcases she developed against gtar and bsdtar, after
deleting the "holes" subdirectory.  (The test included a sparse file with
a 0.5TB hole.  Without support for sparse files, bsdtar quickly filled
my disk so I didn't bother with those tests.)

To run the test, I did
cd /d2/archive_test/original
tar -cf /d2/archive_test/bsdtar.tar .
cd /d2/archive_test/bsdtar_recovered
tar -xpf /d2/archive_test/bsdtar.tar
perl original bsdtar_recovered | less

The script produced more than 60000 lines of the form

Symlink target changed from ../longfilenames/84<C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3>
<C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0><C3><A0> to ../longfilenames/84<E0><E0><E0><E0><E0>

as well as some other issues.  It appears that all of the "symlink
target changed" cases have both a long name and some high-bit
characters.  I haven't had any time to look into what might cause
this, but just wanted to mention the availability of these testcases
and some initial results.

For reference, gtar runs into a few issues with long names, but doesn't
change symlink targets.


Ed Maste, Sandvine Incorporated

More information about the freebsd-current mailing list