Added checks for failed md5sum calculation.
[backups/.git] / scripts / pack-image.sh
index 2bdb75e920134b46ee49e9d8ca9756eae10d93c6..ea702a5b767c48039455751d21177f402359999b 100755 (executable)
@@ -22,6 +22,11 @@ isoimage="$imagedir/$today.iso"
 isomountdir="$isoimage.mnt"
 restorescript="$scriptsdir/restore.sh"
 
+echo "-> Checking for available disk space on $imagedir"
+available=$(df $imagedir | awk '{print$4}' | grep -E "[0-9]+")
+required=$((imagesizemb*1024))
+[ $required -gt $available ] && err "Not enough space for the backup image on $imagedir"
+
 echo "-> Creating directories"
 mkdir --mode=700 -p $datadir $imagedir $isomountdir $tmpdir
 if [ $? != 0 ]; then
@@ -71,7 +76,7 @@ echo "-> Running find to get the status of files"
   done
 } > $currentfiles
 
-if [ -n $simulate ]; then
+if [ -n "$simulate" ]; then
   backupdbin=$backupdbout
 fi
 
@@ -82,7 +87,7 @@ echo "-> Determining list of files to backup with lsbackups"
   cat $currentfiles
 } | lsbackups > $backups 2>$statusfile
 
-if [ -n $simulate ]; then
+if [ -n "$simulate" ]; then
    umount $isomountdir
    rm -rf $isomountdir $isoimage
    cat $statusfile
@@ -115,6 +120,8 @@ echo "-> Calculating md5sum for image"
 md5sum $isoimage | awk '{print$1}' > $isoimage.md5sum
 
 [ $? != 0 ] && err "Unable to calculate the md5sum for this image: $isoimage"
+[ -z "$isoimage.md5sum" ] && err "Unable to calculate the md5sum for this image: $isoimage"
+[ -s "$isoimage.md5sum" ] || err "Unable to calculate the md5sum for this image: $isoimage"
 
 cat $statusfile | mailx -s "DVD image available to burn - $today" $mailto