bug-tar
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-tar] Monthly backup doesn't expand files, but which are in the arch


From: Steffen Nurpmeso
Subject: [Bug-tar] Monthly backup doesn't expand files, but which are in the archive
Date: Sat, 27 Aug 2016 15:03:13 +0200
User-agent: s-nail v14.8.10-324-g95960bd

Hello, and help! help! help! ^.^

I have no idea how long this behaviour exists, i am using GNU tar
on Linux since almost a year (star before, GNU tar on Mac OS X (i
think it was, Snow Leopard), and i don't know what the FreeBSD tar
before that was, anyway), and i never needed to restore a backup
in that time.  But now i have.. and it doesn't work.
I.e., the backup script is old and always worked well.

So it collects a list of files in a textfile, and then either
  $tarxcmd = "tar -c -f - | $COMPRESSOR > $ar";
or
  $tarxcmd = "tar -r -f $ar >/dev/null";
and then
        unless (open XARGS, "| xargs -0 $tarxcmd 2>>$MFFN") {
            ::err(1, "Failed to create pipe: $^E");
            ::do_exit(1);
        }
        foreach my $p (@$listref) { print XARGS $p, "\x00"; }
        close XARGS;

so we go like

  - ... scheduled 2199 files for backup
  - Creating complete archive....
  tar: Removing leading `/' from member names
  tar: Removing leading `/' from hard link targets
  tar: Removing leading `/' from member names
  - Writing current timestamp to </home/steffen/traffic/.-backup.dat>
  - mail(1)ing report and exit success

Ok.  The list of files to be added is complete, but the last three
directories including a few dozen files are completely missing if
i unpack the archive!!
They are however part of the archive content, e.g.:

  address@hidden x]$ tar -tf monthly-backup.tar | grep 'mail/2013.track'
  address@hidden x]$ grep 'mail/2013.track' monthly-backup.tar
  Binary file monthly-backup.tar matches

So i 

  address@hidden x]$ tar -tf monthly-backup.tar
  ...
  home/steffen/sec.arena/configs.git/sys.localhost/fbsd-10/etc/spwd.db
  home/steffen/sec.arena/configs.git/sys.localhost/fbsd-10/etc/hosts.equiv
  home/steffen/sec.arena/configs.git/sys.localhost/fbsd-10/etc/rc.conf
  address@hidden x]$ 

So the next file in the archive would "man.conf" in the very same
directory according to archive content:

  $ dd ibs=1000000 skip=375 if=monthly-backup.tar|s-hex|v
  ..
  00051c40  68 6f 6d 65 2f 73 74 65  66 66 65 6e 2f 73 65 63  home/steffen/sec
  00051c50  2e 61 72 65 6e 61 2f 63  6f 6e 66 69 67 73 2e 67  .arena/configs.g
  00051c60  69 74 2f 73 79 73 2e 6c  6f 63 61 6c 68 6f 73 74  it/sys.localhost
  00051c70  2f 66 62 73 64 2d 31 30  2f 65 74 63 2f 72 63 2e  /fbsd-10/etc/rc.
  00051c80  63 6f 6e 66 00 00 00 00  00 00 00 00 00 00 00 00  conf............
  00051c90  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  ................
  00051ca0  00 00 00 00 30 30 30 30  36 30 30 00 30 30 30 31  ....0000600.0001
  00051cb0  37 35 30 00 30 30 30 31  37 35 30 00 30 30 30 30  750.0001750.0000
  00051cc0  30 30 30 30 35 31 35 00  31 32 36 35 34 34 36 35  0000515.12654465
  00051cd0  36 31 32 00 30 32 35 33  30 33 00 20 30 00 00 00  612.025303. 0...
  00051ce0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  ................
  ..
  00051f60  63 6b 5f 71 75 6f 74 61  73 3d 4e 4f 0a 63 6c 65  ck_quotas=NO.cle
  00051f70  61 72 5f 74 6d 70 5f 65  6e 61 62 6c 65 3d 59 45  ar_tmp_enable=YE
  00051f80  53 0a 64 75 6d 70 64 65  76 3d 4e 4f 0a 00 00 00  S.dumpdev=NO....
  00051f90  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  ................
  *
  00052440  68 6f 6d 65 2f 73 74 65  66 66 65 6e 2f 73 65 63  home/steffen/sec
  00052450  2e 61 72 65 6e 61 2f 63  6f 6e 66 69 67 73 2e 67  .arena/configs.g
  00052460  69 74 2f 73 79 73 2e 6c  6f 63 61 6c 68 6f 73 74  it/sys.localhost
  00052470  2f 66 62 73 64 2d 31 30  2f 65 74 63 2f 6d 61 6e  /fbsd-10/etc/man
  00052480  2e 63 6f 6e 66 00 00 00  00 00 00 00 00 00 00 00  .conf...........
  00052490  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  ................
  000524a0  00 00 00 00 30 30 30 30  36 30 30 00 30 30 30 31  ....0000600.0001
  000524b0  37 35 30 00 30 30 30 31  37 35 30 00 30 30 30 30  750.0001750.0000
  000524c0  30 30 30 30 30 33 35 00  31 32 36 35 34 34 36 35  0000035.12654465
  000524d0  36 31 32 00 30 32 35 34  34 37 00 20 30 00 00 00  612.025447. 0...
  000524e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  ................
  *

Thankful for how to make this valid again, for hints and how to
access the missing data easily.
Thank you!!

--steffen



reply via email to

[Prev in Thread] Current Thread [Next in Thread]