Just some misc clean-up to Alan's stuff.
authorCarl N Baldwin <cnb@plane.localdomain>
Sun, 27 Nov 2005 01:45:01 +0000 (18:45 -0700)
committerCarl N Baldwin <cnb@plane.localdomain>
Sun, 27 Nov 2005 01:45:01 +0000 (18:45 -0700)
main.cpp
scripts/pack-image.sh

index 6dc5465e0d2089b2bce57a5a4ceb4f5a2dd55b3e..d11237caffb67f544a12097c7cd30e1a840b6868 100644 (file)
--- a/main.cpp
+++ b/main.cpp
@@ -136,7 +136,10 @@ void delete_objects( ITER begin, const ITER &end ) {
 int main() {
 
   // Check to make sure required env variables are set
-  if(getenv("backupdbin") == NULL || getenv("backupdbout") == NULL || getenv("blocksize") == NULL || getenv("availsizemb") == NULL)
+  if( getenv( "backupdbin"  ) == NULL ||
+      getenv( "backupdbout" ) == NULL ||
+      getenv( "blocksize"   ) == NULL ||
+      getenv( "availsizemb" ) == NULL )
   {
      cerr << "Required environment variables are not set. Exiting." << endl;
      return 1;
@@ -195,8 +198,9 @@ int main() {
   sort( backups_s.rbegin(), backups_s.rend(), FileData::sizecmp );
 
   file_set final;
-  unsigned long long space = atoll(getenv("availsizemb")) * 1048576ull;
+  const unsigned long long availsizemb = atoll( getenv("availsizemb") ) * 0x100000ull;
+  unsigned long long space = availsizemb;
+
   insert_iterator<file_set> final_i( final, final.begin() );
 
   // Copy files over until full or out of files
@@ -230,9 +234,11 @@ int main() {
   sizes( final.begin(), final.end(), total_blocks, total_bytes );
 
   // Track how many disks there are remaining to be burned
-  unsigned long long disks_remaining = 0; 
-  if(modified_bytes || added_bytes) 
-    disks_remaining = (unsigned long long)ceil(static_cast<double>(modified_bytes+added_bytes)/(atoll(getenv("availsizemb"))*1048576ull))-1;
+  unsigned long long disks_remaining = 0;
+  if(modified_bytes || added_bytes)
+    disks_remaining = static_cast<unsigned long long>(
+        ceil( static_cast<double>( modified_bytes + added_bytes ) / availsizemb ) - 1
+        );
 
   updateLastBackupDate( final.begin(), final.end(), now );
 
@@ -250,7 +256,7 @@ int main() {
   cerr << "    Added Blocks:           " << added_blocks << endl;
   cerr << "    Modified Bytes:         " << modified_bytes << endl;
   cerr << "    Modified Blocks:        " << modified_blocks << endl;
-  cerr << "        Disks Remaining:        " << disks_remaining << endl << endl;
+  cerr << "      Disks Remaining:      " << disks_remaining << endl << endl;
 
   cerr << "Will be backed up..." << endl;
   cerr << "    Essential Bytes:        " << essential_bytes << endl;
index fd1e8bca7677047ffff82a2820e17a6c77d0632d..2bdb75e920134b46ee49e9d8ca9756eae10d93c6 100755 (executable)
@@ -10,8 +10,9 @@ export PATH=$scriptsdir:/bin:/usr/bin:/sbin:/usr/sbin
 # source the system specific configuration
 [ -f /etc/lsbackups.conf ] && . /etc/lsbackups.conf
 
+simulate=
 # process command line arguments
-case "$1" in 
+case "$1" in
   -s) simulate=1;;
 esac
 
@@ -23,12 +24,8 @@ restorescript="$scriptsdir/restore.sh"
 
 echo "-> Creating directories"
 mkdir --mode=700 -p $datadir $imagedir $isomountdir $tmpdir
-if [ $? != 0 ] 
-then
-  if test -d $isomountdir
-  then
-    rm -rf $isomountdir
-  fi
+if [ $? != 0 ]; then
+  test -d $isomountdir && rm -rf $isomountdir
   err "Unable to create the following directories:
   $datadir $imagedir $isomountdir $tmpdir"
 fi
@@ -39,25 +36,20 @@ dd of=$isoimage bs=1M count=0 seek=$imagesizemb
 [ $? != 0 ] && err "dd failed to create $isoimage"
 
 mke2fs -b $blocksize -F $isoimage
-
-if [ $? != 0 ]
-then
+if [ $? != 0 ]; then
   rm -rf $isomountdir $isoimage
   err "Unable to create the iso image: $isoimage"
 fi
 
 e2label $isoimage $today
-
-if [ $? != 0 ]
-then
+if [ $? != 0 ]; then
   rm -rf $isomountdir $isoimage
   err "Unable to label the iso image: $isoimage"
 fi
 
 echo "-> Mounting the iso image"
 mount -t ext2 -o loop $isoimage $isomountdir
-if [ $? != 0 ]
-then
+if [ $? != 0 ]; then
   rm -rf $isomountdir $isoimage
   err "Unable to mount the iso image: $isoimage -> $isomountdir"
 fi
@@ -70,18 +62,16 @@ echo "-> Running find to get the status of files"
 {
   for type in d f l; do
     findformat="$type %#m %u %g %s %CY%Cm%Cd%CH%CM%CS 0 %p\0"
-    if [ -z "$excludedirs" ]
-    then 
+    if [ -z "$excludedirs" ]; then
       find $backupdirs -type $type -printf "$findformat"
     else
       echo $excludedirs | sed -e 's/ /\n/g' > $tmpdir/excluded
       find $backupdirs -type $type -printf "$findformat" | grep -z -v -f $tmpdir/excluded
     fi
   done
-} > $currentfiles 
+} > $currentfiles
 
-if [ ! -z $simulate ]
-then
+if [ -n $simulate ]; then
   backupdbin=$backupdbout
 fi
 
@@ -92,8 +82,7 @@ echo "-> Determining list of files to backup with lsbackups"
   cat $currentfiles
 } | lsbackups > $backups 2>$statusfile
 
-if [ ! -z $simulate ]
-then
+if [ -n $simulate ]; then
    umount $isomountdir
    rm -rf $isomountdir $isoimage
    cat $statusfile
@@ -104,8 +93,7 @@ fi
 echo "-> Running rsync to pack the image"
 rsyncopts="-W -H -S -l -p -t -g -o -0 --files-from=- --stats --progress"
 cat $backups | rsync $rsyncopts / $isomountdir
-if [ $? != 0 ]
-then
+if [ $? != 0 ]; then
   umount $isomountdir
   rm -rf $isomountdir $isoimage $backupdbout
   err "Unable to rsync to pack the image"
@@ -134,6 +122,5 @@ echo $today > $lastbackupfile
 
 echo "-> Moving new database to $backupdbin"
 mv $backupdbout $backupdbin
-[ $? != 0 ] && err "Unable to move backupdb: $backupdbout to $backupdbin" 
-
+[ $? != 0 ] && err "Unable to move backupdb: $backupdbout to $backupdbin"