then
rm -rf $isomountdir
fi
- echo "-E- Unable to create the following directories: "
- echo " $datadir $imagedir $isomountdir $tmpdir"
- exit -1
+ err "Unable to create the following directories:
+ $datadir $imagedir $isomountdir $tmpdir"
fi
echo "-> Creating the iso image in $isoimage"
-dd if=/dev/null of=$isoimage bs=1M count=0 seek=4440
+dd of=$isoimage bs=1M count=0 seek=4440
+
+[ $? != 0 ] && err "dd failed to create $isoimage"
+
mke2fs -b 2048 -F $isoimage
+
if [ $? != 0 ]
then
rm -rf $isomountdir $isoimage
- echo "-E- Unable to create the iso image: $isoimage"
- exit -1
+ err "Unable to create the iso image: $isoimage"
fi
echo "-> Mounting the iso image"
if [ $? != 0 ]
then
rm -rf $isomountdir $isoimage
- echo "-E- Unable to mount the iso image: $isoimage -> $isomountdir"
- exit -1
+ err "Unable to mount the iso image: $isoimage -> $isomountdir"
fi
echo "-> Directories being backedup and excluded:"
{
for type in d f l; do
findformat="$type %#m %u %g %s %CY%Cm%Cd%CH%CM%CS 0 %p\0"
- if [ -z $excludeddirs ]
+ if [ -z $excludedirs ]
then
find $backupdirs -type $type -printf "$findformat"
else
- regex=`echo $excludedirs | sed -e 's/ /.*\\\\|/g'`
- regex=`echo "'\($regex.*\)'"`
- find $backupdirs -type $type -o -regex $regex -prune -o -printf "$findformat"
+ echo $excludedirs | sed -e 's/ /\n/g' > $tmpdir/excluded
+ find $backupdirs -type $type -printf "$findformat" | grep -z -v -f $tmpdir/excluded
fi
done
} > $currentfiles
if [ $? != 0 ]
then
umount $isomountdir
- rm -rf $isomountdir $isoimage
- echo "-E- Unable to rsync to pack the image"
- exit -1
+ rm -rf $isomountdir $isoimage $backupdb.tmp
+ err "Unable to rsync to pack the image"
fi
echo "-> Copying over database and status file"
+mv $backupdb.tmp $backupdb
cp $statusfile $backupdb $restorescript $isomountdir
-if [ $? != 0 ]
-then
- echo "-E- Unable to copy the database and status file"
- exit -1
-fi
+
+[ $? != 0 ] && err "Unable to copy the database and status file"
echo "-> Unmounting image"
umount $isomountdir
-if [ $? != 0 ]
-then
- echo "-E- Unable to unmount the iso dir: $isomountdir"
- exit -1
-fi
+
+[ $? != 0 ] && err "Unable to unmount the iso dir: $isomountdir"
echo "-> Calculating md5sum for image"
md5sum $isoimage | awk '{print$1}' > $isoimage.md5sum
-if [ $? != 0 ]
-then
- echo "-E- Unable to calculatethe md5sum for this image: $isoimage"
- exit -1
-fi
+
+[ $? != 0 ] && err "Unable to calculate the md5sum for this image: $isoimage"
cat $statusfile | mailx -s "DVD image available to burn - $today" $mailto