projects
/
zfs-ubuntu
/
.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added more context information in error messages
[zfs-ubuntu/.git]
/
zfs-replicate-all
diff --git
a/zfs-replicate-all
b/zfs-replicate-all
index 5d606bf85c0eeee8743fbc8dd60ee17d275ec511..01f1becb7a2930c2c9938084951320ba5f4aa1ba 100755
(executable)
--- a/
zfs-replicate-all
+++ b/
zfs-replicate-all
@@
-14,6
+14,7
@@
logfile="$logdir/zfs-replicate.log"
mylogfile="$logdir/zfs-replicate-all.log"
date=`date`
starttime=`date +%s`
mylogfile="$logdir/zfs-replicate-all.log"
date=`date`
starttime=`date +%s`
+tmpfile=`tempfile`
# Make sure we aren't already running
SCRIPT_NAME=${0##*/}
# Make sure we aren't already running
SCRIPT_NAME=${0##*/}
@@
-97,17
+98,20
@@
backup_pools=$backup_pool
for backup_pool in $backup_pools; do
# Import the local backup pool if needed and the option is given to do so, else error out
for backup_pool in $backup_pools; do
# Import the local backup pool if needed and the option is given to do so, else error out
-zpool list -H $backup_pool >
/dev/null
2>&1
+zpool list -H $backup_pool >
$tmpfile
2>&1
if [ $? != 0 ]; then
if [[ $import_export_backup_pool == 1 ]]; then
if [ $? != 0 ]; then
if [[ $import_export_backup_pool == 1 ]]; then
- zpool import $backup_pool
+ zpool import $backup_pool
>> $tmpfile 2>&1
if [ $? != 0 ]; then
if [ $? != 0 ]; then
- fatal_and_exit "-E- unable to import the backup pool '$backup_pool' on $hostname" "$mailto"
+ msgs=`cat $tmpfile`
+ fatal_and_exit "-E- unable to import the backup pool '$backup_pool' on $hostname: $msgs" "$mailto"
fi
else
fi
else
- fatal_and_exit "-E- The local backup pool on $hostname, '$backup_pool' doesn't seem to exist." "$mailto"
+ msgs=`cat $tmpfile`
+ fatal_and_exit "-E- The local backup pool on $hostname, '$backup_pool' doesn't seem to exist: $msgs" "$mailto"
fi
fi
fi
fi
+rm -f $tmpfile
# Obtain the zpool guid for the local backup pool
backup_pool_guid=`zpool get guid $backup_pool 2>&1 | grep $backup_pool | awk '{ print $3 }'`
# Obtain the zpool guid for the local backup pool
backup_pool_guid=`zpool get guid $backup_pool 2>&1 | grep $backup_pool | awk '{ print $3 }'`
@@
-121,7
+125,6
@@
current_backup_marker=@current-backup-${backup_pool_guid}
previous_backup_marker=@previous-backup-${backup_pool_guid}
# Sort the filesystems to replicate by the oldest backup first
previous_backup_marker=@previous-backup-${backup_pool_guid}
# Sort the filesystems to replicate by the oldest backup first
-tmpfile=`tempfile`
for filesystem in $filesystems_to_replicate; do
if [[ $filesystem =~ ':' ]]; then
dst_pool=${filesystem%%:*}
for filesystem in $filesystems_to_replicate; do
if [[ $filesystem =~ ':' ]]; then
dst_pool=${filesystem%%:*}
@@
-149,17
+152,19
@@
if [[ $import_export_backup_pool == 1 ]]; then
# Don't export the pool if there is a currently running zfs-scrub operation
ps -ef | grep "zfs-scrub" | grep -q "${backup_pool}" | grep -v grep
if [ $? != 0 ]; then
# Don't export the pool if there is a currently running zfs-scrub operation
ps -ef | grep "zfs-scrub" | grep -q "${backup_pool}" | grep -v grep
if [ $? != 0 ]; then
- zpool export $backup_pool
+ zpool export $backup_pool
>> $tmpfile 2>&1
if [ $? != 0 ]; then
sleep 300
if [ $? != 0 ]; then
sleep 300
- zpool export $backup_pool
+ zpool export $backup_pool
>> $tmpfile 2>&1
if [ $? != 0 ]; then
if [ $? != 0 ]; then
- lsof /$backup_pool/*
- fatal_and_exit "-E- unable to export the local backup pool $backup_pool on $hostname" "$mailto" 0
+ lsof /$backup_pool/* >> $tmpfile 2>&1
+ msgs=`cat $tmpfile`
+ fatal_and_exit "-E- unable to export the local backup pool $backup_pool on $hostname: $msgs" "$mailto" 0
fi
fi
fi
fi
fi
fi
fi
fi
+rm -f $tmpfile
done
done