X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=chiark-utils.git;a=blobdiff_plain;f=backup%2Fcheckallused;h=437592643ea5be9665d67c99f30c2aec6ac4f613;hp=953f136f8e8dee3b6de996eafe7dc222b96550ca;hb=8f4948fa6be5491d96468ffb4784b66e66f5e6fe;hpb=823a4f1c9ec99daf48228dff056d54db62c3a849 diff --git a/backup/checkallused b/backup/checkallused index 953f136..4375926 100755 --- a/backup/checkallused +++ b/backup/checkallused @@ -56,8 +56,8 @@ while (!defined $tapedone{$tape}) { $tape= $next; } -proc checkdevspec ($$$) { - my ($atf,$devspec,$why); +sub checkdevspec ($$$) { + my ($atf,$devspec,$why) = @_; push @{ $devspec{$atf}{$devspec} }, $why; } @@ -105,14 +105,12 @@ for $pfx ('', sort keys %prefix) { next if m,^procfs\s,; m,^/dev/(\S+)\s.*\s(/\S*)\s*$, or die "$_ ?"; ($dev,$mp) = ($1,$2); - checkdevspec("$pcstr$imp","$pcstr/dev/$dev","df"); + checkdevspec("$pcstr$mp","$pcstr/dev/$dev","df"); $mounted{"$pcstr$mp"}="$pcstr$dev"; print " $1-$2"; if (defined($backto= $backed{"$pcstr$mp"})) { if (m,^/dev/\S+\s+\d+\s+(\d+)\s,) { $usedkb{$backto} += $1; - } else { - $usedkb{$backto} += 0; - $unkkb{$backto} .= " + $prefix:$mp"; + $countedkb{"$pcstr$mp"}++; } } } @@ -121,13 +119,19 @@ for $pfx ('', sort keys %prefix) { } foreach $fsg (keys %usedkb) { - print "filesystem group $fsg: $usedkb{$fsg} 1K-blocks$unkkb{$fsg}\n"; + print "filesystem group $fsg: $usedkb{$fsg} 1K-blocks raw accounted\n"; } -foreach $dsk (keys $devspec) { - if (@{ $devspec{$dsk} } != 1) { - foreach $devspec @{ $devspec{$dsk} } { - &e("inconsistent devices for $dsk: $devspec"); +foreach $fsg (keys %backed) { + next if $countedkb{$fsg}; + print "unaccounted filesystem: $fsg\n"; +} + +foreach $dsk (keys %devspec) { + if (keys %{ $devspec{$dsk} } != 1) { + foreach $devspec (keys %{ $devspec{$dsk} }) { + &e("inconsistent devices for $dsk: $devspec (". + join(', ', @{ $devspec{$dsk}{$devspec} }).")"); } } } @@ -167,9 +171,7 @@ for (;;) { for $fs (sort keys %backed) { length($mounted{$fs}) || &e("dumped ($backed{$fs}), not a mount point: $fs"); } for $fs (sort keys %incrd) { length($mounted{$fs}) || &e("increm'd ($incrd{$fs}), not a mount point: $fs"); } -for $fs (sort keys %mounted) { - next if $backed{$fs} - length($backed{$fs}) || &e("mount point ($mounted{$fs}), not dumped: $fs"); } +for $fs (sort keys %mounted) { length($backed{$fs}) || &e("mount point ($mounted{$fs}), not dumped: $fs"); } for $fs (sort keys %mounted) { length($incrd{$fs}) || &e("mount point ($mounted{$fs}), not increm'd: $fs"); } $emsg.= "configuration ok\n" unless $e;