Live FS Dump errors...
Marc Coyles
mcoyles at horbury.wakefield.sch.uk
Mon Sep 1 12:49:33 UTC 2008
Morning folks... I'm trying to use a script to run a dump of all
filesystems, but whenever I use the -L option, I receive an error as
follows for every mount:
DUMP: Date of this level 0 dump: Mon Sep 1 13:37:57 2008
DUMP: Date of last level 0 dump: the epoch
DUMP: Dumping snapshot of /dev/da0s1a (/) to standard output
DUMP: mapping (Pass I) [regular files]
DUMP: mapping (Pass II) [directories]
DUMP: estimated 329257 tape blocks.
DUMP: dumping (Pass III) [directories]
DUMP: dumping (Pass IV) [regular files]
DUMP: DUMP: 329274 tape blocks
DUMP: finished in 91 seconds, throughput 3618 KBytes/sec
DUMP: level 0 dump on Mon Sep 1 13:37:57 2008
DUMP: DUMP IS DONE
mksnap_ffs: Cannot create /home/.snap/dump_snapshot: Input/output error
dump: Cannot create /home/.snap/dump_snapshot: No such file or directory
DUMP: Date of this level 0 dump: Mon Sep 1 13:39:33 2008
DUMP: Date of last level 0 dump: the epoch
DUMP: Dumping snapshot of /dev/da0s1e (/usr) to standard output
DUMP: mapping (Pass I) [regular files]
DUMP: mapping (Pass II) [directories]
DUMP: estimated 4758000 tape blocks.
DUMP: dumping (Pass III) [directories]
mksnap_ffs: Cannot create /home/.snap/dump_snapshot: Input/output error
dump: Cannot create /home/.snap/dump_snapshot: No such file or directory
I've inspected the locations reported, and can confirm that
.snap/dump_snapshot exists in the required locations on every mount, and
shows as being created at the time the dump was run as follows:
bigsis# pwd
/home/.snap
bigsis# ls -ltra
total 4
drwx--x--x 11 root wheel 512 Mar 25 03:05 ..
-r-------- 1 root operator 0 Sep 1 13:32 fsck_snapshot
-r-------- 1 root operator 0 Sep 1 13:39 dump_snapshot
drwxrwx--- 2 root operator 512 Sep 1 13:39 .
The script I'm using is a perl script as follows, and is called by
root's crontab:
#!/usr/bin/perl
use strict;
use warnings;
use Getopt::Std;
use POSIX qw(strftime);
use vars qw($VERSION);
$Getopt::Std::STANDARD_HELP_VERSION = 1;
$VERSION = '1.2';
my @FS = ('/', '/home', '/usr', '/var');
my $day = lc(strftime "%A", localtime);
my $hostname = `/bin/hostname -s`;
my %opt = ('F' => 0, 'd' => 0, 'h' => 0);
my $type;
chomp $hostname;
getopts("Fdh",\%opt);
if ( $opt{h} == 1 ) {
print STDERR << "EOF";
usage: $0 [-hqd]
-h : this (help) message
-d : Dry run, only print what I am going to do
-F : Force full backup {type 0}
example: $0 -h -q -d
EOF
exit(0)
}
if ( $opt{F} == 1 ) {
$type = "0"
} else {
if ($day eq "sunday") {
$type = "0"
} else {
$type = "0"
}
}
foreach (@FS) {
my $name = $_;
if ($name eq '/') {
$name = '/root';
};
$name =~ s/^\///g;
# Unncomment for /backup/$day/$name.dump.gz
my $command = '/sbin/dump -' . $type . ' -aLuf - ' . $_ . ' |
gzip -q > /backup/' . $day . '/' .
$name . '.dump.gz';
# Put a "#" in front of the next line if you uncomment the last line
# my $command = '/sbin/dump -' . $type . ' -aLuf - ' . $_ . ' |
gzip -q > /backup/' . $hostname .
'/' . $day . '.' . $name . '.dump.gz';
if ($opt{d}) {
print($command . "\n");
} else {
system($command);
};
};
exit(0);
Any suggestions??? All works fine if I don't use -L, but this isn't
exactly ideal for a backup of a live file-system...
Marc A Coyles - Horbury School ICT Support Team
Mbl: 07850 518106
Land: 01924 282740 ext 730
Helpdesk: 01924 282740 ext 2000
More information about the freebsd-questions
mailing list