chiark / gitweb /
@@ -1,3 +1,9 @@
[chiark-utils.git] / backup / increm
index f2cb7b4814b30e8b4ffaddfe9e6f1a7272c552b1..b50f50e8c9040d93475a1e8b8edcd455ca2f100a 100755 (executable)
@@ -80,6 +80,7 @@ if ($advance == 1) {
 sub closepipes () {
     close(DUMPOR); close(BUFOR);
     close(DUMPOW); close(BUFOW);
+    close(GZOR); close(GZOW);
 }
 
 setstatus "PROBLEMS during incremental dump";
@@ -87,6 +88,7 @@ setstatus "PROBLEMS during incremental dump";
 for $tf (@fsys) {
 
     parsefsys();
+    prepfsys();
     
     $bufir='DUMPOR';
     $ddcmd= "$nasty dd ibs=$softblocksizebytes obs=$blocksizebytes of=$ntape";
@@ -103,9 +105,10 @@ for $tf (@fsys) {
 
     if ($tm eq 'dump') {
        $dumpcmd= "dump 1bfu $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 ($prefix) - not supported.\n");
        next;
     }
 
@@ -125,6 +128,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.