we are having a problem with large( +2 gig) .Z compressed tarballs 
(made w/ solaris compress utility) getting truncated/corrupted when 
they are backed up w/ amanda (using gnutar).

Conveniently found this out when we attempted a restore.

What happens is that if one of these large compressed files is 
encountered by the amanda backup, it silently stops backing up anything
on that filesystem at that 
point, and if the file is restored, it is a truncated/corrupted 
version of the original file.  gnutar has no problem backing 
up/restoring larger (3.9 g) tarballs which are not compressed.

we will attempt a workaround by using a new version of gzip, but I am 
curious as to whether this has been seen before, and whether it is a 
gnutar bug, and if so , where I shoud report it.  I am currently 
running a test of gnutar w/o amanda on this file, but if it works 
properly I am left scratching my head as to whether the problem is with
amanda or gnutar.

details follow:
--

amanda version Amanda-2.4.2p2
gnutar version 1.13.19
OS: solaris 2.6 /sparc

I have been testing on holding disk w/o using tape drive at all.
sample holding disk file :

# head foo.someuniversity.edu._raid.1
AMANDA: FILE 20011025 foo.someuniversity.edu /raid lev 1 comp N 
program /usr/local/bin/gnutar
To restore, position tape at start of file and run:
        dd if=<tape> bs=32k skip=1 | /usr/local/bin/gnutar -f... -
--
"restore" file off of holding disk:

# amrestore foo.someuniversity.edu._raid.1
amrestore:   0: restoring foo.someuniversity.edu._raid.20011025.1

# ls
-rw-------   1 amanda   users    178585600 Oct 25 01:35 
foo.someuniversity.edu._raid.1
-rw-r-----   1 user     other    178552832 Oct 25 11:19 
foo.someuniversity.edu._raid.20011025.1


# gnutar -tvf foo.someuniversity.edu._raid.20011025.1 >  tableofcont 

gnutar: Unexpected EOF in archive
gnutar: Error is not recoverable: exiting now

Note below that the .Z file is the last file listed, even tho  there are
many more to be backed up... obviously gnutar/amanda choked.

# tail -3 tableofcont
drwxr-xr-x www/nobody       29 2001-05-11 14:40:53 
./tmp/etc/WebEvent/cals/cal7/
-rw-r--r-- user/other        0 2001-10-25 00:03:48 ./foo
-rw-r--r-- user/other 2111100973 2001-10-24 22:52:24 
./backup/10-24-2001.tar.Z

--
# gnutar -xvpf foo.someuniversity.edu._raid.20011025.1
./backup/10-24-2001.tar.Z
./backup/10-24-2001.tar.Z
gnutar: Unexpected EOF in archive
gnutar: Unexpected EOF in archive
gnutar: Error is not recoverable: exiting now

# cd backup
# ls
total 344100
drwxr-xr-x   2 user     other        512 Oct 25 11:38 ./
drwx------   3 amanda   users        512 Oct 25 11:38 ../
-rw-r--r--   1 user     other    176077824 Oct 25 11:39 
10-24-2001.tar.Z

What the #%^#$%&*() is this file note much smaller size than the
original, 
# file 10-24-2001.tar.Z
10-24-2001.tar.Z:       USTAR tar archive

(???) (but this was a .Z compressed file previously ?
and just for grins, lets try to extract...)
#
# tar -tvf 10-24-2001.tar.Z 
-rw-r--r--   0/1   15704064 Oct 24 23:45 2001 
07365732347/./backup/test.tar
-rw------- 1311/100   4715 Oct 24 12:41 2001 
07365613346/./export/systems/deny
ce/.history
-rw------- 101/100 925207 Oct 24 15:43 2001 
07321545437/./export/systems/kaa/mail/foo
tar: directory checksum error

curiouser and curiouser... none of these files were in the original
tar.Z file, in fact, looking at the numbers on the front, these files
were backed up by gnu tar, not by the solaris tar which created the orig
file. they are other files off the same filesystem . 


---
amadmin DailySet info foo /raid

Current info for foo.someuniversity.edu /raid:
  Stats: dump rates (kps), Full:  4142.0, 3329.0, 3367.0
                    Incremental:  3229.0, 3999.0, 2880.0
          compressed size, Full: -100.0%,-100.0%,-100.0%
                    Incremental: -100.0%,-100.0%,-100.0%
  Dumps: lev datestmp  tape             file   origK   compK secs
          0  20011019  DailySet10          9 5103000 5103008 1232
          1  20011025                      0  174350  174368   54
---------------
amadmin DailySet version
build: VERSION="Amanda-2.4.2p2"
       BUILT_DATE="Fri Jun 29 17:13:55 MST 2001"
       BUILT_MACH="SunOS foo.someuniversity.edu 5.6 Generic_105181-11 
sun4u sparc
 SUNW,Ultra-5_10"
       CC="gcc"
paths: bindir="/usr/local/bin" sbindir="/usr/local/sbin"
       libexecdir="/usr/local/libexec" mandir="/usr/local/man"
       AMANDA_TMPDIR="/tmp/amanda" AMANDA_DBGDIR="/tmp/amanda"
       CONFIG_DIR="/usr/local/etc/amanda" DEV_PREFIX="/dev/dsk/"
       RDEV_PREFIX="/dev/rdsk/" DUMP="/usr/sbin/ufsdump"
       RESTORE="/usr/sbin/ufsrestore"
       GNUTAR="/usr/local/bin/gnutar"
       COMPRESS_PATH="/usr/local/bin/gzip"
       UNCOMPRESS_PATH="/usr/local/bin/gzip"
       MAILER="/usr/ucb/Mail"
       listed_incr_dir="/usr/local/var/amanda/gnutar-lists"
defs:  DEFAULT_SERVER="foo.someuniversity.edu"
       DEFAULT_CONFIG="DailySet"
       DEFAULT_TAPE_SERVER="foo.someuniversity.edu"
       DEFAULT_TAPE_DEVICE="/dev/rmt/0bn" HAVE_MMAP HAVE_SYSVSHM
  LOCKING=POSIX_FCNTL SETPGRP_VOID DEBUG_CODE
       AMANDA_DEBUG_DAYS=4 BSD_SECURITY USE_AMANDAHOSTS
       CLIENT_LOGIN="amanda" FORCE_USERID HAVE_GZIP
       COMPRESS_SUFFIX=".gz" COMPRESS_FAST_OPT="--fast"
       COMPRESS_BEST_OPT="--best" UNCOMPRESS_OPT="-dc"
--
 gnutar --version
tar (GNU tar) 1.13.19
-

the original file:
# file 10-24-2001.tar.Z
10-24-2001.tar.Z:       compressed data block compressed 16 bits



If anyone has a clue to give, I would appreciate it.

Reply via email to