X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=chiark-utils.git;a=blobdiff_plain;f=backup%2Fincrem;h=341cd993555db1fb897a330b0dc4fe4852180223;hp=57a037dc31cadce80345a60b3cc5395a24a6563e;hb=43243a5c7e4fd609b1a10b700b6bab322930eb71;hpb=374871b6f1b7b7cba5daa62c28c55d1481009aa2 diff --git a/backup/increm b/backup/increm index 57a037d..341cd99 100755 --- a/backup/increm +++ b/backup/increm @@ -88,6 +88,7 @@ setstatus "PROBLEMS during incremental dump"; for $tf (@fsys) { parsefsys(); + prepfsys(); $bufir='DUMPOR'; $ddcmd= "$nasty dd ibs=$softblocksizebytes obs=$blocksizebytes of=$ntape"; @@ -102,15 +103,21 @@ for $tf (@fsys) { $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: @@ -126,6 +133,8 @@ for $tf (@fsys) { # 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. @@ -135,8 +144,7 @@ print IAN "$advance\n" or die $!; 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;