# other UN*X-compatible machines, as used on chiark.greenend.org.uk.
#
# chiark backup is:
-# Copyright (C) 1997-1998,2000-2001 Ian Jackson <ian@chiark.greenend.org.uk>
+# Copyright (C) 1997-1998,2000-2001,2007
+# Ian Jackson <ian@chiark.greenend.org.uk>
# Copyright (C) 1999 Peter Maydell <pmaydell@chiark.greenend.org.uk>
#
# This is free software; you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
+# Foundation; either version 3, or (at your option) any later version.
#
# This is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# details.
#
# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# with this program; if not, consult the Free Software Foundation's
+# website at www.fsf.org, or the GNU Project website at www.gnu.org.
# We are invoked by full if the tape description file says that it is
# for an incremental backup. We expect two commandline argument which
sub closepipes () {
close(DUMPOR); close(BUFOR);
close(DUMPOW); close(BUFOW);
+ close(GZOR); close(GZOW);
}
setstatus "PROBLEMS during incremental dump";
for $tf (@fsys) {
parsefsys();
+ prepfsys();
$bufir='DUMPOR';
$ddcmd= "$nasty dd ibs=$softblocksizebytes obs=$blocksizebytes of=$ntape";
$ddcmd .= " conv=sync";
}
+ if ($dopt{'noinc'}) {
+ pboth("Incrementals of $atf_print ($prefix) suppressed in config.\n");
+ }
+
if ($tm eq 'dump') {
- $dumpcmd= "dump 1bfu $softblocksizekb - $atf";
+ $dumplabel= $pcstr.$atf_print.'$';
+ $dumpcmd= "dump 1Lbfu $dumplabel $softblocksizekb - $atf";
+ } elsif ($tm eq 'gtar') {
+ $dumpcmd= "tar NCcfl $fsidfile $atf - .";
} else {
- print "Not dumping $atf ($prefix) - not \`dump'.\n" or die $!;
- print LOG "Not dumping $atf ($prefix) - not \`dump'.\n" or die $!;
+ pboth("Not dumping $atf_print ($prefix) - not supported.\n");
next;
}
- nexttapefile("inc $prefix:$atf");
+ nexttapefile("inc $prefix:$atf_print");
# Same trick as full uses to do a pipeline whilst keeping track
# of all exit statuses:
# advance is a file counter, so it needs to be updated for each
# dump we do to tape.
$advance++;
+
+ finfsys();
}
# Rewind the tape, and increment the counter of incremental backups.
close IAN or die $!;
rename 'increm-advance.new','increm-advance' or die $!;
-print LOG "Next FULL dump tape is $next\n" or die $!;
-print "Next FULL dump tape is $next\n" or die $!;
+pboth("Next FULL dump tape is $next\n");
setstatus "INCREMENTAL successful: $tapedesc, next full is $next";
exit 0;