projects
/
zfs-ubuntu
/
.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added new script to help clear ZFS labels from a disk
[zfs-ubuntu/.git]
/
zfs-replicate-all
diff --git
a/zfs-replicate-all
b/zfs-replicate-all
index 999c95eb0cec2f11bd634e6dfecf010191f44e4b..5dde8b2eccf2c93bad96e45ce176c4d896ce9512 100755
(executable)
--- a/
zfs-replicate-all
+++ b/
zfs-replicate-all
@@
-14,11
+14,12
@@
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##*/}
PROCESS_LIST=`tempfile`
# Make sure we aren't already running
SCRIPT_NAME=${0##*/}
PROCESS_LIST=`tempfile`
-ps -ef | grep -e "$SCRIPT_NAME" | grep -v grep | grep -v $$ | grep -v $PPID >> $PROCESS_LIST
+ps -ef | grep -e "$SCRIPT_NAME" | grep -v grep | grep -v
tail | grep -v less | grep -v
$$ | grep -v $PPID >> $PROCESS_LIST
if [[ $? == 0 ]]; then
echo "$date Another $SCRIPT_NAME process is already running" >> $mylogfile
cat $PROCESS_LIST >> $mylogfile
if [[ $? == 0 ]]; then
echo "$date Another $SCRIPT_NAME process is already running" >> $mylogfile
cat $PROCESS_LIST >> $mylogfile
@@
-97,11
+98,10
@@
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
-tmpfile=`tempfile`
zpool list -H $backup_pool > $tmpfile 2>&1
if [ $? != 0 ]; then
if [[ $import_export_backup_pool == 1 ]]; then
zpool list -H $backup_pool > $tmpfile 2>&1
if [ $? != 0 ]; then
if [[ $import_export_backup_pool == 1 ]]; then
- zpool import $backup_pool >> $tmpfile 2>&1
+ zpool import
-f
$backup_pool >> $tmpfile 2>&1
if [ $? != 0 ]; then
msgs=`cat $tmpfile`
fatal_and_exit "-E- unable to import the backup pool '$backup_pool' on $hostname: $msgs" "$mailto"
if [ $? != 0 ]; then
msgs=`cat $tmpfile`
fatal_and_exit "-E- unable to import the backup pool '$backup_pool' on $hostname: $msgs" "$mailto"
@@
-125,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%%:*}
@@
-153,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