Make all indentation consistent.
authorMatthijs Kooijman <matthijs@stdin.nl>
Fri, 22 May 2009 12:50:52 +0000 (14:50 +0200)
committerMatthijs Kooijman <matthijs@stdin.nl>
Sat, 23 May 2009 08:34:16 +0000 (10:34 +0200)
Previously, there were many indentation styles in use: Real tabs, 2, 3
or 4 spaces, mixing these within the same file, function or even within
a single line.

This commit changes all bash scripts in the handlers, src and lib dirs
to use consistent indentation: three spaces are now used everywhere.
Other files (e.g. Makefiles) are left untouched.

Additionally, this commit removes all trailing whitespace.

28 files changed:
handlers/dup.helper.in
handlers/dup.in
handlers/ldap.helper.in
handlers/ldap.in
handlers/maildir.in
handlers/makecd.helper.in
handlers/makecd.in
handlers/mysql.helper.in
handlers/mysql.in
handlers/pgsql.helper.in
handlers/pgsql.in
handlers/rdiff.helper.in
handlers/rdiff.in
handlers/rsync.in
handlers/sh.in
handlers/svn.in
handlers/sys.helper.in
handlers/sys.in
handlers/tar.helper.in
handlers/tar.in
handlers/trac.in
handlers/wget
lib/easydialog.in
lib/tools.in
lib/vserver.in
src/backupninja.in
src/ninjahelper.in
src/ninjareport.in

index c1fbdd53fc76a549d20a78b38a5719b25d622e37..86745c82727551a3a679997a6ee72c6ca233cebf 100644 (file)
@@ -13,11 +13,11 @@ do_dup_host_includes() {
          [ -z "$dup_includes" ] && dup_includes="$dup_default_includes"
          for i in $dup_includes; do
             formItem include "$i"
-        done
-        formItem include ""
-        formItem include ""
-        formItem include ""
-        formDisplay
+         done
+         formItem include ""
+         formItem include ""
+         formItem include ""
+         formDisplay
       [ $? = 0 ] || return 1
       dup_includes="$REPLY"
    done
@@ -37,10 +37,10 @@ do_dup_vserver() {
          [ -z "$dup_vsincludes" ] && dup_vsincludes="$dup_default_includes"
          for i in $dup_vsincludes; do
             formItem include "$i"
-        done
-        formItem include ""
-        formItem include ""
-        formItem include ""
+         done
+         formItem include ""
+         formItem include ""
+         formItem include ""
       formDisplay
       [ $? = 0 ] || return 1
       dup_vsincludes="$REPLY"
@@ -69,26 +69,26 @@ do_dup_src() {
    [ $? = 0 ] || return 1
    case $host_or_vservers in
       'host')
-        do_dup_host_includes
-        [ $? = 0 ] || return 1
-        ;;
+         do_dup_host_includes
+         [ $? = 0 ] || return 1
+         ;;
       'vservers')
-        do_dup_vserver
-        [ $? = 0 ] || return 1
-        ;;
+         do_dup_vserver
+         [ $? = 0 ] || return 1
+         ;;
       'both')
-        do_dup_host_includes
-        [ $? = 0 ] || return 1
-        do_dup_vserver
-        [ $? = 0 ] || return 1
-        ;;
+         do_dup_host_includes
+         [ $? = 0 ] || return 1
+         do_dup_vserver
+         [ $? = 0 ] || return 1
+         ;;
       *)
-        return 1
-        ;;
+         return 1
+         ;;
    esac
    do_dup_excludes
    [ $? = 0 ] || return 1
-   
+
    _src_done="(DONE)"
    setDefault dest
 }
@@ -102,13 +102,13 @@ do_dup_dest() {
    REPLY=
    while [ -z "$REPLY" -o -z "$dup_destdir" -o -z "$dup_desthost" -o -z "$dup_destuser" ]; do
       formBegin "$dup_title - destination: first three items are compulsory"
-       formItem "desthost" "$dup_desthost"
-       formItem "destuser" "$dup_destuser"
-       formItem "destdir" "$dup_destdir"
-       formItem "keep" "$dup_keep"
+        formItem "desthost" "$dup_desthost"
+        formItem "destuser" "$dup_destuser"
+        formItem "destdir" "$dup_destdir"
+        formItem "keep" "$dup_keep"
         formItem "incremental" "$dup_incremental"
-       formItem "bandwidthlimit" "$dup_bandwidth"
-       formItem "sshoptions" "$dup_sshoptions"
+        formItem "bandwidthlimit" "$dup_bandwidth"
+        formItem "sshoptions" "$dup_sshoptions"
       formDisplay
       [ $? = 0 ] || return 1
 
@@ -117,7 +117,7 @@ do_dup_dest() {
       IFS=$':'
       thereply=($replyconverted)
       IFS=$' \t\n'
-      
+
       dup_desthost=${thereply[0]}
       dup_destuser=${thereply[1]}
       dup_destdir=${thereply[2]}
@@ -165,9 +165,9 @@ do_dup_gpg_signkey() {
       # signkey ?
       REPLY=
       while [ -z "$REPLY" -o -z "$dup_gpg_signkey" ]; do
-        inputBox "$dup_title - GnuPG" "Enter the ID of the private GnuPG key to be used to sign the backups:" "$dup_gpg_signkey"
-        [ $? = 0 ] || return 1
-        dup_gpg_signkey="$REPLY"
+         inputBox "$dup_title - GnuPG" "Enter the ID of the private GnuPG key to be used to sign the backups:" "$dup_gpg_signkey"
+         [ $? = 0 ] || return 1
+         dup_gpg_signkey="$REPLY"
       done
    fi
 }
@@ -183,7 +183,7 @@ do_dup_gpg_passphrase() {
 }
 
 do_dup_gpg() {
-   
+
    # symmetric or public key encryption ?
    booleanBox "$dup_title - GnuPG" "Use public key encryption? Otherwise, symmetric encryption will be used, and data signing will be impossible." "$dup_gpg_asymmetric_encryption"
    if [ $? = 0 ]; then
@@ -197,7 +197,7 @@ do_dup_gpg() {
       do_dup_gpg_encryptkey ; [ $? = 0 ] || return 1
       do_dup_gpg_sign ; [ $? = 0 ] || return 1
       if [ "$dup_gpg_sign" == yes ]; then
-        do_dup_gpg_signkey ; [ $? = 0 ] || return 1
+         do_dup_gpg_signkey ; [ $? = 0 ] || return 1
       fi
    else
       dup_gpg_sign=no
@@ -334,7 +334,7 @@ EOF
    if [ "$host_or_vservers" == host -o "$host_or_vservers" == both ]; then
       set -o noglob
       for i in $dup_includes; do
-        echo "include = $i" >> $next_filename
+         echo "include = $i" >> $next_filename
       done
       set +o noglob
    fi
@@ -432,49 +432,49 @@ EOF
 
 dup_main_menu() {
 
-  while true; do
-     srcitem="choose files to include & exclude $_src_done"
-     destitem="configure backup destination $_dest_done"
-     gpgitem="configure GnuPG encryption/signing $_gpg_done"
-     conitem="set up ssh keys and test remote connection $_con_done"
-     advitem="edit advanced settings $_adv_done"
-     # TODO: add the following to the menu when do_dup_conn is written
-     # conn "$conitem" \
-     menuBox "$dup_title" "choose a step:" \
-        src "$srcitem" \
-        dest "$destitem" \
-        gpg "$gpgitem" \
-       adv "$advitem" \
-        finish "finish and create config file"
-     [ $? = 0 ] || return 1
-     result="$REPLY"
-
-     case "$result" in
-       "src") do_dup_src;;
-       "dest") do_dup_dest;;
-       "gpg") do_dup_gpg;;
-       # TODO: enable the following when do_dup_conn is written
-       # "conn") do_dup_conn;;
-       "adv") do_dup_adv;;
-       "finish")
-           if [[ "$_dest_done$_gpg_done$_src_done" != "(DONE)(DONE)(DONE)" ]]; then
-          # TODO: replace the previous test by the following when do_dup_conn is written
-           # if [[ "$_con_done$_dest_done$_gpg_done$_src_done" != "(DONE)(DONE)(DONE)(DONE)" ]]; then
-              msgBox "$dup_title" "You cannot create the configuration file until the four first steps are completed."
-           else
-              do_dup_finish
-              break
-           fi
-           ;;
-     esac
-
-  done
+   while true; do
+      srcitem="choose files to include & exclude $_src_done"
+      destitem="configure backup destination $_dest_done"
+      gpgitem="configure GnuPG encryption/signing $_gpg_done"
+      conitem="set up ssh keys and test remote connection $_con_done"
+      advitem="edit advanced settings $_adv_done"
+      # TODO: add the following to the menu when do_dup_conn is written
+      # conn "$conitem" \
+      menuBox "$dup_title" "choose a step:" \
+         src "$srcitem" \
+         dest "$destitem" \
+         gpg "$gpgitem" \
+         adv "$advitem" \
+         finish "finish and create config file"
+      [ $? = 0 ] || return 1
+      result="$REPLY"
+
+      case "$result" in
+         "src") do_dup_src;;
+         "dest") do_dup_dest;;
+         "gpg") do_dup_gpg;;
+         # TODO: enable the following when do_dup_conn is written
+         # "conn") do_dup_conn;;
+         "adv") do_dup_adv;;
+         "finish")
+            if [[ "$_dest_done$_gpg_done$_src_done" != "(DONE)(DONE)(DONE)" ]]; then
+            # TODO: replace the previous test by the following when do_dup_conn is written
+            # if [[ "$_con_done$_dest_done$_gpg_done$_src_done" != "(DONE)(DONE)(DONE)(DONE)" ]]; then
+               msgBox "$dup_title" "You cannot create the configuration file until the four first steps are completed."
+            else
+               do_dup_finish
+               break
+            fi
+            ;;
+      esac
+
+   done
 }
 
 ### Main function
 
 dup_wizard() {
-   
+
    require_packages duplicity
 
    # Global variables
index 9c6a4937a5e06afc2d04d2b0affc249860352292..60a4ce93d0186d79eecf671c3a952a6fcfb2528e 100644 (file)
@@ -66,9 +66,9 @@ if [ "$testconnect" == "yes" ]; then
       if [ ! $test ]; then
          result=`ssh $sshoptions -o PasswordAuthentication=no $desthost -l $destuser 'echo -n 1'`
          if [ "$result" != "1" ]; then
-           fatal "Can't connect to $desthost as $destuser."
+            fatal "Can't connect to $desthost as $destuser."
          else
-           debug "Connected to $desthost as $destuser successfully"
+            debug "Connected to $desthost as $destuser successfully"
          fi
       fi
    fi
@@ -152,7 +152,7 @@ fi
 # If incremental==no, force a full backup anyway.
 if [ "$incremental" == "no" ]; then
    # before 0.4.4, full was an option and not a command
-   if [ "$duplicity_major" -le 0 -a "$duplicity_minor" -le 4 -a "$duplicity_sub" -lt 4 ]; then   
+   if [ "$duplicity_major" -le 0 -a "$duplicity_minor" -le 4 -a "$duplicity_sub" -lt 4 ]; then
       execstr_options="${execstr_options} --full"
    else
       execstr_command="full"
@@ -204,9 +204,9 @@ done
 if [ $usevserver = yes ]; then
    for vserver in $vsnames; do
       for vi in $vsinclude; do
-        str="${vi//__star__/*}"
-        str="$VROOTDIR/$vserver$str"
-        execstr_source="${execstr_source} --include '$str'"
+         str="${vi//__star__/*}"
+         str="$VROOTDIR/$vserver$str"
+         execstr_source="${execstr_source} --include '$str'"
       done
    done
 fi
@@ -229,11 +229,11 @@ if [ "$duplicity_major" -ge 0 -a "$duplicity_minor" -ge 4 -a "$duplicity_sub" -g
          "$precmd duplicity cleanup --force $execstr_options $execstr_serverpart 2>&1"`
       exit_code=$?
       if [ $exit_code -eq 0 ]; then
-        debug $output
-        info "Duplicity cleanup finished successfully."
+         debug $output
+         info "Duplicity cleanup finished successfully."
       else
-        debug $output
-        warning "Duplicity cleanup failed."
+         debug $output
+         warning "Duplicity cleanup failed."
       fi
    fi
 fi
@@ -244,17 +244,17 @@ if [ "$keep" != "yes" ]; then
       debug "$precmd duplicity remove-older-than $keep --force $execstr_options $execstr_serverpart"
       if [ ! $test ]; then
          export PASSPHRASE=$password
-        output=`nice -n $nicelevel \
+         output=`nice -n $nicelevel \
                    su -c \
                       "$precmd duplicity remove-older-than $keep --force $execstr_options $execstr_serverpart 2>&1"`
-        exit_code=$?
-        if [ $exit_code -eq 0 ]; then
-           debug $output
-           info "Duplicity remove-older-than finished successfully."
-        else
-           debug $output
-           warning "Duplicity remove-older-than failed."
-        fi
+         exit_code=$?
+         if [ $exit_code -eq 0 ]; then
+            debug $output
+            info "Duplicity remove-older-than finished successfully."
+         else
+            debug $output
+            warning "Duplicity remove-older-than failed."
+         fi
       fi
    fi
 fi
index 92518265b62b1eddf3fdc229a494c74d23944d83..4870ae47277fb39d47b1ab57957f637efb9fae4b 100644 (file)
@@ -3,7 +3,7 @@
 HELPERS="$HELPERS ldap:ldap_database_backup"
 
 ldap_create_file() {
-while true; do
+   while true; do
       checkBox "ldap action wizard" "check options (slapcat OR ldapsearch)" \
          "slapcat" "export ldif using slapcat" yes \
          "ldapsearch" "export ldif using ldapsearch" no \
@@ -22,21 +22,21 @@ while true; do
       result="$REPLY"
       for opt in $result; do
          case $opt in
-           '"compress"') compress="compress = yes";;
-           '"slapcat"')
-              method="method = slapcat"
-              [ "$_RESTART" == "yes" ] && restart="restart = yes"
-              ;;
-           '"ldapsearch"')
-              method="method = ldapsearch"
-              inputBox "ldap action wizard" "ldapsearch requires authentication. Specify here what password file to use. It must have the password with no trailing return and it should not be world readable."
-              [ $? = 1 ] && return
-              passwordfile="passwordfile = $REPLY"
-              inputBox "ldap action wizard" "ldapsearch requires authentication. Specify here what DN to bind as:"
-              [ $? = 1 ] && return
-              binddn="binddn = $REPLY"
-              require_packages ldap-utils
-              ;;
+            '"compress"') compress="compress = yes";;
+            '"slapcat"')
+               method="method = slapcat"
+               [ "$_RESTART" == "yes" ] && restart="restart = yes"
+               ;;
+            '"ldapsearch"')
+               method="method = ldapsearch"
+               inputBox "ldap action wizard" "ldapsearch requires authentication. Specify here what password file to use. It must have the password with no trailing return and it should not be world readable."
+               [ $? = 1 ] && return
+               passwordfile="passwordfile = $REPLY"
+               inputBox "ldap action wizard" "ldapsearch requires authentication. Specify here what DN to bind as:"
+               [ $? = 1 ] && return
+               binddn="binddn = $REPLY"
+               require_packages ldap-utils
+               ;;
             '"ssl"') ssl="ssl = yes";;
             '"tls"') tls="tls = yes";;
          esac
@@ -54,9 +54,9 @@ $tls
 # conf = /etc/ldap/slapd.conf
 # databases = all
 EOF
-     chmod 600 $next_filename
-     return
-done
+      chmod 600 $next_filename
+      return
+   done
 }
 
 ldap_wizard() {
@@ -71,7 +71,7 @@ ldap_wizard() {
       elif [ "$backend" == "ldbm" ]; then
          ldbm=yes
       fi
-   done    
+   done
 
    if [ "$bdb" == "yes" -o "$hdb" == "yes" ]; then
       if [ "$ldbm" == "no" ]; then
@@ -80,11 +80,11 @@ ldap_wizard() {
          ldap_create_file
       fi
    elif [ "$ldbm" == "yes" ]; then
-     msgBox "ldap action wizard" "It looks like the backend in your slapd.conf is set to LDBM. Because of this, you will have less options (because it is not safe to use slapcat while slapd is running LDBM)." 
-     _RESTART=yes
-     ldap_create_file
+      msgBox "ldap action wizard" "It looks like the backend in your slapd.conf is set to LDBM. Because of this, you will have less options (because it is not safe to use slapcat while slapd is running LDBM)."
+      _RESTART=yes
+      ldap_create_file
    else
-     msgBox "ldap action wizard" "I couldn't find any supported backend in your slapd.conf. Bailing out." 
-     return
+      msgBox "ldap action wizard" "I couldn't find any supported backend in your slapd.conf. Bailing out."
+      return
    fi
 }
index 8ff1ccf097105d527071e793371494c8b8911120..0b0166ecc4eff999993e07cb4b76372a80834afa 100644 (file)
@@ -35,25 +35,25 @@ dbsuffixes=(`@AWK@ 'BEGIN {OFS=":"} /[:space:]*^database[:space:]*\w*/ {db=$2};
 if [ "$ldif" == "yes" ]; then
    dumpdir="$backupdir"
    [ -d $dumpdir ] || mkdir -p $dumpdir
-   
+
    if [ "$databases" == 'all' ]; then
       dbcount=`grep '^database' $conf | wc -l`
       let "dbcount = dbcount - 1"
       databases=`seq 0 $dbcount`;
-   fi  
-   
+   fi
+
    for db in $databases; do
       if [ `expr index "$db" "="` == "0" ]; then
-                       # db is a number, get the suffix.
+                        # db is a number, get the suffix.
          dbsuffix=${dbsuffixes[$db]/*:/}
       else
          dbsuffix=$db
       fi
-               # some databases don't have suffix (like monitor), skip these
+                # some databases don't have suffix (like monitor), skip these
       if [ "$dbsuffix" == "" ]; then
          continue;
       fi
-      
+
       if [ "$method" == "slapcat" ]; then
          execstr="$SLAPCAT -f $conf -b $dbsuffix"
       else
@@ -74,16 +74,16 @@ if [ "$ldif" == "yes" ]; then
             debug "Shutting down ldap server..."
             /etc/init.d/slapd stop
          fi
-         
-        ext=
-        if [ "$compress" == "yes" ]; then
-           ext=".gz"
-        fi
+
+         ext=
+         if [ "$compress" == "yes" ]; then
+            ext=".gz"
+         fi
          touch $dumpdir/$dbsuffix.ldif$ext
          if [ ! -f $dumpdir/$dbsuffix.ldif$ext ]; then
             fatal "Couldn't create ldif dump file: $dumpdir/$dbsuffix.ldif$ext"
          fi
-         
+
          if [ "$compress" == "yes" ]; then
             execstr="$execstr | $GZIP > $dumpdir/$dbsuffix.ldif.gz"
          else
@@ -99,13 +99,13 @@ if [ "$ldif" == "yes" ]; then
             warning $output
             warning "Failed ldif export of $dbsuffix"
          fi
-         
+
          if [ "$restart" == "yes" ]; then
             debug "Starting ldap server..."
             /etc/init.d/slapd start
          fi
       fi
-   done        
+   done
 fi
 
 return 0
index d5731be8ca0ec94b6f623a2062f628155a5c64bc..e88619d0d0f89fc5ae5b9d64e5a8de2d04c36ac8 100644 (file)
@@ -6,17 +6,17 @@
 #  to a remote server. It is designed to be run with low overhead
 #  in terms of cpu and bandwidth so it runs pretty slow.
 #  Hardlinking is used to save storage space.
-# 
+#
 #  This handler expects that your maildir directory structure is
 #  either one of the following:
-# 
-#  1. /$srcdir/[a-zA-Z0-9]/$user for example: 
+#
+#  1. /$srcdir/[a-zA-Z0-9]/$user for example:
 #  /var/maildir/a/anarchist
 #  /var/maildir/a/arthur
 #  ...
 #  /var/maildir/Z/Zaphod
 #  /var/maildir/Z/Zebra
-#  
+#
 #  2. or the following:
 #  /var/maildir/domain.org/user1
 #  /var/maildir/domain.org/user2
@@ -25,7 +25,7 @@
 #  /var/maildir/anotherdomain.org/user2
 #  ...
 #
-#  if the configuration is setup to have keepdaily at 3, 
+#  if the configuration is setup to have keepdaily at 3,
 #  keepweekly is 2, and keepmonthly is 1, then each user's
 #  maildir backup snapshot directory will contain these files:
 #    daily.1
 #  We handle each maildir individually because it becomes very
 #  unweldy to hardlink and rsync many hundreds of thousands
 #  of files at once. It is much faster to take on smaller
-#  chunks at a time. 
+#  chunks at a time.
 #
-#  For the backup rotation to work, destuser must be able to run 
+#  For the backup rotation to work, destuser must be able to run
 #  arbitrary bash commands on the desthost.
 #
 #  Any maildir which is deleted from the source will be moved to
-#  "deleted" directory in the destination. It is up to you to 
+#  "deleted" directory in the destination. It is up to you to
 #  periodically remove this directory or old maildirs in it.
-# 
+#
 ##############################################################
 
 getconf rotate yes
@@ -91,33 +91,33 @@ excludes="--exclude '.Trash/\*' --exclude '.Mistakes/\*' --exclude '.Spam/\*'"
 ### FUNCTIONS
 
 function do_user() {
-       local user=$1
-       local btype=$2
-        local userdir=${3%/}
-        local source="$srcdir/$userdir/$user/"
-        local target="$destdir/$userdir/$user/$btype.1"
-       if [ ! -d $source ]; then
-         warning "maildir $source not found"
-         return
-    fi
-
-       debug "syncing"
-       ret=`$RSYNC -e "ssh -p $destport -i $destid_file" -r \
-               --links --ignore-existing --delete --size-only --bwlimit=$speedlimit \
-               --exclude '.Trash/*' --exclude '.Mistakes/*' --exclude '.Spam/*' \
-               $source $destuser@$desthost:$target \
-               2>&1`
-       ret=$?
-       # ignore 0 (success) and 24 (file vanished before it could be copied)
-       if [ $ret != 0 -a $ret != 24 ]; then
-               warning "rsync $user failed"
-               warning "  returned: $ret"
-               let "failedcount = failedcount + 1"
-               if [ $failedcount -gt 100 ]; then
-                       fatal "100 rsync errors -- something is not working right. bailing out."
-               fi
-       fi
-       ssh -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file "date +%c%n%s > $target/created"
+   local user=$1
+   local btype=$2
+   local userdir=${3%/}
+   local source="$srcdir/$userdir/$user/"
+   local target="$destdir/$userdir/$user/$btype.1"
+   if [ ! -d $source ]; then
+      warning "maildir $source not found"
+      return
+   fi
+
+   debug "syncing"
+   ret=`$RSYNC -e "ssh -p $destport -i $destid_file" -r \
+      --links --ignore-existing --delete --size-only --bwlimit=$speedlimit \
+      --exclude '.Trash/*' --exclude '.Mistakes/*' --exclude '.Spam/*' \
+      $source $destuser@$desthost:$target \
+      2>&1`
+   ret=$?
+   # ignore 0 (success) and 24 (file vanished before it could be copied)
+   if [ $ret != 0 -a $ret != 24 ]; then
+      warning "rsync $user failed"
+      warning "  returned: $ret"
+      let "failedcount = failedcount + 1"
+      if [ $failedcount -gt 100 ]; then
+         fatal "100 rsync errors -- something is not working right. bailing out."
+      fi
+   fi
+   ssh -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file "date +%c%n%s > $target/created"
 }
 
 # remove any maildirs from backup which might have been deleted
@@ -125,116 +125,116 @@ function do_user() {
 # (actually, it just moved them to the directory "deleted")
 
 function do_remove() {
-       local tmp1=`maketemp maildir-tmp-file`
-       local tmp2=`maketemp maildir-tmp-file`
-       
-       ssh -p $destport -i $destid_file $destuser@$desthost mkdir -p "$destdir/deleted"
-        cd "$srcdir" 
-        for userdir in `ls -d1 */`; do
-           ls -1 "$srcdir/$userdir" | sort > $tmp1
-           ssh -p $destport -i $destid_file $destuser@$desthost ls -1 "$destdir/$userdir" | sort > $tmp2
-               for deluser in `join -v 2 $tmp1 $tmp2`; do
-                       [ "$deluser" != "" ] || continue
-                        info "removing $destuser@$desthost:$destdir/$userdir$deluser/"
-                        ssh -p $destport -i $destid_file $destuser@$desthost mv "$destdir/$userdir$deluser/" "$destdir/deleted"
-                       ssh -p $destport -i $destid_file $destuser@$desthost "date +%c%n%s > '$destdir/deleted/$deluser/deleted_on'"
-               done
-       done
-       rm $tmp1
-       rm $tmp2
+   local tmp1=`maketemp maildir-tmp-file`
+   local tmp2=`maketemp maildir-tmp-file`
+
+   ssh -p $destport -i $destid_file $destuser@$desthost mkdir -p "$destdir/deleted"
+      cd "$srcdir"
+      for userdir in `ls -d1 */`; do
+         ls -1 "$srcdir/$userdir" | sort > $tmp1
+         ssh -p $destport -i $destid_file $destuser@$desthost ls -1 "$destdir/$userdir" | sort > $tmp2
+      for deluser in `join -v 2 $tmp1 $tmp2`; do
+         [ "$deluser" != "" ] || continue
+         info "removing $destuser@$desthost:$destdir/$userdir$deluser/"
+         ssh -p $destport -i $destid_file $destuser@$desthost mv "$destdir/$userdir$deluser/" "$destdir/deleted"
+         ssh -p $destport -i $destid_file $destuser@$desthost "date +%c%n%s > '$destdir/deleted/$deluser/deleted_on'"
+      done
+   done
+   rm $tmp1
+   rm $tmp2
 }
 
 function do_rotate() {
-       [ "$rotate" == "yes" ] || return;
-       local user=$1
-        local userdir=${2%/}
-        local backuproot="$destdir/$userdir/$user"
+   [ "$rotate" == "yes" ] || return;
+   local user=$1
+   local userdir=${2%/}
+   local backuproot="$destdir/$userdir/$user"
 (
-       ssh -T -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file <<EOF
+   ssh -T -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file <<EOF
 ##### BEGIN REMOTE SCRIPT #####
-       seconds_daily=86400
-       seconds_weekly=604800
-       seconds_monthly=2628000
-       keepdaily=$keepdaily
-       keepweekly=$keepweekly
-       keepmonthly=$keepmonthly
-       now=\`date +%s\`
-
-       if [ ! -d "$backuproot" ]; then
-               echo "Debug: skipping rotate of $user. $backuproot doesn't exist."
-               exit
-       fi
-       for rottype in daily weekly monthly; do
-               seconds=\$((seconds_\${rottype}))
-
-               dir="$backuproot/\$rottype"
-               if [ ! -d \$dir.1 ]; then
-                       echo "Debug: \$dir.1 does not exist, skipping."
-                       continue 1
-               elif [ ! -f \$dir.1/created ]; then
-                       echo "Warning: \$dir.1/created does not exist. This backup may be only partially completed. Skipping rotation."
-                       continue 1
-               fi
-               
-               # Rotate the current list of backups, if we can.
-               oldest=\`find $backuproot -maxdepth 1 -type d -name \$rottype'.*' | @SED@ 's/^.*\.//' | sort -n | tail -1\`
-               #echo "Debug: oldest \$oldest"
-               [ "\$oldest" == "" ] && oldest=0
-               for (( i=\$oldest; i > 0; i-- )); do
-                       if [ -d \$dir.\$i ]; then
-                               if [ -f \$dir.\$i/created ]; then
-                                       created=\`tail -1 \$dir.\$i/created\`
-                               else
-                                       created=0
-                               fi
-                               cutoff_time=\$(( now - (seconds*(i-1)) ))
-                               if [ ! \$created -gt \$cutoff_time ]; then
-                                       next=\$(( i + 1 ))
-                                       if [ ! -d \$dir.\$next ]; then
-                                               echo "Debug: \$rottype.\$i --> \$rottype.\$next"
-                                               mv \$dir.\$i \$dir.\$next
-                                               date +%c%n%s > \$dir.\$next/rotated
-                                       else
-                                               echo "Debug: skipping rotation of \$dir.\$i because \$dir.\$next already exists."
-                                       fi
-                               else
-                                       echo "Debug: skipping rotation of \$dir.\$i because it was created" \$(( (now-created)/86400)) "days ago ("\$(( (now-cutoff_time)/86400))" needed)."
-                               fi
-                       fi
-               done
-       done
-
-       max=\$((keepdaily+1))
-       if [ \( \$keepweekly -gt 0 -a -d $backuproot/daily.\$max \) -a ! -d $backuproot/weekly.1 ]; then
-               echo "Debug: daily.\$max --> weekly.1"
-               mv $backuproot/daily.\$max $backuproot/weekly.1
-               date +%c%n%s > $backuproot/weekly.1/rotated
-       fi
-
-       max=\$((keepweekly+1))
-       if [ \( \$keepmonthly -gt 0 -a -d $backuproot/weekly.\$max \) -a ! -d $backuproot/monthly.1 ]; then
-               echo "Debug: weekly.\$max --> monthly.1"
-               mv $backuproot/weekly.\$max $backuproot/monthly.1
-               date +%c%n%s > $backuproot/monthly.1/rotated
-       fi
-
-       for rottype in daily weekly monthly; do
-               max=\$((keep\${rottype}+1))
-               dir="$backuproot/\$rottype"
-               oldest=\`find $backuproot -maxdepth 1 -type d -name \$rottype'.*' | @SED@ 's/^.*\.//' | sort -n | tail -1\`
-               [ "\$oldest" == "" ] && oldest=0 
-               # if we've rotated the last backup off the stack, remove it.
-               for (( i=\$oldest; i >= \$max; i-- )); do
-                       if [ -d \$dir.\$i ]; then
-                               if [ -d $backuproot/rotate.tmp ]; then
-                                       echo "Debug: removing rotate.tmp"
-                                       rm -rf $backuproot/rotate.tmp
-                               fi
-                               echo "Debug: moving \$rottype.\$i to rotate.tmp"
-                               mv \$dir.\$i $backuproot/rotate.tmp
-                       fi
-               done
-       done
+   seconds_daily=86400
+   seconds_weekly=604800
+   seconds_monthly=2628000
+   keepdaily=$keepdaily
+   keepweekly=$keepweekly
+   keepmonthly=$keepmonthly
+   now=\`date +%s\`
+
+   if [ ! -d "$backuproot" ]; then
+      echo "Debug: skipping rotate of $user. $backuproot doesn't exist."
+      exit
+   fi
+   for rottype in daily weekly monthly; do
+      seconds=\$((seconds_\${rottype}))
+
+      dir="$backuproot/\$rottype"
+      if [ ! -d \$dir.1 ]; then
+         echo "Debug: \$dir.1 does not exist, skipping."
+         continue 1
+      elif [ ! -f \$dir.1/created ]; then
+         echo "Warning: \$dir.1/created does not exist. This backup may be only partially completed. Skipping rotation."
+         continue 1
+      fi
+
+      # Rotate the current list of backups, if we can.
+      oldest=\`find $backuproot -maxdepth 1 -type d -name \$rottype'.*' | @SED@ 's/^.*\.//' | sort -n | tail -1\`
+      #echo "Debug: oldest \$oldest"
+      [ "\$oldest" == "" ] && oldest=0
+      for (( i=\$oldest; i > 0; i-- )); do
+         if [ -d \$dir.\$i ]; then
+            if [ -f \$dir.\$i/created ]; then
+               created=\`tail -1 \$dir.\$i/created\`
+            else
+               created=0
+            fi
+            cutoff_time=\$(( now - (seconds*(i-1)) ))
+            if [ ! \$created -gt \$cutoff_time ]; then
+               next=\$(( i + 1 ))
+               if [ ! -d \$dir.\$next ]; then
+                  echo "Debug: \$rottype.\$i --> \$rottype.\$next"
+                  mv \$dir.\$i \$dir.\$next
+                  date +%c%n%s > \$dir.\$next/rotated
+               else
+                  echo "Debug: skipping rotation of \$dir.\$i because \$dir.\$next already exists."
+               fi
+            else
+               echo "Debug: skipping rotation of \$dir.\$i because it was created" \$(( (now-created)/86400)) "days ago ("\$(( (now-cutoff_time)/86400))" needed)."
+            fi
+         fi
+      done
+   done
+
+   max=\$((keepdaily+1))
+   if [ \( \$keepweekly -gt 0 -a -d $backuproot/daily.\$max \) -a ! -d $backuproot/weekly.1 ]; then
+      echo "Debug: daily.\$max --> weekly.1"
+      mv $backuproot/daily.\$max $backuproot/weekly.1
+      date +%c%n%s > $backuproot/weekly.1/rotated
+   fi
+
+   max=\$((keepweekly+1))
+   if [ \( \$keepmonthly -gt 0 -a -d $backuproot/weekly.\$max \) -a ! -d $backuproot/monthly.1 ]; then
+      echo "Debug: weekly.\$max --> monthly.1"
+      mv $backuproot/weekly.\$max $backuproot/monthly.1
+      date +%c%n%s > $backuproot/monthly.1/rotated
+   fi
+
+   for rottype in daily weekly monthly; do
+      max=\$((keep\${rottype}+1))
+      dir="$backuproot/\$rottype"
+      oldest=\`find $backuproot -maxdepth 1 -type d -name \$rottype'.*' | @SED@ 's/^.*\.//' | sort -n | tail -1\`
+      [ "\$oldest" == "" ] && oldest=0
+      # if we've rotated the last backup off the stack, remove it.
+      for (( i=\$oldest; i >= \$max; i-- )); do
+         if [ -d \$dir.\$i ]; then
+            if [ -d $backuproot/rotate.tmp ]; then
+               echo "Debug: removing rotate.tmp"
+               rm -rf $backuproot/rotate.tmp
+            fi
+            echo "Debug: moving \$rottype.\$i to rotate.tmp"
+            mv \$dir.\$i $backuproot/rotate.tmp
+         fi
+      done
+   done
 ####### END REMOTE SCRIPT #######
 EOF
 ) | (while read a; do passthru $a; done)
@@ -243,67 +243,67 @@ EOF
 
 
 function setup_remote_dirs() {
-       local user=$1
-       local backuptype=$2
-        local userdir=${3%/}
-        local dir="$destdir/$userdir/$user/$backuptype"
-        local tmpdir="$destdir/$userdir/$user/rotate.tmp"
+   local user=$1
+   local backuptype=$2
+   local userdir=${3%/}
+   local dir="$destdir/$userdir/$user/$backuptype"
+   local tmpdir="$destdir/$userdir/$user/rotate.tmp"
 (
-       ssh -T -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file <<EOF
-               if [ ! -d $destdir ]; then
-                       echo "Fatal: Destination directory $destdir does not exist on host $desthost."
-                       exit 1
-               elif [ -d $dir.1 ]; then
-                       if [ -f $dir.1/created ]; then
-                               echo "Warning: $dir.1 already exists. Overwriting contents."
-                       else
-                               echo "Warning: we seem to be resuming a partially written $dir.1"
-                       fi
-               else
-                       if [ -d $tmpdir ]; then
-                               mv $tmpdir $dir.1
-                               if [ \$? == 1 ]; then
-                                       echo "Fatal: could mv $destdir/rotate.tmp $dir.1 on host $desthost"
-                                       exit 1
-                               fi
-                       else
-                               mkdir --parents $dir.1
-                               if [ \$? == 1 ]; then
-                                       echo "Fatal: could not create directory $dir.1 on host $desthost"
-                                       exit 1
-                               fi
-                       fi
-                       if [ -d $dir.2 ]; then
-                               echo "Debug: update links $backuptype.2 --> $backuptype.1"
-                               cp -alf $dir.2/. $dir.1
-                               #if [ \$? == 1 ]; then
-                               #       echo "Fatal: could not create hard links to $dir.1 on host $desthost"
-                               #       exit 1
-                               #fi
-                       fi
-               fi
-               [ -f $dir.1/created ] && rm $dir.1/created
-               [ -f $dir.1/rotated ] && rm $dir.1/rotated
-               exit 0
+   ssh -T -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file <<EOF
+      if [ ! -d $destdir ]; then
+         echo "Fatal: Destination directory $destdir does not exist on host $desthost."
+         exit 1
+      elif [ -d $dir.1 ]; then
+         if [ -f $dir.1/created ]; then
+            echo "Warning: $dir.1 already exists. Overwriting contents."
+         else
+            echo "Warning: we seem to be resuming a partially written $dir.1"
+         fi
+      else
+         if [ -d $tmpdir ]; then
+            mv $tmpdir $dir.1
+            if [ \$? == 1 ]; then
+               echo "Fatal: could mv $destdir/rotate.tmp $dir.1 on host $desthost"
+               exit 1
+            fi
+         else
+            mkdir --parents $dir.1
+            if [ \$? == 1 ]; then
+               echo "Fatal: could not create directory $dir.1 on host $desthost"
+               exit 1
+            fi
+         fi
+         if [ -d $dir.2 ]; then
+            echo "Debug: update links $backuptype.2 --> $backuptype.1"
+            cp -alf $dir.2/. $dir.1
+            #if [ \$? == 1 ]; then
+            #   echo "Fatal: could not create hard links to $dir.1 on host $desthost"
+            #   exit 1
+            #fi
+         fi
+      fi
+      [ -f $dir.1/created ] && rm $dir.1/created
+      [ -f $dir.1/rotated ] && rm $dir.1/rotated
+      exit 0
 EOF
 ) | (while read a; do passthru $a; done)
 
-       if [ $? == 1 ]; then exit; fi
+   if [ $? == 1 ]; then exit; fi
 }
 
 function start_mux() {
-       if [ "$multiconnection" == "yes" ]; then
-               debug "Starting dummy ssh connection"
-               ssh -p $destport -i $destid_file $destuser@$desthost sleep 1d &
-        sleep 1
-       fi
+   if [ "$multiconnection" == "yes" ]; then
+      debug "Starting dummy ssh connection"
+      ssh -p $destport -i $destid_file $destuser@$desthost sleep 1d &
+      sleep 1
+   fi
 }
 
 function end_mux() {
-       if [ "$multiconnection" == "yes" ]; then
-               debug "Stopping dummy ssh connection"
-               ssh -p $destport -i $destid_file $destuser@$desthost pkill sleep
-       fi
+   if [ "$multiconnection" == "yes" ]; then
+      debug "Stopping dummy ssh connection"
+      ssh -p $destport -i $destid_file $destuser@$desthost pkill sleep
+   fi
 }
 
 ###
@@ -312,10 +312,10 @@ function end_mux() {
 # see if we can login
 debug "ssh -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file 'echo -n 1'"
 if [ ! $test ]; then
-       result=`ssh -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file 'echo -n 1' 2>&1`
-       if [ "$result" != "1" ]; then
-               fatal "Can't connect to $desthost as $destuser using $destid_file."
-       fi
+   result=`ssh -o PasswordAuthentication=no $desthost -l $destuser -i $destid_file 'echo -n 1' 2>&1`
+   if [ "$result" != "1" ]; then
+      fatal "Can't connect to $desthost as $destuser using $destid_file."
+   fi
 fi
 
 end_mux
@@ -324,47 +324,46 @@ start_mux
 ## SANITY CHECKS ##
 status=`ssh -p $destport -i $destid_file $destuser@$desthost "[ -d \"$destdir\" ] && echo 'ok'"`
 if [ "$status" != "ok" ]; then
-       end_mux
-       fatal "Destination directory $destdir doesn't exist!"
-    exit
+   end_mux
+   fatal "Destination directory $destdir doesn't exist!"
+   exit
 fi
 
 ### REMOVE OLD MAILDIRS ###
 
 if [ "$remove" == "yes" ]; then
-       do_remove
+   do_remove
 fi
 
 ### MAKE BACKUPS ###
 
 if [ "$backup" == "yes" ]; then
-       if [ $keepdaily -gt 0 ]; then btype=daily
-       elif [ $keepweekly -gt 0 ]; then btype=weekly
-       elif [ $keepmonthly -gt 0 ]; then btype=monthly
-       else fatal "keeping no backups"; fi
-       
-       if [ "$testuser" != "" ]; then
-               cd "$srcdir/${user:0:1}"
-               do_rotate $testuser
-               setup_remote_dirs $testuser $btype
-               do_user $testuser $btype
-       else
-                [ -d "$srcdir" ] || fatal "directory $srcdir not found."
-                cd "$srcdir"
-                for userdir in `ls -d1 */`; do
-                   [ -d "$srcdir/$userdir" ] || fatal "directory $srcdir/$userdir not found."
-                   cd "$srcdir/$userdir"
-                   debug $userdir
-                       for user in `ls -1`; do
-                               [ "$user" != "" ] || continue
-                                debug "$user $userdir"
-                                do_rotate $user $userdir
-                                setup_remote_dirs $user $btype $userdir
-                                do_user $user $btype $userdir
-                       done
-               done
-       fi
+   if [ $keepdaily -gt 0 ]; then btype=daily
+   elif [ $keepweekly -gt 0 ]; then btype=weekly
+   elif [ $keepmonthly -gt 0 ]; then btype=monthly
+   else fatal "keeping no backups"; fi
+
+   if [ "$testuser" != "" ]; then
+      cd "$srcdir/${user:0:1}"
+      do_rotate $testuser
+      setup_remote_dirs $testuser $btype
+      do_user $testuser $btype
+   else
+      [ -d "$srcdir" ] || fatal "directory $srcdir not found."
+      cd "$srcdir"
+      for userdir in `ls -d1 */`; do
+         [ -d "$srcdir/$userdir" ] || fatal "directory $srcdir/$userdir not found."
+         cd "$srcdir/$userdir"
+         debug $userdir
+         for user in `ls -1`; do
+            [ "$user" != "" ] || continue
+            debug "$user $userdir"
+            do_rotate $user $userdir
+            setup_remote_dirs $user $btype $userdir
+            do_user $user $btype $userdir
+         done
+      done
+   fi
 fi
 
 end_mux
-
index f83b54159e1a2ad32b88249d81b8c7e54e9ba142..c8a6762e5c6e301313b89c47d68817d9f8896eef 100644 (file)
@@ -7,59 +7,59 @@ declare -a makecd_excludes
 
 makecd_wizard() {
 
-  inputBox "$wizardname" "specify a burner type cd or dvd:"
-  [ $? = 1 ] && return
-  burnertype="burnertype = $REPLY"
-
-  booleanBox "$wizardname" "Make iso image only? or burn"
-  if [ $? = 0 ]; then
-     isoonly="isoonly = yes"
-  else
-     isoonly="isoonly = no"
-  fi
-
-  # backupdir
-  inputBox "$wizardname" "Directory where to store the backups:"
-  [ $? = 1 ] && return
-  backupdir="backupdir = $REPLY"
-
-  inputBox "$wizardname" "what name to give to the image file?"
-  [ $? = 1 ] && return
-  imagefile="imagefile = $REPLY"
-
-  inputBox "$wizardname" "specify a burner device:"
-  [ $? = 1 ] && return
-  device="device = $REPLY"
-
-  # target - root of system to be included
-  inputBox "$wizardname" "root of filesystem for burn:"
-  [ $? = 1 ] && return
-  target="target = $REPLY"
-
-
-   # excludes
-
-  formBegin "$wizardname: excludes" 
-    for ((i=0; i < ${#makecd_excludes[@]} ; i++)); do
-       formItem exclude ${makecd_excludes[$i]}
-    done
-    formItem exclude 
-    formItem exclude 
-    formItem exclude 
-    formItem exclude 
-    formItem exclude 
-    formItem exclude 
-    formItem exclude 
-    formItem exclude 
-    formItem exclude 
-  formDisplay
-  [ $? = 1 ] && return;
-
-  unset makecd_excludes
-  makecd_excludes=($REPLY)
-
-  get_next_filename $configdirectory/20.makecd
-  cat >> $next_filename <<EOF
+   inputBox "$wizardname" "specify a burner type cd or dvd:"
+   [ $? = 1 ] && return
+   burnertype="burnertype = $REPLY"
+
+   booleanBox "$wizardname" "Make iso image only? or burn"
+   if [ $? = 0 ]; then
+      isoonly="isoonly = yes"
+   else
+      isoonly="isoonly = no"
+   fi
+
+   # backupdir
+   inputBox "$wizardname" "Directory where to store the backups:"
+   [ $? = 1 ] && return
+   backupdir="backupdir = $REPLY"
+
+   inputBox "$wizardname" "what name to give to the image file?"
+   [ $? = 1 ] && return
+   imagefile="imagefile = $REPLY"
+
+   inputBox "$wizardname" "specify a burner device:"
+   [ $? = 1 ] && return
+   device="device = $REPLY"
+
+   # target - root of system to be included
+   inputBox "$wizardname" "root of filesystem for burn:"
+   [ $? = 1 ] && return
+   target="target = $REPLY"
+
+
+    # excludes
+
+   formBegin "$wizardname: excludes"
+      for ((i=0; i < ${#makecd_excludes[@]} ; i++)); do
+         formItem exclude ${makecd_excludes[$i]}
+      done
+      formItem exclude
+      formItem exclude
+      formItem exclude
+      formItem exclude
+      formItem exclude
+      formItem exclude
+      formItem exclude
+      formItem exclude
+      formItem exclude
+   formDisplay
+   [ $? = 1 ] && return;
+
+   unset makecd_excludes
+   makecd_excludes=($REPLY)
+
+   get_next_filename $configdirectory/20.makecd
+   cat >> $next_filename <<EOF
 
 # TYP is cd or dvd AS WELL AS the disk inside!!
 $burnertype
@@ -88,10 +88,10 @@ $target
 # exclude = /dev
 EOF
 
-  for ((j=0; j < ${#makecd_excludes[@]} ; j++)); do
-    echo "exclude = ${makecd_excludes[$j]}" >> $next_filename
-  done
-   
+   for ((j=0; j < ${#makecd_excludes[@]} ; j++)); do
+      echo "exclude = ${makecd_excludes[$j]}" >> $next_filename
+   done
+
    chmod 600 $next_filename
 }
 
index 1a95d6d5accd22a8113bdc14477cc35e1c7233dc..78e5454dee6d0ed178d91654819b36f49e87985f 100644 (file)
@@ -31,7 +31,7 @@ DVDINFO="/usr/bin/dvd+rw-mediainfo"
 [ -x "$CDRDAO" ]    || debug 3 "echo executable $CDRDAO not present"
 
 if [ "$isoonly" == "no" ]; then
-       [ -e $device ] || fatal "No Burner device available"
+   [ -e $device ] || fatal "No Burner device available"
 fi
 
 outputfile="$backupdir/$imagefile"
@@ -40,7 +40,7 @@ execstr="nice -n $nicelevel $MKISOFS --quiet -R -o $outputfile "
 str=""
 # excludes
 for i in $exclude; do
-       str=" -x ${i}$str"
+   str=" -x ${i}$str"
 done
 
 debug 0 "echo $str "
@@ -50,39 +50,39 @@ debug 0 "echo $execstr "
 output=` $execstr 2>&1 `
 code=$?
 if [ "$code" == "0" ]; then
-       debug $output
-       info "Successfully finished creation of iso"
+   debug $output
+   info "Successfully finished creation of iso"
 else
-       warning $output
-       warning "Failed to create iso"
+   warning $output
+   warning "Failed to create iso"
 fi
 
 if [ "$isoonly" == "no" ]; then
 
-       if [ "$burnertype" == "cd" ]; then 
-               # burning iso to CD
-               $CDRECORD -v gracetime=2 dev=$device speed=8 -dao -data $outputfile 
-               code=$?
-               if [ "$code" == "0" ]; then
-                       debug $output
-                       info "Successfully burned CD"
-               else
-                       warning $output
-                       warning "Failed to create CD"
-               fi
-       fi
-       if [ "$burnertype" == "dvd" ]; then 
-               # burning iso dvd
-               $GROWISOFS -speed=2 -Z $device=$outputfile -use-the-force-luke=notray -use-the-force-luke=tty
-               code=$?
-               if [ "$code" == "0" ]; then
-                       debug $output
-                       info "Successfully burned DVD"
-               else
-                       warning $output
-                       warning "Failed to create DVD"
-               fi
-       fi
+   if [ "$burnertype" == "cd" ]; then
+      # burning iso to CD
+      $CDRECORD -v gracetime=2 dev=$device speed=8 -dao -data $outputfile
+      code=$?
+      if [ "$code" == "0" ]; then
+         debug $output
+         info "Successfully burned CD"
+      else
+         warning $output
+         warning "Failed to create CD"
+      fi
+   fi
+   if [ "$burnertype" == "dvd" ]; then
+      # burning iso dvd
+      $GROWISOFS -speed=2 -Z $device=$outputfile -use-the-force-luke=notray -use-the-force-luke=tty
+      code=$?
+      if [ "$code" == "0" ]; then
+         debug $output
+         info "Successfully burned DVD"
+      else
+         warning $output
+         warning "Failed to create DVD"
+      fi
+   fi
 fi
 return 0
 
index 00eeca0ce15e2f142e0a263f34ba09a17d9caae5..fb9f11d903e10cb3b72e1e39ef7f4f9b3d02f244 100644 (file)
@@ -13,43 +13,43 @@ do_mysql_databases() {
    while [ -z "$REPLY" ]; do
       formBegin "$mysql_title: databases"
          formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
       formDisplay
       [ $? = 0 ] || return 1
       mysql_databases="databases = "
       for i in $REPLY; do
-        [ -n "$i" ] && mysql_databases="$mysql_databases $i"
+         [ -n "$i" ] && mysql_databases="$mysql_databases $i"
       done
    done
 }
 
 do_mysql_password() {
-  inputBox "$mysql_title" "specify a mysql user:"
-  [ $? = 1 ] && return
-  user=$REPLY
-  inputBox "$mysql_title" "specify the mysql user's password:"
-  [ $? = 1 ] && return
-  password=$REPLY
-  do_mysql_final "dbusername = $user\ndbpassword = $password"
+   inputBox "$mysql_title" "specify a mysql user:"
+   [ $? = 1 ] && return
+   user=$REPLY
+   inputBox "$mysql_title" "specify the mysql user's password:"
+   [ $? = 1 ] && return
+   password=$REPLY
+   do_mysql_final "dbusername = $user\ndbpassword = $password"
 }
 
 do_mysql_debian() {
-  _DISABLE_HOTCOPY=yes
-  do_mysql_final "configfile = /etc/mysql/debian.cnf"
+   _DISABLE_HOTCOPY=yes
+   do_mysql_final "configfile = /etc/mysql/debian.cnf"
 }
 
 do_mysql_user() {
-  inputBox "$mysql_title" "what system user does mysql backup use?"
-  [ $? = 1 ] && return
-  do_mysql_final "user = $REPLY"
+   inputBox "$mysql_title" "what system user does mysql backup use?"
+   [ $? = 1 ] && return
+   do_mysql_final "user = $REPLY"
 }
 
 do_mysql_final() {
@@ -69,18 +69,18 @@ do_mysql_final() {
       hotcopy="hotcopy = no"
    fi
 
-   [ $status = 1 ] && return;    
+   [ $status = 1 ] && return;
    result="$REPLY"
    compress="compress = no"
    for opt in $result; do
       case $opt in
-        '"sqldump"') sqldump="sqldump = yes";;
-        '"hotcopy"') hotcopy="hotcopy = yes";;
-        '"compress"') compress="compress = yes";;
+         '"sqldump"') sqldump="sqldump = yes";;
+         '"hotcopy"') hotcopy="hotcopy = yes";;
+         '"compress"') compress="compress = yes";;
       esac
    done
    get_next_filename $configdirectory/20.mysql
-   
+
    cat >> $next_filename <<EOF
 ### backupninja MySQL config file ###
 
@@ -114,7 +114,7 @@ EOF
 $mysql_backupdir
 
 # databases = <all | db1 db2 db3 > (default = all)
-# which databases to backup. should either be the word 'all' or a 
+# which databases to backup. should either be the word 'all' or a
 # space separated list of database names.
 $mysql_databases
 
@@ -122,43 +122,43 @@ EOF
 
 if [ $host_or_vservers == vservers ]
    then
-       cat >> $next_filename <<EOF
+      cat >> $next_filename <<EOF
 #
 # vsname = <vserver> (no default)
-# vsname indicates which vserver to operate on, this is only used if 
+# vsname indicates which vserver to operate on, this is only used if
 # vserver is set to yes in /etc/backupninja.conf
 # NOTE: if you do not specify a vsname the host will be operated on
-# alsoNOTE: if operating on a vserver, $VROOTDIR will be 
+# alsoNOTE: if operating on a vserver, $VROOTDIR will be
 # prepended to backupdir.
 EOF
    echo -e "$mysql_vsname\n" >> $next_filename
 fi
 
    echo -e $@ >> $next_filename
-   
+
    chmod 600 $next_filename
 }
 
 mysql_wizard() {
-   
+
    # Global variables
    mysql_title="MySQL action wizard"
-   
+
    # backup the host system or a Vserver?
    choose_host_or_one_vserver "$mysql_title"
    [ $? = 0 ] || return 1
    if [ $host_or_vservers == vservers ]
    then
-       do_mysql_vserver
-       [ $? = 0 ] || return 1
+      do_mysql_vserver
+      [ $? = 0 ] || return 1
    fi
-      
+
    # backupdir
    if [ $host_or_vservers == vservers ]
    then
-       inputBox "$mysql_title" "Directory where to store the backups:`echo \"\n(Relative to chosen vserver's root directory)\"`" "/var/backups/mysql"
+      inputBox "$mysql_title" "Directory where to store the backups:`echo \"\n(Relative to chosen vserver's root directory)\"`" "/var/backups/mysql"
    else
-       inputBox "$mysql_title" "Directory where to store the backups" "/var/backups/mysql"
+      inputBox "$mysql_title" "Directory where to store the backups" "/var/backups/mysql"
    fi
    [ $? = 1 ] && return
    mysql_backupdir="backupdir = $REPLY"
@@ -171,23 +171,23 @@ mysql_wizard() {
       do_mysql_databases
       [ $? = 0 ] || return 1
    fi
-   
+
    while true; do
       _DISABLE_HOTCOPY=
       menuBoxHelpFile "$mysql_title" "choose a mysql authentication method:" \
-        user "change to a linux user first." \
-        password "manually specify mysql user and password." \
-        debian "use default mysql user debian-sys-maint." 
+         user "change to a linux user first." \
+         password "manually specify mysql user and password." \
+         debian "use default mysql user debian-sys-maint."
       status=$?
       if [ $status = 2 ]; then
-              # show help.
-          helptmp="/tmp/backupninja.help.$$"
-          cat > $helptmp <<EOF
+         # show help.
+         helptmp="/tmp/backupninja.help.$$"
+         cat > $helptmp <<EOF
 To connect to mysql, backupninja must authenticate.
 There are three possible authentication methods:
 
 USER
-With this method, you specify a system user. Backupninja  will
+With this method, you specify a system user. Backupninja will
 then become this user before running mysqldump or mysqlhotcopy.
 The result is that ~/.my.cnf is used for authentication.
 
@@ -199,11 +199,11 @@ DEBIAN
 With this method, we use the debian-sys-maint user which is
 already defined in /etc/mysql/debian.cnf. If you are running
 debian, this is recommended, because no further configuration
-is needed. The drawback is that this is incompatible with 
+is needed. The drawback is that this is incompatible with
 mysqlhotcopy: you must use mysqldump.
 EOF
-          dialog --textbox $helptmp 0 0
-          rm $helptmp
+         dialog --textbox $helptmp 0 0
+         rm $helptmp
       fi
 
       [ $status = 1 ] && return;
@@ -213,5 +213,5 @@ EOF
          "password") do_mysql_password;return;;
          "debian") do_mysql_debian;return;;
       esac
-   done   
+   done
 }
index e34b16dbb0c3c3d697d9ac0152079f70a53a1b79..a4a3667ffff87058640caca4767a728f8d9b66ea 100644 (file)
@@ -47,9 +47,9 @@ fi
 
 ignore=''
 for i in $ignores $nodata; do
-       ignore="$ignore --ignore-table=$i"
+   ignore="$ignore --ignore-table=$i"
 done
-       
+
 # create backup dirs, $vroot will be empty if no vsname was specified
 # and we will instead proceed to operate on the host
 [ -d $vroot$backupdir ] || mkdir -p $vroot$backupdir
@@ -59,11 +59,11 @@ dumpdir="$backupdir/sqldump"
 
 if [ $usevserver = yes ]
 then
-       [ "$sqldump" == "no" -o -d $vroot$dumpdir ] || $VSERVER $vsname exec mkdir -p $dumpdir
-       [ "$hotcopy" == "no" -o -d $vroot$hotdir ] || $VSERVER $vsname exec mkdir -p $hotdir
+   [ "$sqldump" == "no" -o -d $vroot$dumpdir ] || $VSERVER $vsname exec mkdir -p $dumpdir
+   [ "$hotcopy" == "no" -o -d $vroot$hotdir ] || $VSERVER $vsname exec mkdir -p $hotdir
 else
-       [ "$sqldump" == "no" -o -d $dumpdir ] || mkdir -p $dumpdir
-       [ "$hotcopy" == "no" -o -d $hotdir ] || mkdir -p $hotdir
+   [ "$sqldump" == "no" -o -d $dumpdir ] || mkdir -p $dumpdir
+   [ "$hotcopy" == "no" -o -d $hotdir ] || mkdir -p $hotdir
 fi
 
 #######################################################################
@@ -87,29 +87,29 @@ defaultsfile=""
 
 if [ "$dbusername" != "" -a "$dbpassword" != "" ]
 then
-    if [ $usevserver = yes ]
-    then
-       vhome=`$VSERVER $vsname exec getent passwd "root" | @AWK@ -F: '{print $6}'`
-       home="$vroot$vhome"
-    else
-       home=`getent passwd "root" | @AWK@ -F: '{print $6}'`
-    fi
+   if [ $usevserver = yes ]
+   then
+      vhome=`$VSERVER $vsname exec getent passwd "root" | @AWK@ -F: '{print $6}'`
+   home="$vroot$vhome"
+   else
+      home=`getent passwd "root" | @AWK@ -F: '{print $6}'`
+   fi
+
+   [ -d $home ] || fatal "Can't find root's home directory ($home)."
+
+   mycnf="$home/.my.cnf"
+
+   if [ -f $mycnf ]
+   then
+   # rename temporarily
+   tmpcnf="$home/my.cnf.disable"
+   debug "mv $mycnf $tmpcnf"
+   mv $mycnf $tmpcnf
+   fi
 
-    [ -d $home ] || fatal "Can't find root's home directory ($home)."
-    
-    mycnf="$home/.my.cnf"
-    
-    if [ -f $mycnf ]
-    then
-       # rename temporarily
-       tmpcnf="$home/my.cnf.disable"
-       debug "mv $mycnf $tmpcnf"
-       mv $mycnf $tmpcnf
-    fi
-    
-    oldmask=`umask`
-    umask 077
-    cat > $mycnf <<EOF
+   oldmask=`umask`
+   umask 077
+   cat > $mycnf <<EOF
 # auto generated backupninja mysql conf
 [mysql]
 host=$dbhost
@@ -126,41 +126,41 @@ host=$dbhost
 user=$dbusername
 password="$dbpassword"
 EOF
-       umask $oldmask
-       if [ $usevserver = yes ] 
-       then
-           defaultsfile="--defaults-extra-file=$vhome/.my.cnf"
-       else
-           defaultsfile="--defaults-extra-file=$mycnf"
-       fi
+   umask $oldmask
+   if [ $usevserver = yes ]
+   then
+      defaultsfile="--defaults-extra-file=$vhome/.my.cnf"
+   else
+      defaultsfile="--defaults-extra-file=$mycnf"
+   fi
 fi
 
 # if a user is not set, use $configfile, otherwise use $mycnf
 if [ "$user" == "" ]; then
-       user=root;
-       defaultsfile="--defaults-extra-file=$configfile"
+   user=root;
+   defaultsfile="--defaults-extra-file=$configfile"
 else
-       userset=true;
-       if [ $usevserver = yes ]
-       then
-           vuserhome=`$VSERVER $vsname exec getent passwd "$user" | @AWK@ -F: '{print $6}'`
-           if [ $? -eq 2 ]
-           then
-               fatal "User $user not found in /etc/passwd"
-           fi
-           userhome="$vroot$vuserhome"
-       else
-           userhome=`getent passwd "$user" | @AWK@ -F: '{print $6}'`
-           if [ $? -eq 2 ]
-           then
-               fatal "User $user not found in /etc/passwd"
-           fi
-               fi
-       
-       debug "User home set to: $userhome"
-       [ -f $userhome/.my.cnf ] || fatal "Can't find config file in $userhome/.my.cnf"
-       defaultsfile="--defaults-extra-file=$userhome/.my.cnf"
-       debug "using $defaultsfile"
+   userset=true;
+   if [ $usevserver = yes ]
+   then
+      vuserhome=`$VSERVER $vsname exec getent passwd "$user" | @AWK@ -F: '{print $6}'`
+      if [ $? -eq 2 ]
+      then
+         fatal "User $user not found in /etc/passwd"
+      fi
+         userhome="$vroot$vuserhome"
+   else
+      userhome=`getent passwd "$user" | @AWK@ -F: '{print $6}'`
+      if [ $? -eq 2 ]
+      then
+         fatal "User $user not found in /etc/passwd"
+      fi
+         fi
+
+   debug "User home set to: $userhome"
+   [ -f $userhome/.my.cnf ] || fatal "Can't find config file in $userhome/.my.cnf"
+   defaultsfile="--defaults-extra-file=$userhome/.my.cnf"
+   debug "using $defaultsfile"
 fi
 
 #######################################################################
@@ -168,55 +168,55 @@ fi
 
 if [ "$hotcopy" == "yes" ]
 then
-    info "Initializing hotcopy method"
-    if [ "$databases" == "all" ]
-    then
-       if [ $usevserver = yes ]
-       then
-               info "dbhost: $dbhost"
-               execstr="$VSERVER $vsname exec $MYSQLHOTCOPY -h $dbhost --quiet --allowold --regexp /.\*/./.\*/ $hotdir"
-       else
-               execstr="$MYSQLHOTCOPY --quiet --allowold --regexp /.\*/./.\*/ $hotdir"
-       fi
-       debug "su $user -c \"$execstr\""
-       if [ ! $test ]
-       then
-               output=`su $user -c "$execstr" 2>&1`
-               code=$?
-               if [ "$code" == "0" ]
-               then
-                       debug $output
-                       info "Successfully finished hotcopy of all mysql databases"
-               else
-                       warning $output
-                       warning "Failed to hotcopy all mysql databases"
-               fi
-       fi
-    else       
-       for db in $databases
-       do
-               if [ $usevserver = yes ]
-               then
-                       execstr="$VSERVER $vsname exec $MYSQLHOTCOPY --allowold $db $hotdir"
-               else
-                       execstr="$MYSQLHOTCOPY --allowold $db $hotdir"
-               fi
-               debug 'su $user -c \"$execstr\"'
-               if [ ! $test ]
-               then
-                       output=`su $user -c "$execstr" 2>&1`
-                       code=$?
-                       if [ "$code" == "0" ]
-                       then
-                               debug $output
-                               info "Successfully finished hotcopy of mysql database $db"
-                       else
-                               warning $output
-                               warning "Failed to hotcopy mysql database $db"
-                       fi
-               fi
-       done
-     fi
+   info "Initializing hotcopy method"
+   if [ "$databases" == "all" ]
+   then
+      if [ $usevserver = yes ]
+      then
+         info "dbhost: $dbhost"
+         execstr="$VSERVER $vsname exec $MYSQLHOTCOPY -h $dbhost --quiet --allowold --regexp /.\*/./.\*/ $hotdir"
+      else
+         execstr="$MYSQLHOTCOPY --quiet --allowold --regexp /.\*/./.\*/ $hotdir"
+      fi
+      debug "su $user -c \"$execstr\""
+      if [ ! $test ]
+      then
+         output=`su $user -c "$execstr" 2>&1`
+         code=$?
+         if [ "$code" == "0" ]
+         then
+            debug $output
+            info "Successfully finished hotcopy of all mysql databases"
+         else
+            warning $output
+            warning "Failed to hotcopy all mysql databases"
+         fi
+      fi
+   else
+      for db in $databases
+      do
+         if [ $usevserver = yes ]
+         then
+            execstr="$VSERVER $vsname exec $MYSQLHOTCOPY --allowold $db $hotdir"
+         else
+            execstr="$MYSQLHOTCOPY --allowold $db $hotdir"
+         fi
+         debug 'su $user -c \"$execstr\"'
+         if [ ! $test ]
+         then
+            output=`su $user -c "$execstr" 2>&1`
+            code=$?
+            if [ "$code" == "0" ]
+            then
+               debug $output
+               info "Successfully finished hotcopy of mysql database $db"
+            else
+               warning $output
+               warning "Failed to hotcopy mysql database $db"
+            fi
+         fi
+      done
+   fi
 fi
 
 ##########################################################################
@@ -224,97 +224,97 @@ fi
 
 if [ "$sqldump" == "yes" ]
 then
-    info "Initializing SQL dump method"
-    if [ "$databases" == "all" ]
-    then
-       if [ $usevserver = yes ]
-       then
-           debug 'echo show databases | $VSERVER $vsname exec su $user -c \"$MYSQL $defaultsfile\" | grep -v Database'
-           databases=`echo 'show databases' | $VSERVER $vsname exec su $user -c "$MYSQL $defaultsfile" | grep -v Database`
-           if [ $? -ne 0 ]
-           then
-               fatal "Authentication problem, maybe user/password is wrong or mysqld is not running?"
-           fi
-       else
-               databases=$(su $user -c "$MYSQL $defaultsfile -N -B -e 'show databases'" | sed 's/|//g;/\+----/d')
-               if [ $? -ne 0 ]
-               then
-                   fatal "Authentication problem, maybe user/password is wrong or mysqld is not running?"
-               fi
-       fi
-    fi
+   info "Initializing SQL dump method"
+   if [ "$databases" == "all" ]
+   then
+      if [ $usevserver = yes ]
+      then
+         debug 'echo show databases | $VSERVER $vsname exec su $user -c \"$MYSQL $defaultsfile\" | grep -v Database'
+         databases=`echo 'show databases' | $VSERVER $vsname exec su $user -c "$MYSQL $defaultsfile" | grep -v Database`
+         if [ $? -ne 0 ]
+         then
+            fatal "Authentication problem, maybe user/password is wrong or mysqld is not running?"
+         fi
+      else
+         databases=$(su $user -c "$MYSQL $defaultsfile -N -B -e 'show databases'" | sed 's/|//g;/\+----/d')
+         if [ $? -ne 0 ]
+         then
+            fatal "Authentication problem, maybe user/password is wrong or mysqld is not running?"
+         fi
+      fi
+   fi
 
-       for db in $databases
-       do
-           DUMP_BASE="$MYSQLDUMP $defaultsfile $sqldumpoptions"
+   for db in $databases
+   do
+      DUMP_BASE="$MYSQLDUMP $defaultsfile $sqldumpoptions"
 
-           # Dumping structure and data
-           DUMP="$DUMP_BASE $ignore $db"
+      # Dumping structure and data
+      DUMP="$DUMP_BASE $ignore $db"
 
-           # If requested, dump only the table structure for this database
-           if echo "$nodata" | grep -E '(^|[[:space:]])'"$db\." >/dev/null
-           then
-              # Get the structure of the tables, without data
-              DUMP_STRUCT="$DUMP_BASE --no-data $db"
-              for qualified_table in $nodata
-              do
-                 table=$( expr match "$qualified_table" "$db\.\([^\w]*\)" )
-                 DUMP_STRUCT="$DUMP_STRUCT $table"
-              done
-              DUMP="( $DUMP; $DUMP_STRUCT )"
-           fi
-               if [ $usevserver = yes ]
-               then
-                   # Test to make sure mysqld is running, if it is not sqldump will not work
-                   $VSERVER $vsname exec su $user -c "$MYSQLADMIN $defaultsfile ping 2>&1 >/dev/null"
-                   if [ $? -ne 0 ]; then
-                      fatal "mysqld doesn't appear to be running!"
-                   fi
-                   if [ "$compress" == "yes" ]; then
-                      execstr="$VSERVER $vsname exec $DUMP | $GZIP > $vroot$dumpdir/${db}.sql.gz"
-                   else
-                      execstr="$VSERVER $vsname exec $DUMP -r $vroot$dumpdir/${db}.sql"
-                   fi
-               else
-                   # Test to make sure mysqld is running, if it is not sqldump will not work
-                   su $user -c "$MYSQLADMIN $defaultsfile ping 2>&1 >/dev/null"
-                   if [ $? -ne 0 ]; then
-                      fatal "mysqld doesn't appear to be running!"
-                   fi
-                   if [ "$compress" == "yes" ]; then
-                      execstr="$DUMP | $GZIP > $dumpdir/${db}.sql.gz"
-                   else
-                      execstr="$DUMP -r $dumpdir/${db}.sql"
-                   fi
-               fi
-               debug "su $user -c \"$execstr\""
-               if [ ! $test ]
-               then
-                       output=`su $user -c "$execstr" 2>&1`
-                       code=$?
-                       if [ "$code" == "0" ]
-                       then
-                               debug $output
-                               info "Successfully finished dump of mysql database $db"
-                       else
-                               warning $output
-                               warning "Failed to dump mysql databases $db"
-                       fi
-               fi
-       done
+      # If requested, dump only the table structure for this database
+      if echo "$nodata" | grep -E '(^|[[:space:]])'"$db\." >/dev/null
+      then
+         # Get the structure of the tables, without data
+         DUMP_STRUCT="$DUMP_BASE --no-data $db"
+         for qualified_table in $nodata
+         do
+            table=$( expr match "$qualified_table" "$db\.\([^\w]*\)" )
+            DUMP_STRUCT="$DUMP_STRUCT $table"
+         done
+         DUMP="( $DUMP; $DUMP_STRUCT )"
+      fi
+      if [ $usevserver = yes ]
+      then
+         # Test to make sure mysqld is running, if it is not sqldump will not work
+         $VSERVER $vsname exec su $user -c "$MYSQLADMIN $defaultsfile ping 2>&1 >/dev/null"
+         if [ $? -ne 0 ]; then
+            fatal "mysqld doesn't appear to be running!"
+         fi
+         if [ "$compress" == "yes" ]; then
+            execstr="$VSERVER $vsname exec $DUMP | $GZIP > $vroot$dumpdir/${db}.sql.gz"
+         else
+            execstr="$VSERVER $vsname exec $DUMP -r $vroot$dumpdir/${db}.sql"
+         fi
+      else
+         # Test to make sure mysqld is running, if it is not sqldump will not work
+         su $user -c "$MYSQLADMIN $defaultsfile ping 2>&1 >/dev/null"
+         if [ $? -ne 0 ]; then
+            fatal "mysqld doesn't appear to be running!"
+         fi
+         if [ "$compress" == "yes" ]; then
+            execstr="$DUMP | $GZIP > $dumpdir/${db}.sql.gz"
+         else
+            execstr="$DUMP -r $dumpdir/${db}.sql"
+         fi
+      fi
+      debug "su $user -c \"$execstr\""
+      if [ ! $test ]
+      then
+         output=`su $user -c "$execstr" 2>&1`
+         code=$?
+         if [ "$code" == "0" ]
+         then
+            debug $output
+            info "Successfully finished dump of mysql database $db"
+         else
+            warning $output
+            warning "Failed to dump mysql databases $db"
+         fi
+      fi
+   done
 fi
 
 # clean up tmp config file
 if [ "$dbusername" != "" -a "$dbpassword" != "" ]
 then
-       ## clean up tmp config file
-       debug "rm $mycnf"
-       rm $mycnf
-       if [ -f "$tmpcnf" ]
-       then
-               debug "mv $tmpcnf $mycnf"
-               mv $tmpcnf $mycnf
-       fi
+   ## clean up tmp config file
+   debug "rm $mycnf"
+   rm $mycnf
+   if [ -f "$tmpcnf" ]
+   then
+      debug "mv $tmpcnf $mycnf"
+      mv $tmpcnf $mycnf
+   fi
 fi
 
 return 0
index 80246167dcfc174b37bbc6088ddf7923a95a5250..48bf047b1482bd8b77af31eeb118aa9fe95d6ba5 100644 (file)
@@ -13,20 +13,20 @@ do_pgsql_databases() {
    while [ -z "$REPLY" ]; do
       formBegin "$pgsql_title: databases"
          formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
-        formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
+         formItem "Database:"
       formDisplay
       [ $? = 0 ] || return 1
       pgsql_databases="databases = "
       for i in $REPLY; do
-        [ -n "$i" ] && pgsql_databases="$pgsql_databases $i"
+         [ -n "$i" ] && pgsql_databases="$pgsql_databases $i"
       done
    done
 }
@@ -86,14 +86,14 @@ EOF
 $pgsql_backupdir
 
 # databases = < all | db1 db2 db3 > (default = all)
-# which databases to backup. should either be the word 'all' or a 
+# which databases to backup. should either be the word 'all' or a
 # space separated list of database names.
 # Note: when using 'all', pg_dumpall is used instead of pg_dump, which means
 # that cluster-wide data (such as users and groups) are saved.
 $pgsql_databases
 
 # compress = < yes | no > (default = yes)
-# if yes, compress the pg_dump/pg_dumpall output. 
+# if yes, compress the pg_dump/pg_dumpall output.
 $pgsql_compress
 
 ### You can also set the following variables in backupninja.conf:
index f334bf2fffedbee12148b2a29e55c75f6b62d189..b7e42626527cb453d535815f16e3b54dedde6316 100644 (file)
@@ -36,18 +36,18 @@ if [ $usevserver = yes ]; then
    debug "Examining vserver '$vsname'."
    if [ "$databases" == "all" ]; then
       [ -x "$vroot`$VSERVER $vsname exec which $PGSQLDUMPALL`" ] || \
-        fatal "Can't find $PGSQLDUMPALL in vserver $vsname."
+         fatal "Can't find $PGSQLDUMPALL in vserver $vsname."
    else
       [ -x "$vroot`$VSERVER $vsname exec which $PGSQLDUMP`" ] || \
-        fatal "Can't find $PGSQLDUMP in vserver $vsname."
+         fatal "Can't find $PGSQLDUMP in vserver $vsname."
    fi
 else
    if [ "$databases" == "all" ]; then
       [ -x "`which $PGSQLDUMPALL`" ] || \
-        fatal "Can't find $PGSQLDUMPALL."
+         fatal "Can't find $PGSQLDUMPALL."
    else
       [ -x "`which $PGSQLDUMP`" ] || \
-        fatal "Can't find $PGSQLDUMP."
+         fatal "Can't find $PGSQLDUMP."
    fi
 fi
 
@@ -64,7 +64,7 @@ else
    pguid=`getent passwd $PGSQLUSER | @AWK@ -F: '{print $3}'`
 fi
 [ -n "$pguid" ] || \
-    fatal "No user called $PGSQLUSER`[ $usevserver = no ] || echo \" on vserver $vsname\"`."
+   fatal "No user called $PGSQLUSER`[ $usevserver = no ] || echo \" on vserver $vsname\"`."
 debug "chown $pguid $vroot$backupdir"
 chown $pguid $vroot$backupdir
 debug "chmod 700 $vroot$backupdir"
@@ -72,61 +72,61 @@ chmod 700 $vroot$backupdir
 
 # if $databases = all, use pg_dumpall
 if [ "$databases" == "all" ]; then
-    if [ $usevserver = yes ]; then
-       if [ "$compress" == "yes" ]; then          
-          execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${vsname}.sql.gz\""
-       else
-          execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMPALL > $backupdir/${vsname}.sql\""
-       fi
-    else
-       if [ "$compress" == "yes" ]; then
-          execstr="su - $PGSQLUSER -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${localhost}-all.sql.gz\""
-       else
-       execstr="su - $PGSQLUSER -c \"$PGSQLDUMPALL > $backupdir/${localhost}-all.sql\""
-       fi
-    fi
-    debug "$execstr"
-    if [ ! $test ]; then
-       output=`eval $execstr 2>&1`
-       code=$?
-       if [ "$code" == "0" ]; then
-           debug $output
-           info "Successfully finished dump of pgsql cluster"
-       else
-           warning $output
-           warning "Failed to dump pgsql cluster"
-       fi
-    fi
-    
+   if [ $usevserver = yes ]; then
+      if [ "$compress" == "yes" ]; then
+         execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${vsname}.sql.gz\""
+      else
+         execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMPALL > $backupdir/${vsname}.sql\""
+      fi
+   else
+      if [ "$compress" == "yes" ]; then
+         execstr="su - $PGSQLUSER -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${localhost}-all.sql.gz\""
+      else
+         execstr="su - $PGSQLUSER -c \"$PGSQLDUMPALL > $backupdir/${localhost}-all.sql\""
+      fi
+   fi
+   debug "$execstr"
+   if [ ! $test ]; then
+      output=`eval $execstr 2>&1`
+      code=$?
+      if [ "$code" == "0" ]; then
+         debug $output
+         info "Successfully finished dump of pgsql cluster"
+      else
+         warning $output
+         warning "Failed to dump pgsql cluster"
+      fi
+   fi
+
 # else use pg_dump on each specified database
 else
-    for db in $databases; do
-       if [ $usevserver = yes ]; then
-           if [ "$compress" == "yes" ]; then
-              execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\""
-           else
-              execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMP $db | > $backupdir/${db}.sql\""
-           fi
-       else
-           if [ "$compress" == "yes" ]; then
-              execstr="su - $PGSQLUSER -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\""
-           else
-              execstr="su - $PGSQLUSER -c \"$PGSQLDUMP $db > $backupdir/${db}.sql\""
-           fi
-       fi
-       debug "$execstr"
-       if [ ! $test ]; then
-           output=`eval $execstr 2>&1`
-           code=$?
-           if [ "$code" == "0" ]; then
-               debug $output
-               info "Successfully finished dump of pgsql database ${db}"
-           else
-               warning $output
-               warning "Failed to dump pgsql database ${db}"
-           fi
-       fi
-    done
+   for db in $databases; do
+      if [ $usevserver = yes ]; then
+         if [ "$compress" == "yes" ]; then
+            execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\""
+         else
+            execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMP $db | > $backupdir/${db}.sql\""
+         fi
+      else
+         if [ "$compress" == "yes" ]; then
+            execstr="su - $PGSQLUSER -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\""
+         else
+            execstr="su - $PGSQLUSER -c \"$PGSQLDUMP $db > $backupdir/${db}.sql\""
+         fi
+      fi
+      debug "$execstr"
+      if [ ! $test ]; then
+         output=`eval $execstr 2>&1`
+         code=$?
+         if [ "$code" == "0" ]; then
+            debug $output
+            info "Successfully finished dump of pgsql database ${db}"
+         else
+            warning $output
+            warning "Failed to dump pgsql database ${db}"
+         fi
+      fi
+   done
 fi
 
 return 0
index 1055280b155850bf905a89bc987567fc32ca1a20..c673723a07dff9461b7e6b5702645679cbdf974d 100644 (file)
@@ -18,9 +18,9 @@ do_rdiff_host_includes() {
          for ((i=0; i < ${#rdiff_includes[@]} ; i++)); do
             formItem include ${rdiff_includes[$i]}
          done
-         formItem include 
-         formItem include 
-         formItem include 
+         formItem include
+         formItem include
+         formItem include
       formDisplay
       [ $? = 0 ] || return
       unset rdiff_includes
@@ -41,7 +41,7 @@ do_rdiff_vserver() {
    while [ -z "$REPLY" ]; do
       formBegin "$rdiff_title - vsincludes (backup these directories from every vserver)"
          [ -z "$rdiff_vsincludes" ] && rdiff_vsincludes="$rdiff_default_includes"
-   
+
          for i in $rdiff_vsincludes; do
             formItem include "$i"
          done
@@ -52,19 +52,19 @@ do_rdiff_vserver() {
       [ $? = 0 ] || return 1
       rdiff_vsincludes=($REPLY)
    done
-   
+
    set +o noglob
 }
 
 do_rdiff_excludes() {
    set -o noglob
-   formBegin "$rdiff_title: excludes" 
+   formBegin "$rdiff_title: excludes"
      for ((i=0; i < ${#rdiff_excludes[@]} ; i++))
      do
        formItem exclude ${rdiff_excludes[$i]}
      done
-     formItem exclude 
-     formItem exclude 
+     formItem exclude
+     formItem exclude
    formDisplay
    [ $? = 0 ] || return
    unset rdiff_excludes
@@ -102,10 +102,10 @@ do_rdiff_src() {
 
 do_rdiff_dest() {
    declare -a tmp_array
-   
+
    set -o noglob
    REPLY=
-   while [ -z "$REPLY" -o -z "$rdiff_directory" -o -z "$rdiff_host" -o -z "$rdiff_user" ] 
+   while [ -z "$REPLY" -o -z "$rdiff_directory" -o -z "$rdiff_host" -o -z "$rdiff_user" ]
    do
      formBegin "$rdiff_title - destination: last three items are required"
         formItem "keep" "$rdiff_keep"
@@ -119,11 +119,11 @@ do_rdiff_dest() {
      rdiff_keep=${tmp_array[0]}
      rdiff_directory=${tmp_array[1]}
      rdiff_host=${tmp_array[2]}
-     rdiff_user=${tmp_array[3]}  
+     rdiff_user=${tmp_array[3]}
      rdiff_type=${tmp_array[4]}
   done
   set +o noglob
-  
+
   _dest_done="(DONE)"
   setDefault conn
 }
@@ -155,7 +155,7 @@ do_rdiff_ssh_con() {
       echo "Done. hit return to continue"
       read
    fi
-  
+
    ssh -o PreferredAuthentications=publickey $rdiff_host -l $rdiff_user "exit" 2> /dev/null
    if [ $? -ne 0 ]; then
       echo "Copying root's public ssh key to authorized_keys of $rdiff_user@$rdiff_host. When prompted, specify the password for user $rdiff_user@$rdiff_host."
@@ -171,7 +171,7 @@ do_rdiff_ssh_con() {
             1 )   msgBox "$rdiff_title: error" "Connected successfully to $rdiff_user@$rdiff_host, but unable to write. Check ownership and modes of ~$rdiff_user on $rdiff_host." ;;
             255 ) msgBox "$rdiff_title: error" "Failed to connect to $rdiff_user@$rdiff_host. Check hostname, username, and password. Also, make sure sshd is running on the destination host." ;;
             * )   msgBox "$rdiff_title: error" "Unexpected error." ;;
-         esac 
+         esac
          return
       else
          echo "Done. hit return to continue"
@@ -195,20 +195,20 @@ do_rdiff_ssh_con() {
    else
       booleanBox "Remote directory does not exist" "The destination backup directory does not exist, do you want me to create it for you?"
       if [ $? = 0 ]; then
-        ssh $rdiff_user@$rdiff_host "mkdir -p ${rdiff_directory}"
+    ssh $rdiff_user@$rdiff_host "mkdir -p ${rdiff_directory}"
          result=$?
          case $result in
             0) msgBox "$rdiff_title: success" "Creation of the remote destination directory was a success!";;
-            1) msgBox "$rdiff_title: error" "Connected successfully to $rdiff_user@$rdiff_host, but was unable to create the destination directory, check the directory permissions." 
+            1) msgBox "$rdiff_title: error" "Connected successfully to $rdiff_user@$rdiff_host, but was unable to create the destination directory, check the directory permissions."
                remote_status=failed;;
-            255) msgBox "$rdiff_title: error" "Failed to connect to $rdiff_user@$rdiff_host. Check hostname, username, and password. Also, make sure sshd is running on the destination host." 
+            255) msgBox "$rdiff_title: error" "Failed to connect to $rdiff_user@$rdiff_host. Check hostname, username, and password. Also, make sure sshd is running on the destination host."
                remote_status=failed;;
-            *) msgBox "$rdiff_title: error" "Unexpected error." 
+            *) msgBox "$rdiff_title: error" "Unexpected error."
                remote_status=failed;;
          esac
       fi
    fi
-  
+
    if [ "$remote_status" = "ok" ]; then
       do_rdiff_con
    fi
@@ -231,12 +231,12 @@ do_rdiff_con() {
                echo "Hit return to continue."
                read
                case $result in
-                  0) msgBox "$rdiff_title: success" "Installation of rdiff-backup was a success!" 
+                  0) msgBox "$rdiff_title: success" "Installation of rdiff-backup was a success!"
                      do_rdiff_con;;
                   1) msgBox "$rdiff_title: error" "Connected successfully to $rdiff_user@$rdiff_host, but was unable to install the package for some reason.";;
                   255) msgBox "$rdiff_title: error" "Failed to connect to $rdiff_user@$rdiff_host. Check hostname, username, and password. Also, make sure sshd is running on the destination host.";;
                   *) msgBox "$rdiff_title: error" "Unexpected error.";;
-               esac 
+               esac
                return
             fi
          else
@@ -256,9 +256,9 @@ do_rdiff_con() {
          fi
       fi
    else
-       echo "SUCCESS: Everything looks good!"
-       echo "Hit return to continue."
-       read
+    echo "SUCCESS: Everything looks good!"
+   echo "Hit return to continue."
+   read
    fi
 
    _con_done="(DONE)"
@@ -298,11 +298,11 @@ EOF
       set -o noglob
       for ((i=0; i < ${#rdiff_includes[@]} ; i++)); do
          echo "include = ${rdiff_includes[$i]}" >> $next_filename
-      done       
+      done
       set +o noglob
    fi
 
-   if [ "$host_or_vservers" == vservers -o "$host_or_vservers" == both ]; then      
+   if [ "$host_or_vservers" == vservers -o "$host_or_vservers" == both ]; then
       cat >> $next_filename <<EOF
 #
 # If vservers = yes in /etc/backupninja.conf then the following variables can
@@ -328,7 +328,7 @@ EOF
       done
       set +o noglob
    fi
-   
+
    ## excludes ##
    set -o noglob
    for ((i=0; i < ${#rdiff_excludes[@]} ; i++)); do
@@ -340,7 +340,7 @@ EOF
 ######################################################
 ## destination section
 ## (where the files are copied to)
-  
+
 [dest]
 type = remote
 directory = $rdiff_directory
@@ -382,7 +382,7 @@ rdiff_main_menu() {
 }
 
 rdiff_wizard() {
+
    # Global variables
    rdiff_title="rdiff-backup action wizard"
    _src_done=
@@ -401,7 +401,7 @@ rdiff_wizard() {
    rdiff_excludes=(/home/*/.gnupg /home/*/.local/share/Trash /home/*/.Trash /home/*/.thumbnails /home/*/.beagle /home/*/.aMule /home/*/gtk-gnutella-downloads)
    rdiff_vsincludes=
    set +o noglob
-  
+
    rdiff_main_menu
 }
 
index 0f934299edd0ebc86fea6dfa286079bad4906f91..51da1cc8713becd43ee761939666e82a39d1646a 100644 (file)
@@ -7,68 +7,68 @@
 ### FUNCTIONS ###
 
 function test_connection() {
-       # given a user and host,
-       # tests the connection.
-       # if user or host is missing, returns 0
-       # (ie, assume it's a local connection).
-       if [ $# -lt 2 ]; then
-               debug "(local is assumed to be a good connection)"
-               return 0
-       fi
-       local user=$1
-       local host=$2
-       debug "ssh $sshoptions -o PasswordAuthentication=no $host -l $user 'echo -n 1'"
-       local ret=`ssh $sshoptions -o PasswordAuthentication=no $host -l $user 'echo -n host is alive'`
-       if echo $ret | grep "host is alive"; then
-               debug "Connected to $host as $user successfully"
-       else
-               fatal "Can't connect to $host as $user."
-       fi
+   # given a user and host,
+   # tests the connection.
+   # if user or host is missing, returns 0
+   # (ie, assume it's a local connection).
+   if [ $# -lt 2 ]; then
+      debug "(local is assumed to be a good connection)"
+      return 0
+   fi
+   local user=$1
+   local host=$2
+   debug "ssh $sshoptions -o PasswordAuthentication=no $host -l $user 'echo -n 1'"
+   local ret=`ssh $sshoptions -o PasswordAuthentication=no $host -l $user 'echo -n host is alive'`
+   if echo $ret | grep "host is alive"; then
+      debug "Connected to $host as $user successfully"
+   else
+      fatal "Can't connect to $host as $user."
+   fi
 }
 
 function get_version() {
-       # given no arguments, returns the local version.
-       # given a user and host, returns the remote version.
-       # if user or host is missing, returns the local version.
-       if [ "$#" -lt 2 ]; then
-               debug "$RDIFFBACKUP -V"
-               echo `$RDIFFBACKUP -V`
-       else
-               local user=$1
-               local host=$2
-               debug "ssh $sshoptions $host -l $user '$RDIFFBACKUP -V'"
-               echo `ssh $sshoptions $host -l $user "$RDIFFBACKUP -V | grep rdiff-backup"`
-       fi
+   # given no arguments, returns the local version.
+   # given a user and host, returns the remote version.
+   # if user or host is missing, returns the local version.
+   if [ "$#" -lt 2 ]; then
+      debug "$RDIFFBACKUP -V"
+      echo `$RDIFFBACKUP -V`
+   else
+      local user=$1
+      local host=$2
+      debug "ssh $sshoptions $host -l $user '$RDIFFBACKUP -V'"
+      echo `ssh $sshoptions $host -l $user "$RDIFFBACKUP -V | grep rdiff-backup"`
+   fi
 }
 
 function check_consistency() {
-       local section=$1
-       local type=$2
-       local user=$3
-       local host=$4
-       if [ "$type" == "local" ]; then
-               if [ "$user" != "" ]; then
-                       warning "User should not be specified for local $section."
-               fi
-               if [ "$host" != "" ]; then
-                       warning "Host should not be specified for local $section."
-               fi
-       fi
-       if [ "$type" == "remote" ]; then
-               if [ "$user" == "" ]; then
-                       fatal "User must be specified for remote $section."
-               fi
-               if [ "host" == "" ]; then
-                       fatal "Host must be specifed for remote $section."
-               fi
-       fi
+   local section=$1
+   local type=$2
+   local user=$3
+   local host=$4
+   if [ "$type" == "local" ]; then
+      if [ "$user" != "" ]; then
+         warning "User should not be specified for local $section."
+      fi
+      if [ "$host" != "" ]; then
+         warning "Host should not be specified for local $section."
+      fi
+   fi
+   if [ "$type" == "remote" ]; then
+      if [ "$user" == "" ]; then
+         fatal "User must be specified for remote $section."
+      fi
+      if [ "host" == "" ]; then
+         fatal "Host must be specifed for remote $section."
+      fi
+   fi
 }
 
 function check_cstream() {
-       local cstream=$1
-       if [ ! -x $cstream ]; then
-               fatal "Can't find your cstream binary (trying: $cstream). If you use bwlimit you must have cstream installed."
-       fi
+   local cstream=$1
+   if [ ! -x $cstream ]; then
+      fatal "Can't find your cstream binary (trying: $cstream). If you use bwlimit you must have cstream installed."
+   fi
 }
 
 ### GET CONFIG ###
@@ -102,7 +102,7 @@ getconf sshoptions
 check_consistency "destination" "$type" "$user" "$host"
 
 if [ -n "$sshoptions" ] && echo $options | grep -qv "remote-schema"; then
-       options="$options --remote-schema 'ssh -C $sshoptions %s rdiff-backup --server'"
+   options="$options --remote-schema 'ssh -C $sshoptions %s rdiff-backup --server'"
 fi
 
 ### CHECK CONFIG ###
@@ -114,7 +114,7 @@ if [ $vservers_are_available = yes ]; then
       vsnames="$found_vservers"
    else
       if ! vservers_exist "$vsnames" ; then
-            fatal "At least one of the vservers listed in vsnames ($vsnames) does not exist."
+         fatal "At least one of the vservers listed in vsnames ($vsnames) does not exist."
       fi
    fi
    if [ -n "$vsinclude" ]; then
@@ -128,40 +128,40 @@ fi
 # check the connection at the source and destination
 [ -n "$test" ] || test=0
 if [ "$testconnect" = "yes" ] || [ "${test}" -eq 1 ]; then
-       test_connection $sourceuser $sourcehost
-       test_connection $destuser $desthost
+   test_connection $sourceuser $sourcehost
+   test_connection $destuser $desthost
 fi
 
 if [ "$ignore_version" != "yes" ]; then
-       # see that rdiff-backup has the same version at the source and destination
-       sourceversion=`get_version $sourceuser $sourcehost`
-       destversion=`get_version $destuser $desthost`
-       if [ "$sourceversion" != "$destversion" ]; then
-               fatal "rdiff-backup does not have the same version at the source and at the destination."
-       fi
+   # see that rdiff-backup has the same version at the source and destination
+   sourceversion=`get_version $sourceuser $sourcehost`
+   destversion=`get_version $destuser $desthost`
+   if [ "$sourceversion" != "$destversion" ]; then
+      fatal "rdiff-backup does not have the same version at the source and at the destination."
+   fi
 fi
 
 # source specific checks
-case $sourcetype in 
-       remote ) execstr_sourcepart="$sourceuser@$sourcehost::/" ;;
-       local  ) execstr_sourcepart="/" ;;
-       *      ) fatal "sourcetype '$sourcetype' is neither local nor remote" ;;
+case $sourcetype in
+   remote ) execstr_sourcepart="$sourceuser@$sourcehost::/" ;;
+   local  ) execstr_sourcepart="/" ;;
+   *      ) fatal "sourcetype '$sourcetype' is neither local nor remote" ;;
 esac
 
 # destination specific checks
 [ "$destdir" != "" ] || fatal "Destination directory not set"
-case $desttype in 
-       remote ) execstr_destpart="$destuser@$desthost::$destdir/$label" ;;
-       local  ) execstr_destpart="$destdir/$label" ;;
-       *      ) fatal "desttype '$desttype' is neither local nor remote" ;;
+case $desttype in
+   remote ) execstr_destpart="$destuser@$desthost::$destdir/$label" ;;
+   local  ) execstr_destpart="$destdir/$label" ;;
+   *      ) fatal "desttype '$desttype' is neither local nor remote" ;;
 esac
-       
+
 ### REMOVE OLD BACKUPS ###
 
 if [ "$keep" != yes ]; then
 
    if [ "`echo $keep | tr -d 0-9`" == "" ]; then
-       # add D if no other date unit is specified
+   # add D if no other date unit is specified
       keep="${keep}D"
    fi
 
@@ -175,27 +175,27 @@ if [ "$keep" != yes ]; then
    if [ $test = 0 ]; then
       output="`su -c "$removestr" 2>&1`"
       if [ $? = 0 ]; then
-        debug $output
-        info "Removing backups older than $keep days succeeded."
+         debug $output
+         info "Removing backups older than $keep days succeeded."
       else
-        warning $output
-        warning "Failed removing backups older than $keep."
+         warning $output
+         warning "Failed removing backups older than $keep."
       fi
    fi
 
 fi
 
-# Add cstream 
+# Add cstream
 
 if [ ! -z $bwlimit ]; then
-       check_cstream $CSTREAM;
-       if [ "$desttype" = "remote" ]; then
-               RDIFFBACKUP="$RDIFFBACKUP --remote-schema 'cstream -t $bwlimit | ssh %s \''rdiff-backup --server\'''"
-       elif [ "$sourcetype" = "remote" ]; then
-               RDIFFBACKUP="$RDIFFBACKUP --remote-schema 'ssh %s \''rdiff-backup --server\'' | cstream -t $bwlimit'"
-       else
-               fatal "You specified a bandwidth limit but neither your source nor destination types are remote."
-       fi
+   check_cstream $CSTREAM;
+   if [ "$desttype" = "remote" ]; then
+      RDIFFBACKUP="$RDIFFBACKUP --remote-schema 'cstream -t $bwlimit | ssh %s \''rdiff-backup --server\'''"
+   elif [ "$sourcetype" = "remote" ]; then
+      RDIFFBACKUP="$RDIFFBACKUP --remote-schema 'ssh %s \''rdiff-backup --server\'' | cstream -t $bwlimit'"
+   else
+      fatal "You specified a bandwidth limit but neither your source nor destination types are remote."
+   fi
 fi
 
 ### EXECUTE ###
@@ -212,7 +212,7 @@ for i in $exclude; do
    str="${i//__star__/*}"
    execstr="${execstr}--exclude '$str' "
 done
-# includes 
+# includes
 for i in $include; do
    [ "$i" != "/" ] || fatal "Sorry, you cannot use 'include = /'"
    str="${i//__star__/*}"
@@ -223,10 +223,10 @@ done
 if [ $usevserver = yes ]; then
    for vserver in $vsnames; do
       for vi in $vsinclude; do
-        str="${vi//__star__/*}"
-        str="$VROOTDIR/$vserver$str"
+         str="${vi//__star__/*}"
+         str="$VROOTDIR/$vserver$str"
          if [ -n "$str" ]; then
-           execstr="${execstr}--include '$str' "
+            execstr="${execstr}--include '$str' "
          else
             warning "vsinclude statement '${vi//__star__/*}' will be ignored for VServer $vserver. $symlinks_warning"
          fi
@@ -238,20 +238,20 @@ set +o noglob
 
 # exclude everything else
 [ "$include" != "" -o "$vsinclude" != "" ] && execstr="${execstr}--exclude '/*' "
-               
+
 # include client-part and server-part
 execstr="${execstr}$execstr_sourcepart $execstr_destpart"
 
 debug "$execstr"
 if [ $test = 0 ]; then
-       output=`nice -n $nicelevel su -c "$execstr" 2>&1`
-       if [ $? = 0 ]; then
-               debug $output
-               info "Successfully finished backing up source $label"
-       else
-               warning $output
-               warning "Failed backup up source $label"
-       fi
-fi     
+   output=`nice -n $nicelevel su -c "$execstr" 2>&1`
+   if [ $? = 0 ]; then
+      debug $output
+      info "Successfully finished backing up source $label"
+   else
+      warning $output
+      warning "Failed backup up source $label"
+   fi
+fi
 
 return 0
index 9baa2f215218887c35d7d62a849788393c36a832..9e5e4f98ade5a26c3caad66bc2bc5ec13bb3e388 100644 (file)
@@ -102,40 +102,40 @@ getconf service
 
 function rotate {
 
-  if [[ "$2" < 4 ]]; then
-    error "Rotate: minimum of 4 rotations"
-    exit 1
-  fi
-
-  if [ -d $1.$2 ]; then
-    $nice $mv /$1.$2 /$1.tmp
-  fi
-
-  for ((n=`echo "$2 - 1" | bc`; n >= 0; n--)); do
-    if [ -d $1.$n ]; then
-      dest=`echo "$n + 1" | bc`
-      $nice $mv /$1.$n /$1.$dest
-      $touch /$1.$dest
-    fi
-  done
-
-  if [ -d $1.tmp ]; then
-    $nice $mv /$1.tmp /$1.0
-  fi
-
-  if [ -d $1.1 ]; then
-    $nice $cp -alf /$1.1/. /$1.0
-  fi
+   if [[ "$2" < 4 ]]; then
+      error "Rotate: minimum of 4 rotations"
+      exit 1
+   fi
+
+   if [ -d $1.$2 ]; then
+      $nice $mv /$1.$2 /$1.tmp
+   fi
+
+   for ((n=`echo "$2 - 1" | bc`; n >= 0; n--)); do
+      if [ -d $1.$n ]; then
+         dest=`echo "$n + 1" | bc`
+         $nice $mv /$1.$n /$1.$dest
+         $touch /$1.$dest
+      fi
+   done
+
+   if [ -d $1.tmp ]; then
+      $nice $mv /$1.tmp /$1.0
+   fi
+
+   if [ -d $1.1 ]; then
+      $nice $cp -alf /$1.1/. /$1.0
+   fi
 
 }
 
 function move_files {
 
- ref=$tmp/makesnapshot-mymv-$$;
- $touch -r $1 $ref;
- $mv $1 $2;
- $touch -r $ref $2;
- $rm $ref;
  ref=$tmp/makesnapshot-mymv-$$;
  $touch -r $1 $ref;
  $mv $1 $2;
  $touch -r $ref $2;
  $rm $ref;
 
 }
 
@@ -143,54 +143,54 @@ backupdir="$mountpoint/$backupdir"
 
 # does $backupdir exists?
 
-if [ ! -d "$backupdir" ]; then 
-  error "Backupdir $backupdir does not exist"
-  exit 1
+if [ ! -d "$backupdir" ]; then
+   error "Backupdir $backupdir does not exist"
+   exit 1
 fi
 
 # setup number of increments
 
 if [ -z "$days" ]; then
-  keep="4"
+   keep="4"
 else
-  keep="`echo $days - 1 | bc -l`"
+   keep="`echo $days - 1 | bc -l`"
 fi
 
 # lockfile setup
 
 if [ ! -z "$lockfile" ]; then
-  $touch $lockfile || warning "Could not create lockfile $lockfile"
+   $touch $lockfile || warning "Could not create lockfile $lockfile"
 fi
 
 # nicelevel setup
 
-if [ ! -z "$nicelevel" ]; then 
-  nice="nice -n $nicelevel"
-else 
-  nice=""
+if [ ! -z "$nicelevel" ]; then
+   nice="nice -n $nicelevel"
+else
+   nice=""
 fi
 
 # connection test
 
 if [ "$from" == "remote" ] && [ "$testconnect" == "yes" ]; then
-  debug "$ssh -o PasswordAuthentication=no $user@$host 'echo -n 1'"
-  result=`ssh -o PasswordAuthentication=no $user@$host 'echo -n 1'`
-  if [ "$result" != "1" ]; then
-    fatal "Can't connect to $host as $user."
-  else
-    debug "Connected to $srchost successfully"
-  fi
+   debug "$ssh -o PasswordAuthentication=no $user@$host 'echo -n 1'"
+   result=`ssh -o PasswordAuthentication=no $user@$host 'echo -n 1'`
+   if [ "$result" != "1" ]; then
+      fatal "Can't connect to $host as $user."
+   else
+      debug "Connected to $srchost successfully"
+   fi
 fi
 
 # rsync options for local sources
 
 if [ "$from" == "local" ]; then
 
-  rsync_local_options="$rsync_options"
+   rsync_local_options="$rsync_options"
 
-  if [ ! -z "$numericids" ]; then
-    rsync_local_options="$rsync_local_options --numeric-ids "
-  fi
+   if [ ! -z "$numericids" ]; then
+      rsync_local_options="$rsync_local_options --numeric-ids "
+   fi
 
 fi
 
@@ -198,41 +198,41 @@ fi
 
 if [ "$from" == "remote" ]; then
 
-  rsync_remote_options="$rsync_options --rsync-path=$remote_rsync"
+   rsync_remote_options="$rsync_options --rsync-path=$remote_rsync"
 
-  if [ "$compress" == "1" ]; then
-    rsync_remote_options="$rsync_remote_options --compress"
-  fi
+   if [ "$compress" == "1" ]; then
+      rsync_remote_options="$rsync_remote_options --compress"
+   fi
 
-  if [ ! -z "$bandwidthlimit" ]; then
-    rsync_remote_options="$rsync_remote_options --bwlimit=$bandwidthlimit"
-  fi
+   if [ ! -z "$bandwidthlimit" ]; then
+      rsync_remote_options="$rsync_remote_options --bwlimit=$bandwidthlimit"
+   fi
 
-  if [ ! -z "$numericids" ]; then
-    rsync_remote_options="$rsync_remote_options --numeric-ids"
-  fi
+   if [ ! -z "$numericids" ]; then
+      rsync_remote_options="$rsync_remote_options --numeric-ids"
+   fi
 
 fi
 
 # set mv procedure
 
 if [ $enable_mv_timestamp_bug == "yes" ]; then
-  mv=move_files
+   mv=move_files
 fi
 
 # set excludes
 
 for path in $exclude; do
-  EXCLUDES="$EXCLUDES --exclude=$path"
+   EXCLUDES="$EXCLUDES --exclude=$path"
 done
 
 # stop services
 
 if [ ! -z "$service" ]; then
-  for daemon in $service; do
-    info "Stopping service $daemon..."
-    $initscripts/$daemon stop
-  done
+   for daemon in $service; do
+      info "Stopping service $daemon..."
+      $initscripts/$daemon stop
+   done
 fi
 
 echo "Starting backup at `date`" >> $log
@@ -240,110 +240,110 @@ echo "Starting backup at `date`" >> $log
 # mount backup destination folder as read-write
 
 if [ "$read_only" == "1" ] || [ "$read_only" == "yes" ]; then
-  if [ -d "$mountpoint" ]; then
-    mount -o remount,rw $mountpoint
-    if (($?)); then
-      error "Could not mount $mountpoint"
-      exit 1
-    fi
-  fi
+   if [ -d "$mountpoint" ]; then
+      mount -o remount,rw $mountpoint
+      if (($?)); then
+         error "Could not mount $mountpoint"
+         exit 1
+      fi
+   fi
 fi
 
 # add vservers to included folders
 
 if [ "$vservers_are_available" == "yes" ]; then
 
-  # sane permission on backup
-  mkdir -p $backupdir/$VROOTDIR
-  chmod 000 $backupdir/$VROOTDIR
-
-  for candidate in $found_vservers; do
-    candidate="`basename $candidate`"
-    found_excluded_vserver="0"
-    for excluded_vserver in $exclude_vserver; do
-      if [ "$excluded_vserver" == "$candidate" ]; then
-        found_excluded_vserver="1"
-        break
+   # sane permission on backup
+   mkdir -p $backupdir/$VROOTDIR
+   chmod 000 $backupdir/$VROOTDIR
+
+   for candidate in $found_vservers; do
+      candidate="`basename $candidate`"
+      found_excluded_vserver="0"
+      for excluded_vserver in $exclude_vserver; do
+         if [ "$excluded_vserver" == "$candidate" ]; then
+            found_excluded_vserver="1"
+            break
+         fi
+      done
+      if [ "$found_excluded_vserver" == "0" ]; then
+         include="$include $VROOTDIR/$candidate"
       fi
-    done
-    if [ "$found_excluded_vserver" == "0" ]; then
-      include="$include $VROOTDIR/$candidate"
-    fi
-  done
+   done
 fi
 
 # the backup procedure
 
 for SECTION in $include; do
 
-  section="`basename $SECTION`"
-
-  if [ ! -d "$backupdir/$SECTION/$section.0" ]; then
-    mkdir -p $backupdir/$SECTION/$section.0
-  fi
-  info "Rotating $backupdir/$SECTION/$section..."
-  echo "Rotating $backupdir/$SECTION/$section..." >> $log
-  rotate $backupdir/$SECTION/$section $keep
-  info "Syncing $SECTION on $backupdir/$SECTION/$section.0..."
-
-  if [ "$from" == "local" ]; then
-    debug $rsync $rsync_local_options $EXCLUDES /$SECTION/ $backupdir/$SECTION/$section.0/ 
-    $nice $rsync $rsync_local_options $EXCLUDES /$SECTION/ $backupdir/$SECTION/$section.0/ >> $log
-    if [ "$?" != "0" ]; then
-      warning "Rsync error when trying to transfer $SECTION"
-    fi
-  elif [ "$from" == "remote" ]; then
-    if [ -z "$user" ] || [ -z "$host" ]; then
-      error "Config file error: either user or host was not specified"
-      exit 1
-    else
-      debug $nice $rsync $rsync_remote_options $EXCLUDES -e "$ssh" $user@$host:/$SECTION/ $backupdir/$SECTION/$section.0
-      $nice $rsync $rsync_remote_options $EXCLUDES -e "$ssh" $user@$host:/$SECTION/ $backupdir/$SECTION/$section.0 >> $log
+   section="`basename $SECTION`"
+
+   if [ ! -d "$backupdir/$SECTION/$section.0" ]; then
+      mkdir -p $backupdir/$SECTION/$section.0
+   fi
+
+   info "Rotating $backupdir/$SECTION/$section..."
+   echo "Rotating $backupdir/$SECTION/$section..." >> $log
+   rotate $backupdir/$SECTION/$section $keep
+   info "Syncing $SECTION on $backupdir/$SECTION/$section.0..."
+
+   if [ "$from" == "local" ]; then
+      debug $rsync $rsync_local_options $EXCLUDES /$SECTION/ $backupdir/$SECTION/$section.0/
+      $nice $rsync $rsync_local_options $EXCLUDES /$SECTION/ $backupdir/$SECTION/$section.0/ >> $log
       if [ "$?" != "0" ]; then
-        warning "Rsync error when trying to transfer $SECTION"
+         warning "Rsync error when trying to transfer $SECTION"
+      fi
+   elif [ "$from" == "remote" ]; then
+      if [ -z "$user" ] || [ -z "$host" ]; then
+         error "Config file error: either user or host was not specified"
+         exit 1
+      else
+         debug $nice $rsync $rsync_remote_options $EXCLUDES -e "$ssh" $user@$host:/$SECTION/ $backupdir/$SECTION/$section.0
+         $nice $rsync $rsync_remote_options $EXCLUDES -e "$ssh" $user@$host:/$SECTION/ $backupdir/$SECTION/$section.0 >> $log
+         if [ "$?" != "0" ]; then
+            warning "Rsync error when trying to transfer $SECTION"
+            fi
       fi
-    fi
-  else
-    error "Invalid source $from"
-    exit 1
-  fi
+   else
+      error "Invalid source $from"
+      exit 1
+   fi
 
-  $touch $backupdir/$SECTION/$section.0
+   $touch $backupdir/$SECTION/$section.0
 
 done
 
 # remount backup destination as read-only
 
 if [ "$read_only" == "1" ] || [ "$read_only" == "yes" ]; then
-  mount -o remount,ro $mountpoint
+   mount -o remount,ro $mountpoint
 fi
 
 # check partition for errors
 
 if [ "$fscheck" == "1" ] || [ "$fscheck" == "yes" ]; then
-  umount $mountpoint
-  if (($?)); then
-    warning "Could not umount $mountpoint to run fsck"
-  else
-    $nice $fsck -v -y $partition >> $log
-    mount $mountpoint
-  fi
+   umount $mountpoint
+   if (($?)); then
+      warning "Could not umount $mountpoint to run fsck"
+   else
+      $nice $fsck -v -y $partition >> $log
+      mount $mountpoint
+   fi
 fi
 
 # restart services
 
 if [ ! -z "$service" ]; then
-  for daemon in $service; do
-    info "Starting service $daemon..."
-    $initscripts/$daemon start
-  done
+   for daemon in $service; do
+      info "Starting service $daemon..."
+      $initscripts/$daemon start
+   done
 fi
 
 # removes the lockfile
 
 if [ ! -z "$lockfile" ]; then
-  $rm $lockfile || warning "Could not remove lockfile $lockfile"
+   $rm $lockfile || warning "Could not remove lockfile $lockfile"
 fi
 
 echo "Finnishing backup at `date`" >> $log
index f9f19260f95cff5fe776945e28215a47a9a52d7d..4edfd9af69a618821ba3ea5ebf1586e24a27f49e 100644 (file)
@@ -2,6 +2,6 @@
 #
 # shell script handler for backupninja
 # runs the file /etc/backup.d/scriptname.sh
-# 
+#
 
 [ $test ] || ( . $1 )
index d19b0b8c403b785cc595e4134011b5d1deccc973..97d1701f550ff23516f7f008e96ca0afb0d18a02 100644 (file)
@@ -7,7 +7,7 @@ getconf src /var/lib/svn
 getconf dest /var/backups/svn
 getconf tmp /var/backups/svn.tmp
 getconf HOTBACKUP "/usr/bin/svnadmin hotcopy"
-getconf vsname 
+getconf vsname
 
 error=0
 
@@ -35,43 +35,43 @@ fi
 cd $vroot$src
 for repo in `find . -name svnserve.conf`
 do
-    repo=`dirname $repo`
-    repo=`dirname $repo`
+   repo=`dirname $repo`
+   repo=`dirname $repo`
 
-    ret=`mkdir -p $vroot$tmp/$repo 2>&1`
-    code=$?
-    if [ "$ret" ]; then
-       debug "$ret"
-    fi
-    if [ $code != 0 ]; then   
-       error "command failed mkdir -p $vroot$tmp/$repo"
-    fi
+   ret=`mkdir -p $vroot$tmp/$repo 2>&1`
+   code=$?
+   if [ "$ret" ]; then
+      debug "$ret"
+   fi
+   if [ $code != 0 ]; then
+      error "command failed mkdir -p $vroot$tmp/$repo"
+   fi
 
-    if [ $usevserver = yes ]
-    then
-       ret=`$VSERVER $vsname exec $HOTBACKUP $src/$repo $tmp/$repo 2>&1`
-    else
-       ret=`$HOTBACKUP $src/$repo $tmp/$repo 2>&1`
-    fi
-    code=$?
-    if [ "$ret" ]; then
-       debug "$ret"
-    fi
-    if [ $code != 0 ]; then
-       error "command failed -- $HOTBACKUP $vroot$src/$repo $vroot$tmp/$repo"
-       error=1
-    fi
+   if [ $usevserver = yes ]
+   then
+      ret=`$VSERVER $vsname exec $HOTBACKUP $src/$repo $tmp/$repo 2>&1`
+   else
+      ret=`$HOTBACKUP $src/$repo $tmp/$repo 2>&1`
+   fi
+   code=$?
+   if [ "$ret" ]; then
+      debug "$ret"
+   fi
+   if [ $code != 0 ]; then
+      error "command failed -- $HOTBACKUP $vroot$src/$repo $vroot$tmp/$repo"
+      error=1
+   fi
 done
 
 if [ $error -eq 1 ]; then
-    echo "Error: because of earlier errors, we are leaving svn backups in $vroot$tmp instead of $vroot$dest"
+   echo "Error: because of earlier errors, we are leaving svn backups in $vroot$tmp instead of $vroot$dest"
 else
-    if [ -d $vroot$dest -a -d $vroot$tmp ]; then
-        rm -rf $vroot$dest
-    fi
-    if [ -d $vroot$tmp ]; then
-        mv $vroot$tmp $vroot$dest
-    fi
+   if [ -d $vroot$dest -a -d $vroot$tmp ]; then
+      rm -rf $vroot$dest
+   fi
+   if [ -d $vroot$tmp ]; then
+      mv $vroot$tmp $vroot$dest
+   fi
 fi
 
 exit 0
index c5892a9b037cb930eb02b907d622bc6342fc8b02..c823712390c7d1d8ea6bfd7f37bf370a9f262f73 100644 (file)
@@ -5,13 +5,13 @@ HELPERS="$HELPERS sys:general_hardware_and_system_info"
 sys_wizard() {
    require_packages hwinfo debconf-utils
    checkBox "new sys action" "check options" \
-       "packages" "list of all installed packages." on \
-       "partitions" "the partition table of all disks." on  \
-       "sfdisk" "use sfdisk to get partition information." on \
-       "hardware" "detailed hardware information" on \
-       "luksheaders" "Luks headers of all Luks partitions." off \
-       "lvm" "LVM metadata for all volume groups." off
-   [ $? = 1 ] && return;    
+      "packages" "list of all installed packages." on \
+      "partitions" "the partition table of all disks." on  \
+      "sfdisk" "use sfdisk to get partition information." on \
+      "hardware" "detailed hardware information" on \
+      "luksheaders" "Luks headers of all Luks partitions." off \
+      "lvm" "LVM metadata for all volume groups." off
+   [ $? = 1 ] && return;
    result="$REPLY"
    packages="packages = no"
    partitions="partitions = no"
@@ -21,12 +21,12 @@ sys_wizard() {
    lvm="lvm = no"
    for opt in $result; do
       case $opt in
-        '"packages"') packages="packages = yes";;
-        '"partitions"') partitions="partitions = yes";;
-        '"sfdisk"') sfdisk="dosfdisk = yes";;
-        '"hardware"') hardware="hardware = yes";;
-        '"luksheaders"') luksheaders="luksheaders = yes";;
-        '"lvm"') lvm="lvm = yes";;
+         '"packages"') packages="packages = yes";;
+         '"partitions"') partitions="partitions = yes";;
+         '"sfdisk"') sfdisk="dosfdisk = yes";;
+         '"hardware"') hardware="hardware = yes";;
+         '"luksheaders"') luksheaders="luksheaders = yes";;
+         '"lvm"') lvm="lvm = yes";;
       esac
    done
    get_next_filename $configdirectory/10.sys
index e6cb273a86cbe6cd03e2b0c100d7fd8292f5365b..2ab58710aa2d5eb2cc54054e13369f137ee85ebe 100755 (executable)
 # (2) a list of all the packages installed and removed.
 #     this file can be used to restore the state of installed packages
 #     by running "dpkg --set-selections < dpkg-selections.txt and
-#     then run "apt-get -u dselect-upgrade". If you have the 
+#     then run "apt-get -u dselect-upgrade". If you have the
 #     debconf-set-selections file from (1), you should restore those first.
-# 
-# (3) the partition table of all disks. 
+#
+# (3) the partition table of all disks.
 #     this partition table can be used to format another disk of
-#     the same size. this can be handy if using software raid and 
+#     the same size. this can be handy if using software raid and
 #     you have a disk go bad. just replace the disk and partition it
 #     by running "sfdisk /dev/sdb < partitions.sdb.txt"
 #     (MAKE SURE YOU PARTITION THE CORRECT DISK!!!)
 #
-# (4) hardware information. 
+# (4) hardware information.
 #     write to a text file the important things which hwinfo can gleen.
 #
 # (5) the Luks header of every Luks block device, if option luksheaders
@@ -55,7 +55,7 @@ getconf dohwinfo yes
 if [ ! -d $parentdir ]; then
    mkdir -p $parentdir
 fi
-   
+
 if [ $os = "debian" ]
 then
    getconf packagesfile $parentdir/dpkg-selections.txt
@@ -65,9 +65,9 @@ then
    getconf debconfgetselections `which debconf-get-selections`
 elif [ $os = "redhat" ]
 then
-   getconf packagesfile  $parentdir/rpmpackages.txt 
-   getconf packagemgr  `which rpm`
-   getconf packagemgroptions   ' -qa '
+   getconf packagesfile  $parentdir/rpmpackages.txt
+   getconf packagemgr   `which rpm`
+   getconf packagemgroptions   ' -qa '
 
    getconf SYSREPORT `which sysreport`
    getconf sysreport_options ' -norpm '
@@ -163,7 +163,7 @@ if [ "$packages" == "yes" ]; then
             # don't expand * since it can be used in $packagemgroptions
             set -o noglob
             debug "$VSERVER $vserver exec $packagemgr $packagemgroptions > $VROOTDIR/$vserver$packagesfile"
-           $VSERVER $vserver exec $packagemgr $packagemgroptions > $VROOTDIR/$vserver$packagesfile || fatal "can not save $packagemgr info to $packagesfile"
+       $VSERVER $vserver exec $packagemgr $packagemgroptions > $VROOTDIR/$vserver$packagesfile || fatal "can not save $packagemgr info to $packagesfile"
             set +o noglob
          fi
          # is $debconfgetselections available inside $vserver ?
@@ -184,9 +184,9 @@ if [ "$packages" == "yes" ]; then
          unset found
       done
    fi
-   
+
    # We want to perform this on the host as well
-   if [ -z "$packagemgr" -o ! -x "$packagemgr" ]; then 
+   if [ -z "$packagemgr" -o ! -x "$packagemgr" ]; then
       warning "can't find ${packagemgr}, skipping installed packages report."
    else
       # don't expand * since it can be used in $packagemgroptions
@@ -235,7 +235,7 @@ catiffile () {
       done
    fi
    echo $DASHES >> $sysreportfile
-} 
+}
 
 catifexec () {
    if [ -x $1 ]; then
@@ -245,12 +245,12 @@ catifexec () {
       $*  >> $sysreportfile 2>&1 || info "executing of $1 failed"
    fi
 }
-   
+
 
 STATUS="Determining $os version:"
 catiffile $osversion
 
-STATUS="Determinding your current hostname: " 
+STATUS="Determinding your current hostname: "
 catifexec "/bin/hostname"
 
 STATUS="Getting the date:"
@@ -272,17 +272,17 @@ if [ $os = "redhat" ]; then
    catiffile "/bin/ls /etc/rc.d/rc*.d/"
 
 elif [ $os = "debian" ]; then
-    for level in 0 1 2 3 4 5 6 S; do
-       echo "Level: $level" >> $sysreportfile
-       for f in /etc/rc${level}.d/*; do
-       # Remove /etc/Knn or Snn from beginning
-          ff=$(echo $f | @SED@ 's_/etc/rc..d/[KS][0-9][0-9]__')
-          if [ $f != $ff ]; then
-             echo $ff >> $sysreportfile
-          fi
-       done
-       echo "" >> $sysreportfile
-    done
+   for level in 0 1 2 3 4 5 6 S; do
+      echo "Level: $level" >> $sysreportfile
+      for f in /etc/rc${level}.d/*; do
+         # Remove /etc/Knn or Snn from beginning
+         ff=$(echo $f | @SED@ 's_/etc/rc..d/[KS][0-9][0-9]__')
+         if [ $f != $ff ]; then
+            echo $ff >> $sysreportfile
+         fi
+      done
+      echo "" >> $sysreportfile
+   done
 fi
 
 STATUS="Getting bootloader information:"
@@ -291,34 +291,34 @@ catifexec "/bin/ls" "-alR /boot"
 # This covers sparc, alpha, and intel (respectively)
 # updated for grub -mpg
 if [ -f /etc/silo.conf ]; then
-  STATUS="Collecting information about the boot process (silo):"
-  catiffile "/etc/silo.conf"
+   STATUS="Collecting information about the boot process (silo):"
+   catiffile "/etc/silo.conf"
 fi
 if [ -f /etc/milo.conf ]; then
-  STATUS="Collecting information about the boot process (milo):"
-  catiffile "/etc/milo.conf"
+   STATUS="Collecting information about the boot process (milo):"
+   catiffile "/etc/milo.conf"
 fi
 if [ -f /etc/lilo.conf ]; then
-  STATUS="Collecting information about the boot process (lilo):"
-  catiffile "/etc/lilo.conf"
-  catifexec "/sbin/lilo" "-q"
+   STATUS="Collecting information about the boot process (lilo):"
+   catiffile "/etc/lilo.conf"
+   catifexec "/sbin/lilo" "-q"
 fi
 if [ -d /boot/grub -a -f /boot/grub/grub.conf -a -f /boot/grub/device.map ]; then
-  STATUS="Collecting information about the boot process (grub.conf):"
-  catiffile "/boot/grub/grub.conf"
-  STATUS="Collecting information about the boot process (grub.map):"
-  catiffile "/boot/grub/device.map"
+   STATUS="Collecting information about the boot process (grub.conf):"
+   catiffile "/boot/grub/grub.conf"
+   STATUS="Collecting information about the boot process (grub.map):"
+   catiffile "/boot/grub/device.map"
 fi
 if [ -f /etc/cluster.conf -o -f /etc/cluster.xml ] ; then
-  STATUS="Gathering information on cluster setup"
-  # 2.1 AS
-  if [ -f /etc/cluster.conf ] ; then
-    catiffile "/etc/cluster.conf"
-  fi
-  # Taroon
-  if [ -f /etc/cluster.xml ] ; then
-    catiffile "/etc/cluster.xml"
-  fi
+   STATUS="Gathering information on cluster setup"
+   # 2.1 AS
+   if [ -f /etc/cluster.conf ] ; then
+      catiffile "/etc/cluster.conf"
+   fi
+   # Taroon
+   if [ -f /etc/cluster.xml ] ; then
+      catiffile "/etc/cluster.xml"
+   fi
 fi
 
 STATUS="Gathering sysctl information (sysctl -a):"
@@ -349,10 +349,10 @@ STATUS="Getting kernel version:"
 catifexec "/bin/uname" "-a"
 STATUS="Checking module information:"
 catifexec "/sbin/lsmod"
-for x  in $(/sbin/lsmod | /bin/cut -f1 -d" " 2>/dev/null | /bin/grep -v Module 2>/dev/null 
+for x  in $(/sbin/lsmod | /bin/cut -f1 -d" " 2>/dev/null | /bin/grep -v Module 2>/dev/null
 ) ; do
-  STATUS="Checking module information $x:"
-  catifexec "/sbin/modinfo" "$x"
+   STATUS="Checking module information $x:"
+   catifexec "/sbin/modinfo" "$x"
 done
 
 STATUS="Gathering information about your filesystems:"
@@ -375,27 +375,27 @@ STATUS="Collecting information regarding kernel modules"
 VER=`uname -r`
 catiffile "/lib/modules/$VER/modules.dep"
 if [ -f /etc/conf.modules ]; then
-  STATUS="Collecting information regarding kernel modules (conf.modules)"
-  catiffile "/etc/conf.modules"
+   STATUS="Collecting information regarding kernel modules (conf.modules)"
+   catiffile "/etc/conf.modules"
 fi
 if [ -f /etc/modules.conf ]; then
-  STATUS="Collecting information regarding kernel modules (modules.conf)"
-  catiffile "/etc/modules.conf"
+   STATUS="Collecting information regarding kernel modules (modules.conf)"
+   catiffile "/etc/modules.conf"
 fi
 if [ -f /etc/modprobe.conf ]; then
-  STATUS="Collecting information regarding kernel modules (modeprobe.conf)"
-  catiffile "/etc/modprobe.conf"
+   STATUS="Collecting information regarding kernel modules (modeprobe.conf)"
+   catiffile "/etc/modprobe.conf"
 fi
 
 # dkms status
 if [ -x /usr/sbin/dkms ] ; then
    STATUS="Gathering current status of modules, versions and kernels (dkms):"
-  catifexec "/usr/sbin/dkms" "status"
+   catifexec "/usr/sbin/dkms" "status"
 fi
 
 if [ -f /etc/sysconfig/isdncard ] ; then
-  STATUS="Gathering information about ISDN:"
-  catiffile "/etc/sysconfig/isdncard"
+   STATUS="Gathering information about ISDN:"
+   catiffile "/etc/sysconfig/isdncard"
 fi
 
 STATUS="Collecting information from the proc directory:"
@@ -481,18 +481,18 @@ fi
 
 STATUS="Collecting device-mapper (dm) information:"
 catifexec '/sbin/dmsetup' 'info'
-   
+
 STATUS="Collecting SCSI Tape information (/etc/stinit.def)"
 catiffile "/etc/stinit.def"
 
 if [ -x /sbin/lsusb ] ; then
-  STATUS="Collecting USB devices list (lsusb):"
-  catifexec "/sbin/lsusb"
+   STATUS="Collecting USB devices list (lsusb):"
+   catifexec "/sbin/lsusb"
 fi
 
 if [ -x /usr/bin/lshal ] ; then
-  STATUS="Collecting global devices list (lshal):"
-  catifexec "/usr/bin/lshal"
+   STATUS="Collecting global devices list (lshal):"
+   catifexec "/usr/bin/lshal"
 fi
 
 
@@ -511,24 +511,24 @@ fi
 
 if [ "$partitions" == "yes" ]; then
    if [ "$dosfdisk" == "yes" ]; then
-       if [ ! -x "$SFDISK" ]; then
-               warning "can't find sfdisk, skipping sfdisk report."
-               partitions="no"
-       fi
+      if [ ! -x "$SFDISK" ]; then
+    warning "can't find sfdisk, skipping sfdisk report."
+    partitions="no"
+      fi
    fi
    if [ "$dohwinfo" == "yes" ]; then
-       if [ ! -x "$HWINFO" ]; then
-               warning "can't find hwinfo, skipping partition report."
-               partitions="no"
-       fi
+      if [ ! -x "$HWINFO" ]; then
+    warning "can't find hwinfo, skipping partition report."
+    partitions="no"
+      fi
    fi
 fi
 
 if [ "$hardware" == "yes" ]; then
-       if [ ! -x "$HWINFO" ]; then
-               warning "can't find hwinfo, skipping hardware report."
-               hardware="no"
-       fi
+   if [ ! -x "$HWINFO" ]; then
+      warning "can't find hwinfo, skipping hardware report."
+      hardware="no"
+   fi
 fi
 
 ## HARDWARE #############################
@@ -536,47 +536,47 @@ fi
 #
 # here we use hwinfo to dump a table listing all the
 # information we can find on the hardware of this machine
-# 
+#
 
 if [ "$hardware" == "yes" ]; then
    if [ "dohwinfo" == "yes" ]; then
       if [ -f $hardwarefile ]; then
-        rm $hardwarefile
+    rm $hardwarefile
       fi
       touch $hardwarefile
       echo -e "\n\n====================== summary ======================\n" >>  $hardwarefile
       debug "$HWINFO --short --cpu --network --disk --pci  >> $hardwarefile"
       $HWINFO --short --cpu --network --disk --pci  >> $hardwarefile
       for flag in cpu network bios pci; do
-        echo -e "\n\n====================== $flag ======================\n" >>  $hardwarefile
-        $HWINFO --$flag >> $hardwarefile
+    echo -e "\n\n====================== $flag ======================\n" >>  $hardwarefile
+    $HWINFO --$flag >> $hardwarefile
       done
    fi
 fi
 
 ## PARTITIONS #############################
 
-# here we use sfdisk to dump a listing of all the partitions. 
+# here we use sfdisk to dump a listing of all the partitions.
 # these files can be used to directly partition a disk of the same size.
 
 if [ "$partitions" == "yes" ]; then
    if [ "$dosfdisk" == "yes" ]; then
       devices=`LC_ALL=C $SFDISK -l 2>/dev/null | grep "^Disk /dev" | @AWK@ '{print $2}' | cut -d: -f1`
-       if [ "$devices" == "" ]; then 
-          warning "No harddisks found" 
-       fi
-       for dev in $devices; do
-                debug "$SFDISK will try to backup partition tables for device $dev"
-               [ -b $dev ] || continue
-               label=${dev#/dev/}
-               label=${label//\//-}
-               outputfile=${partitionsfile//__star__/$label}
-               debug "$SFDISK $sfdisk_options -d $dev > $outputfile 2>/dev/null"
-               $SFDISK $sfdisk_options -d $dev > $outputfile 2>/dev/null
-                if [ $? -ne 0 ]; then
-                   warning "The partition table for $dev could not be saved."
-                fi
-       done
+   if [ "$devices" == "" ]; then
+      warning "No harddisks found"
+   fi
+   for dev in $devices; do
+      debug "$SFDISK will try to backup partition tables for device $dev"
+      [ -b $dev ] || continue
+      label=${dev#/dev/}
+      label=${label//\//-}
+      outputfile=${partitionsfile//__star__/$label}
+      debug "$SFDISK $sfdisk_options -d $dev > $outputfile 2>/dev/null"
+      $SFDISK $sfdisk_options -d $dev > $outputfile 2>/dev/null
+      if [ $? -ne 0 ]; then
+         warning "The partition table for $dev could not be saved."
+      fi
+   done
    fi
    if [ "$dohwinfo" == "yes" ]; then
       debug "Using $HWINFO to get all available disk information"
@@ -639,8 +639,8 @@ function doLvmBackup () {
       fi
    fi
    if [ ! -w "$lvmdir" ]; then
-         echo "can not write to directory $lvmdir"
-         return 2
+      echo "can not write to directory $lvmdir"
+      return 2
    fi
    debug "Let's try to gather the list of LVM volume groups"
    debug "$VGS --options vg_name --noheadings | @SED@ 's/^[ ]*//' | @SED@ 's/[ ]*$//' | tr '\n' ' '"
index cc9a89b6669b3ac2f787f5e0c6d02359abadeeb0..26653821378c3c4a201682b3b5d735169d82e43d 100644 (file)
@@ -14,7 +14,7 @@ tar_wizard() {
    inputBox "$tar_title" "\"Name\" of backups" "$backupname"
    [ $? = 1 ] && return
    tar_backupname="backupname = $REPLY"
-   backupname="$REPLY"   
+   backupname="$REPLY"
 
    inputBox "$tar_title" "Directory where to store the backups" "/net/backups/$backupname"
    [ $? = 1 ] && return
@@ -24,8 +24,8 @@ tar_wizard() {
        "none"     "do not filter trough" off \
        "compress" "filter trough compress" off \
        "gzip"     "filter trough gzip" off \
-       "bzip"     "filter trough bzip" on 
-   [ $? = 1 ] && return;    
+       "bzip"     "filter trough bzip" on
+   [ $? = 1 ] && return;
    result="$REPLY"
    tar_compress="compress = $REPLY "
 
@@ -47,14 +47,14 @@ tar_wizard() {
       [ $? = 0 ] || return 1
       tar_includes="includes = "
       for i in $REPLY; do
-        [ -n "$i" ] && tar_includes="$tar_includes $i"
+         [ -n "$i" ] && tar_includes="$tar_includes $i"
       done
    done
 
    REPLY=
    while [ -z "$REPLY" ]; do
       formBegin "$tar_title: Excludes"
-         formItem "Exclude:" /tmp 
+         formItem "Exclude:" /tmp
          formItem "Exclude:" /proc
          formItem "Exclude:" /sys
          formItem "Exclude:" /dev
@@ -63,17 +63,17 @@ tar_wizard() {
          formItem "Exclude:" /misc
          formItem "Exclude:" /net
          formItem "Exclude:" /selinux
-         formItem "Exclude:" 
+         formItem "Exclude:"
          formItem "Exclude:"
       formDisplay
       [ $? = 0 ] || return 1
       tar_excludes="excludes = "
       for i in $REPLY; do
-        [ -n "$i" ] && tar_excludes="$tar_excludes $i"
+         [ -n "$i" ] && tar_excludes="$tar_excludes $i"
       done
    done
 
-# Save the config 
+# Save the config
    get_next_filename $configdirectory/10.tar
    cat > $next_filename <<EOF
 $tar_when_run
@@ -85,8 +85,8 @@ $tar_excludes
 
 # tar binary - have to be GNU tar
 #TAR=/bin/tar
-#DATE          /bin/date
-#DATEFORMAT    "%Y.%m.%d-%H%M"
+#DATE           /bin/date
+#DATEFORMAT     "%Y.%m.%d-%H%M"
 
 EOF
    chmod 600 $next_filename
index 7f0d1471c7a5d8677d169fda490aca15f5b970e5..0a762cebcccbaab2174d7a822284d4583ecf5b08 100644 (file)
@@ -2,16 +2,16 @@
 #
 # tar handler script for backupninja
 
-getconf backupname     `hostname --fqdn`
-getconf backupdir      /var/backups/`hostname --fqdn`
-getconf compress       bzip
-getconf includes       "/etc /home /usr/local"
-getconf excludes       "/tmp /proc /dev /sys /net /misc /media /srv /selinux"
+getconf backupname      `hostname --fqdn`
+getconf backupdir       /var/backups/`hostname --fqdn`
+getconf compress        bzip
+getconf includes        "/etc /home /usr/local"
+getconf excludes        "/tmp /proc /dev /sys /net /misc /media /srv /selinux"
 
-getconf TAR            `which tar`
-getconf EXTENSION      tar
-getconf DATE           `which date`
-getconf DATEFORMAT     "%Y.%m.%d-%H%M"         
+getconf TAR             `which tar`
+getconf EXTENSION       tar
+getconf DATE            `which date`
+getconf DATEFORMAT      "%Y.%m.%d-%H%M"
 
 # See if vservers are configured
 if [ "$vservers" = "yes" ]
@@ -65,7 +65,7 @@ done
 
 debug "Running backup: " $TAR -c -p -v $compress_option $exclude_options \
    -f "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`".$EXTENSION" \
-   $includes 
+   $includes
 
 $TAR -c -p -v $compress_option $exclude_options \
    -f "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`".$EXTENSION" \
@@ -73,7 +73,7 @@ $TAR -c -p -v $compress_option $exclude_options \
    > "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`.list \
    2> "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`.err
 
-[ $? -ne 0 ] && fatal "Tar backup failed" 
+[ $? -ne 0 ] && fatal "Tar backup failed"
 
 
 
index a4b7bdf72b79f800740bf4fffb8e2132615e37c0..f387d42db85f5eaa78b5f3c1ffc79777f5a6f9de 100644 (file)
@@ -12,39 +12,38 @@ getconf tmp /var/backups/trac.tmp
 cd $src
 for repo in `find . -name VERSION`
 do
-
-    repo=`dirname $repo`
-    if [ "$repo" == "." ]
-    then 
-       repo="" 
-    fi
-
-    # Just make the parent directory for $tmp/$repo
-    parentdir=`dirname $tmp/$repo`
-    ret=`mkdir -p $parentdir 2>&1`
-    code=$?
-    if [ "$ret" ]; then
-       debug "$ret"
-    fi
-    if [ $code != 0 ]; then
-       error "command failed mkdir -p $parentdir"
-    fi
-
-    ret=`trac-admin $src/$repo hotcopy $tmp/$repo 2>&1`
-    code=$?
-    if [ "$ret" ]; then
-       debug "$ret"
-    fi
-    if [ $code != 0 ]; then
-       error "command failed -- trac-admin $src/$repo hotcopy $tmp/$repo"
-    fi
+   repo=`dirname $repo`
+   if [ "$repo" == "." ]
+   then
+      repo=""
+   fi
+
+   # Just make the parent directory for $tmp/$repo
+   parentdir=`dirname $tmp/$repo`
+   ret=`mkdir -p $parentdir 2>&1`
+   code=$?
+   if [ "$ret" ]; then
+      debug "$ret"
+   fi
+   if [ $code != 0 ]; then
+      error "command failed mkdir -p $parentdir"
+   fi
+
+   ret=`trac-admin $src/$repo hotcopy $tmp/$repo 2>&1`
+   code=$?
+   if [ "$ret" ]; then
+      debug "$ret"
+   fi
+   if [ $code != 0 ]; then
+      error "command failed -- trac-admin $src/$repo hotcopy $tmp/$repo"
+   fi
 done
 
 if [ -d $dest -a -d $tmp ]; then
-     rm -rf $dest
+   rm -rf $dest
 fi
 if [ -d $tmp ]; then
-     mv $tmp $dest
+   mv $tmp $dest
 fi
 
 exit 0
index 51054eab829e642a14d5ec63686fad7aafcb1f40..0c363eb362bcb7c66af4f3cd9252cde242d1f70f 100644 (file)
@@ -77,84 +77,82 @@ getconf folder
 
 function rotate {
 
-  if [[ "$2" < 4 ]]; then
-    error "Rotate: minimum of 4 rotations"
-    exit 1
-  fi
-
-  if [ -d $1.$2 ]; then
-    $nice $mv /$1.$2 /$1.tmp
-  fi
-
-  for ((n=`echo "$2 - 1" | bc`; n >= 0; n--)); do
-    if [ -d $1.$n ]; then
-      dest=`echo "$n + 1" | bc`
-      $nice $mv /$1.$n /$1.$dest
-      $touch /$1.$dest
-    fi
-  done
-
-  if [ -d $1.tmp ]; then
-    $nice $mv /$1.tmp /$1.0
-  fi
-
-  if [ -d $1.1 ]; then
-    $nice $cp -alf /$1.1/. /$1.0
-  fi
+   if [[ "$2" < 4 ]]; then
+      error "Rotate: minimum of 4 rotations"
+      exit 1
+   fi
 
-}
+   if [ -d $1.$2 ]; then
+      $nice $mv /$1.$2 /$1.tmp
+   fi
 
-function move_files {
+   for ((n=`echo "$2 - 1" | bc`; n >= 0; n--)); do
+      if [ -d $1.$n ]; then
+         dest=`echo "$n + 1" | bc`
+         $nice $mv /$1.$n /$1.$dest
+         $touch /$1.$dest
+      fi
+   done
 
- ref=$tmp/makesnapshot-mymv-$$;
- $touch -r $1 $ref;
- $mv $1 $2;
- $touch -r $ref $2;
- $rm $ref;
+   if [ -d $1.tmp ]; then
+      $nice $mv /$1.tmp /$1.0
+   fi
+
+   if [ -d $1.1 ]; then
+      $nice $cp -alf /$1.1/. /$1.0
+   fi
 
 }
 
+function move_files {
+   ref=$tmp/makesnapshot-mymv-$$;
+   $touch -r $1 $ref;
+   $mv $1 $2;
+   $touch -r $ref $2;
+   $rm $ref;
+}
+
 backupdir="$mountpoint/$backupdir"
 
 # does $backupdir exists?
 
-if [ ! -d "$backupdir" ]; then 
-  error "Backupdir $backupdir does not exist"
-  exit 1
+if [ ! -d "$backupdir" ]; then
+   error "Backupdir $backupdir does not exist"
+   exit 1
 fi
 
 # setup number of increments
 
 if [ -z "$days" ]; then
-  keep="4"
+   keep="4"
 else
-  keep="`echo $days - 1 | bc -l`"
+   keep="`echo $days - 1 | bc -l`"
 fi
 
 # lockfile setup
 
 if [ ! -z "$lockfile" ]; then
-  $touch $lockfile || warning "Could not create lockfile $lockfile"
+   $touch $lockfile || warning "Could not create lockfile $lockfile"
 fi
 
 # nicelevel setup
 
-if [ ! -z "$nicelevel" ]; then 
-  nice="nice -n $nicelevel"
-else 
-  nice=""
+if [ ! -z "$nicelevel" ]; then
+   nice="nice -n $nicelevel"
+else
+   nice=""
 fi
 
 # set mv procedure
 
 if [ $enable_mv_timestamp_bug == "yes" ]; then
-  mv=move_files
+   mv=move_files
 fi
 
 # set excludes
 
 for path in $exclude; do
-  EXCLUDES="$EXCLUDES --exclude=$path"
+   EXCLUDES="$EXCLUDES --exclude=$path"
 done
 
 echo "Starting backup at `date`" >> $log
@@ -162,19 +160,19 @@ echo "Starting backup at `date`" >> $log
 # mount backup destination folder as read-write
 
 if [ "$read_only" == "1" ] || [ "$read_only" == "yes" ]; then
-  if [ -d "$mountpoint" ]; then
-    mount -o remount,rw $mountpoint
-    if (($?)); then
-      error "Could not mount $mountpoint"
-      exit 1
-    fi
-  fi
+   if [ -d "$mountpoint" ]; then
+      mount -o remount,rw $mountpoint
+      if (($?)); then
+         error "Could not mount $mountpoint"
+         exit 1
+      fi
+   fi
 fi
 
 # the backup procedure
 
 if [ ! -d "$backupdir/$folder/$folder.0" ]; then
-  mkdir -p $backupdir/$folder/$folder.0
+   mkdir -p $backupdir/$folder/$folder.0
 fi
 
 info "Rotating $backupdir/$folder/$folder..."
@@ -183,7 +181,7 @@ rotate $backupdir/$folder/$folder $keep
 info "Wget'ing $SECTION on $backupdir/$folder/$folder.0..."
 
 if [ ! -z "$badnwidth" ]; then
-  limit_rate="--limit-rate=$badnwidth""k"
+   limit_rate="--limit-rate=$badnwidth""k"
 fi
 
 cd $backupdir/$folder/$folder.0
@@ -195,25 +193,25 @@ $touch $backupdir/$folder/$folder.0
 # remount backup destination as read-only
 
 if [ "$read_only" == "1" ] || [ "$read_only" == "yes" ]; then
-  mount -o remount,ro $mountpoint
+   mount -o remount,ro $mountpoint
 fi
 
 # check partition for errors
 
 if [ "$fscheck" == "1" ] || [ "$fscheck" == "yes" ]; then
-  umount $mountpoint
-  if (($?)); then
-    warning "Could not umount $mountpoint to run fsck"
-  else
-    $nice $fsck -v -y $partition >> $log
-    mount $mountpoint
-  fi
+   umount $mountpoint
+   if (($?)); then
+      warning "Could not umount $mountpoint to run fsck"
+   else
+      $nice $fsck -v -y $partition >> $log
+      mount $mountpoint
+   fi
 fi
 
 # removes the lockfile
 
 if [ ! -z "$lockfile" ]; then
-  $rm $lockfile || warning "Could not remove lockfile $lockfile"
+   $rm $lockfile || warning "Could not remove lockfile $lockfile"
 fi
 
 echo "Finnishing backup at `date`" >> $log
index 056c76cb35806014f065e8111f2db9efb741f161..a0495a7846499499f2f3899d9886116c534aa044 100644 (file)
@@ -20,43 +20,43 @@ DIALOG=dialog
 HELP=
 
 setApplicationTitle() {
-    BACKTITLE=$*
+   BACKTITLE=$*
 }
 
 setHelp() {
-    HELP="$@"
+   HELP="$@"
 }
 
 setDimension() {
-    WIDTH=$1
-    HEIGHT=$2
+   WIDTH=$1
+   HEIGHT=$2
 }
 
 booleanBox() {
-    $DIALOG --backtitle "$BACKTITLE" --title "$1" \
-        `[ "$3" == no ] && echo '--defaultno'` --yesno "$2" $HEIGHT $WIDTH
+   $DIALOG --backtitle "$BACKTITLE" --title "$1" \
+      `[ "$3" == no ] && echo '--defaultno'` --yesno "$2" $HEIGHT $WIDTH
 }
 
 msgBox() {
-    $DIALOG --backtitle "$BACKTITLE" --title "$1" \
-        --msgbox "$2" $HEIGHT $WIDTH
+   $DIALOG --backtitle "$BACKTITLE" --title "$1" \
+      --msgbox "$2" $HEIGHT $WIDTH
 }
 
 gaugeBox() {
-    $DIALOG --backtitle "$BACKTITLE" --title "$1" \
-        --gauge "$2" $HEIGHT $WIDTH 0
+   $DIALOG --backtitle "$BACKTITLE" --title "$1" \
+      --gauge "$2" $HEIGHT $WIDTH 0
 }
 
 inputBox() {
-    local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
-    trap "rm -f $temp" 0
-    REPLY=
-    $DIALOG --backtitle "$BACKTITLE" --title "$1" \
-        --inputbox "$2" $HEIGHT $WIDTH "$3" 2> $temp
-    local status=$?
-    [ $status = 0 ] && REPLY=$(cat $temp)
-    rm -f $temp
-    return $status
+   local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
+   trap "rm -f $temp" 0
+   REPLY=
+   $DIALOG --backtitle "$BACKTITLE" --title "$1" \
+      --inputbox "$2" $HEIGHT $WIDTH "$3" 2> $temp
+   local status=$?
+   [ $status = 0 ] && REPLY=$(cat $temp)
+   rm -f $temp
+   return $status
 }
 
 # Xdialog and {dialog,whiptail} use different mechanism to "qoute" the
@@ -67,7 +67,7 @@ inputBox() {
 # mechanism to the standard double-quoting one.  it receives two
 # arguements, the file that has the data and the box type.
 _listReplyHook() {
-    cat $1
+   cat $1
 }
 
 # this is the base implementation of all the list based boxes, it works
@@ -75,79 +75,79 @@ _listReplyHook() {
 # this function with an extra argument specifying the actual box that
 # needs to be rendered.
 _genericListBox() {
-    local box=$1
-    shift 1
-    local title=$1
-    local text=$2
-    shift 2
-    local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
-    trap "rm -f $temp" 0
-    REPLY=
-    $DIALOG $HELP $_DEFAULT --backtitle "$BACKTITLE" --title "$title" \
-        $box "$text" $HEIGHT $WIDTH 10 \
-       "$@" 2> $temp
-    local status=$?
-    [ $status = 0 ] && REPLY=$(_listReplyHook $temp $box)
-    rm -f $temp
-    _DEFAULT=
-    return $status
+   local box=$1
+   shift 1
+   local title=$1
+   local text=$2
+   shift 2
+   local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
+   trap "rm -f $temp" 0
+   REPLY=
+   $DIALOG $HELP $_DEFAULT --backtitle "$BACKTITLE" --title "$title" \
+      $box "$text" $HEIGHT $WIDTH 10 \
+      "$@" 2> $temp
+   local status=$?
+   [ $status = 0 ] && REPLY=$(_listReplyHook $temp $box)
+   rm -f $temp
+   _DEFAULT=
+   return $status
 }
 
 setDefault() {
-  _DEFAULT="--default-item $1"
+   _DEFAULT="--default-item $1"
 }
 
 menuBox() {
-    _genericListBox --menu "$@"
+   _genericListBox --menu "$@"
 }
 
 ## a menu box with additional help info displayed
 ## at the bottom of the window when an item is selected
 menuBoxHelp() {
-       HELP="--item-help"
-       _genericListBox --menu "$@"
-       status=$?
-       HELP=
-       return $status
+   HELP="--item-help"
+   _genericListBox --menu "$@"
+   status=$?
+   HELP=
+   return $status
 }
 
 ## a menu box with an addition button 'help'
 menuBoxHelpFile() {
-       HELP="--help-button"
-       _genericListBox --menu "$@"
-       status=$?
-       HELP=
-       return $status
+   HELP="--help-button"
+   _genericListBox --menu "$@"
+   status=$?
+   HELP=
+   return $status
 }
 
 checkBox() {
-    _genericListBox --checklist "$@"
+   _genericListBox --checklist "$@"
 }
 
 radioBox() {
-    _genericListBox --radiolist "$@"
+   _genericListBox --radiolist "$@"
 }
 
 textBox() {
-    $DIALOG --backtitle "$BACKTITLE" --title "$1" --textbox "$2" $HEIGHT $WIDTH
+   $DIALOG --backtitle "$BACKTITLE" --title "$1" --textbox "$2" $HEIGHT $WIDTH
 }
 
 passwordBox() {
-    local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
-    trap "rm -f $temp" 0
-    REPLY=
-    $DIALOG --backtitle "$BACKTITLE" --title "$1" \
-        --passwordbox "$2" $HEIGHT $WIDTH 2> $temp
-    local status=$?
-    [ $status = 0 ] && REPLY=$(cat $temp)
-    rm -f $temp
-    return $status
+   local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
+   trap "rm -f $temp" 0
+   REPLY=
+   $DIALOG --backtitle "$BACKTITLE" --title "$1" \
+      --passwordbox "$2" $HEIGHT $WIDTH 2> $temp
+   local status=$?
+   [ $status = 0 ] && REPLY=$(cat $temp)
+   rm -f $temp
+   return $status
 }
 
 
 #########################################################
 ## begin-item-display style lists
-## 
+##
 ## these lists are built by calling fuctions multiple times.
 ## this can make it easier to build your list in a loop
 ##
@@ -177,7 +177,7 @@ listDisplay() {
    boxtype=$1
    local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
    trap "rm -f $temp" 0
-   
+
    local label
    local text
    local status
@@ -188,13 +188,13 @@ listDisplay() {
       echo -ne " --$boxtype '$_menu_msg' "
       echo -ne " $HEIGHT $WIDTH 10 "
       for ((i=0; i < $_menu_items ; i++)); do
-        label=${_menu_labels[$i]}
-        text=${_menu_text[$i]}
-       status=${_menu_status[$i]}
-        echo -ne " $label '$text' $status "
+         label=${_menu_labels[$i]}
+         text=${_menu_text[$i]}
+         status=${_menu_status[$i]}
+         echo -ne " $label '$text' $status "
       done
    ) | xargs $DIALOG 2> $temp
-   
+
    local status=$?
    REPLY=""
    [ $status = 0 ] && REPLY=`cat $temp`
@@ -219,10 +219,10 @@ formItem() {
    _form_text[$_form_items]=$2
    let "_form_items += 1"
 }
-    
+
 formDisplay() {
    local temp=$(@MKTEMP@ -t backupninja.XXXXXX) || exit 1
-   
+
    max_length=0
    for ((i=0; i < ${#_form_labels[@]} ; i++)); do
       label=${_form_labels[$i]}
@@ -232,19 +232,19 @@ formDisplay() {
       fi
    done
    let "max_length += 2"
-    
+
    local xpos=1
    (
       echo -n -e "--form '$_form_title' 0 0 20"
       for ((i=0; i < $_form_items ; i++)); do
-        label=${_form_labels[$i]}
-        text=${_form_text[$i]}
-        echo -n -e " $label $xpos 1 '$text' $xpos $max_length 30 30"
-        let "xpos += _form_gap"
+         label=${_form_labels[$i]}
+         text=${_form_text[$i]}
+         echo -n -e " $label $xpos 1 '$text' $xpos $max_length 30 30"
+         let "xpos += _form_gap"
       done
    ) | xargs $DIALOG 2> $temp
    local status=$?
-   
+
    ##
    ## the exit status is meaningless, it is always 0.
    ## i can't figure out how to get the exit status of dialog
@@ -254,7 +254,7 @@ formDisplay() {
    ## swallowed by xargs. xargs should return different exit status
    ## depending on the exit status of the command run, but i have
    ## never been able to get that to work.
-   ## 
+   ##
 
    REPLY=
    if [ $status = 0 ]; then
index 0005be943c3e3b186c2eabe1a51179615c921acb..0d368b8938b0ca1399840fc153c163237cc8f51b 100644 (file)
 # create a temporary file in a secure way.
 #
 function maketemp() {
-       local tempfile=`mktemp /tmp/$1.XXXXXXXX`
-       echo $tempfile
+   local tempfile=`mktemp /tmp/$1.XXXXXXXX`
+   echo $tempfile
 }
 
 #####################################################
 ## CONFIG-FILE RELATED FUNCTIONS
 
 function setfile() {
-       CURRENT_CONF_FILE=$1
+   CURRENT_CONF_FILE=$1
 }
 
 function setsection() {
-       CURRENT_SECTION=$1
+   CURRENT_SECTION=$1
 }
 
 #
 # sets a global var with name equal to $1
 # to the value of the configuration parameter $1
 # $2 is the default.
-# 
+#
 function getconf() {
-       CURRENT_PARAM=$1
-       ret=`@AWK@ -f $libdirectory/parseini S=$CURRENT_SECTION P=$CURRENT_PARAM $CURRENT_CONF_FILE`
-       # if nothing is returned, set the default
-       if [ "$ret" == "" -a "$2" != "" ]; then
-               ret="$2"
-       fi
-
-       # replace * with %, so that it is not globbed.
-       ret="${ret//\\*/__star__}"
-
-       # this is weird, but single quotes are needed to 
-       # allow for returned values with spaces. $ret is still expanded
-       # because it is in an 'eval' statement.
-       eval $1='$ret'
+   CURRENT_PARAM=$1
+   ret=`@AWK@ -f $libdirectory/parseini S=$CURRENT_SECTION P=$CURRENT_PARAM $CURRENT_CONF_FILE`
+   # if nothing is returned, set the default
+   if [ "$ret" == "" -a "$2" != "" ]; then
+      ret="$2"
+   fi
+
+   # replace * with %, so that it is not globbed.
+   ret="${ret//\\*/__star__}"
+
+   # this is weird, but single quotes are needed to
+   # allow for returned values with spaces. $ret is still expanded
+   # because it is in an 'eval' statement.
+   eval $1='$ret'
 }
index 153a9b0241929c661888a4c20fc3b2654ddf1755..cc96a71050215b063d897800875e6f813298c099 100644 (file)
@@ -66,7 +66,7 @@ init_vservers() {
       found_vservers=`ls $VROOTDIR | grep -E -v "lost\+found|ARCHIVES" | tr "\n" " "`
       if [ -z "$found_vservers" ]; then
          `if [ "$arg" = nodialog ]; then echo warning; else echo "msgBox warning"; fi` \
-            "vservers enabled in $conffile, but no vserver was found in $VROOTDIR.";      
+            "vservers enabled in $conffile, but no vserver was found in $VROOTDIR.";
             return
       fi
       vservers_are_available=yes
@@ -142,9 +142,9 @@ choose_one_vserver() {
    while [ -z "$REPLY" ]; do
       [ -n "$selected_vservers" ] && setDefault $selected_vservers
       listBegin "$title" "Choose at least one Linux-Vserver to backup:"
-            for vserver in $found_vservers; do
-              listItem "$vserver" "Backup $vserver vserver"
-           done
+         for vserver in $found_vservers; do
+            listItem "$vserver" "Backup $vserver vserver"
+         done
       listDisplay menu
       [ $? = 0 ] || return 1
    done
@@ -152,17 +152,17 @@ choose_one_vserver() {
 }
 
 ##
-## If Vservers are not enabled, set host_or_vservers='host' and then return 
+## If Vservers are not enabled, set host_or_vservers='host' and then return
 ## Else, have the user choose if he/she wants to perform the backup on the host
 ## system or on one Vserver.
 ## Set, respectively, $host_or_vservers to 'host' or 'vservers'.
 ## Returns 1 if cancelled.
 ##
 choose_host_or_one_vserver() {
-   if [ "$vservers_are_available" != "yes" ] 
+   if [ "$vservers_are_available" != "yes" ]
    then
-       host_or_vservers='host'
-       return
+      host_or_vservers='host'
+      return
    fi
    local title=$1
    # if there is one, set the previously chosen item as the default
@@ -173,11 +173,11 @@ choose_host_or_one_vserver() {
    [ $? = 0 ] || return 1
    case $REPLY in
       "host")
-        host_or_vservers='host'
-        ;;
+         host_or_vservers='host'
+         ;;
       "vserver")
-        host_or_vservers='vservers'
-        ;;
+         host_or_vservers='vservers'
+         ;;
    esac
 }
 
@@ -191,10 +191,10 @@ choose_host_or_one_vserver() {
 ## Returns 1 if cancelled.
 ##
 choose_host_or_vservers_or_both() {
-   if [ "$vservers_are_available" != "yes" ] 
+   if [ "$vservers_are_available" != "yes" ]
    then
-       host_or_vservers='host'
-       return
+      host_or_vservers='host'
+      return
    fi
    local title=$1
    # if there is one, set the previously chosen item as the default
@@ -206,14 +206,14 @@ choose_host_or_vservers_or_both() {
    [ $? = 0 ] || return 1
    case $REPLY in
       "host")
-        host_or_vservers='host'
-        ;;
+         host_or_vservers='host'
+         ;;
       "vservers")
-        host_or_vservers='vservers'
-        ;;
+         host_or_vservers='vservers'
+         ;;
       "both")
-        host_or_vservers='both'
-        ;;
+         host_or_vservers='both'
+         ;;
    esac
 }
 
@@ -236,13 +236,13 @@ choose_one_or_more_vservers() {
       local vserver_was_selected=
       REPLY=
       while [ -z "$REPLY" ]; do
-        listBegin "$title" "Choose at least one Linux-Vserver to backup:"
-           # list existing vservers, preselecting the previously selected ones
-           for vserver in $found_vservers; do
-              listItem "$vserver" "Backup $vserver vserver" `vserver_is_selected $vserver`
-           done
-        listDisplay checklist
-        [ $? = 0 ] || return 1
+         listBegin "$title" "Choose at least one Linux-Vserver to backup:"
+            # list existing vservers, preselecting the previously selected ones
+            for vserver in $found_vservers; do
+               listItem "$vserver" "Backup $vserver vserver" `vserver_is_selected $vserver`
+            done
+         listDisplay checklist
+         [ $? = 0 ] || return 1
       done
       # remove quotes around each vserver name
       selected_vservers=`echo $REPLY | tr -d '"'`
index 2a1b76ebae4c1d512a6a3f800a92a7e9573cc326..ca5074c959ef93e7f375600a36bb9618ff30b657 100755 (executable)
 ## FUNCTIONS
 
 function setupcolors () {
-       BLUE="\033[34;01m"
-       GREEN="\033[32;01m"
-       YELLOW="\033[33;01m"
-       PURPLE="\033[35;01m"
-       RED="\033[31;01m"
-       OFF="\033[0m"
-       CYAN="\033[36;01m"
-       COLORS=($BLUE $GREEN $YELLOW $RED $PURPLE $CYAN)
+   BLUE="\033[34;01m"
+   GREEN="\033[32;01m"
+   YELLOW="\033[33;01m"
+   PURPLE="\033[35;01m"
+   RED="\033[31;01m"
+   OFF="\033[0m"
+   CYAN="\033[36;01m"
+   COLORS=($BLUE $GREEN $YELLOW $RED $PURPLE $CYAN)
 }
 
 function colorize () {
-       if [ "$usecolors" == "yes" ]; then
-               local typestr=`echo "$@" | @SED@ 's/\(^[^:]*\).*$/\1/'`
-               [ "$typestr" == "Debug" ] && type=0
-               [ "$typestr" == "Info" ] && type=1
-               [ "$typestr" == "Warning" ] && type=2
-               [ "$typestr" == "Error" ] && type=3
-               [ "$typestr" == "Fatal" ] && type=4
-               [ "$typestr" == "Halt" ] && type=5
-               color=${COLORS[$type]}
-               endcolor=$OFF
-               echo -e "$color$@$endcolor"
-       else
-               echo -e "$@"
-       fi
+   if [ "$usecolors" == "yes" ]; then
+      local typestr=`echo "$@" | @SED@ 's/\(^[^:]*\).*$/\1/'`
+      [ "$typestr" == "Debug" ] && type=0
+      [ "$typestr" == "Info" ] && type=1
+      [ "$typestr" == "Warning" ] && type=2
+      [ "$typestr" == "Error" ] && type=3
+      [ "$typestr" == "Fatal" ] && type=4
+      [ "$typestr" == "Halt" ] && type=5
+      color=${COLORS[$type]}
+      endcolor=$OFF
+      echo -e "$color$@$endcolor"
+   else
+      echo -e "$@"
+   fi
 }
 
 # We have the following message levels:
@@ -65,71 +65,71 @@ echo_debug_msg=0
 usecolors=yes
 
 function printmsg() {
-       [ ${#@} -gt 1 ] || return
-
-       type=$1
-       shift
-       if [ $type == 100 ]; then
-               typestr=`echo "$@" | @SED@ 's/\(^[^:]*\).*$/\1/'`
-               [ "$typestr" == "Debug" ] && type=0
-               [ "$typestr" == "Info" ] && type=1
-               [ "$typestr" == "Warning" ] && type=2
-               [ "$typestr" == "Error" ] && type=3
-               [ "$typestr" == "Fatal" ] && type=4
-               [ "$typestr" == "Halt" ] && type=5
-               typestr=""
-       else
-               types=(Debug Info Warning Error Fatal Halt)
-               typestr="${types[$type]}: "
-       fi
-       
-       print=$[4-type]
-       
-       if [ $echo_debug_msg == 1 ]; then
-               echo -e "$typestr$@" >&2
-       elif [ $debug ]; then
-               colorize "$typestr$@" >&2
-       fi
-       
-       if [ $print -lt $loglevel ]; then
-               logmsg "$typestr$@"
-       fi
+   [ ${#@} -gt 1 ] || return
+
+   type=$1
+   shift
+   if [ $type == 100 ]; then
+      typestr=`echo "$@" | @SED@ 's/\(^[^:]*\).*$/\1/'`
+      [ "$typestr" == "Debug" ] && type=0
+      [ "$typestr" == "Info" ] && type=1
+      [ "$typestr" == "Warning" ] && type=2
+      [ "$typestr" == "Error" ] && type=3
+      [ "$typestr" == "Fatal" ] && type=4
+      [ "$typestr" == "Halt" ] && type=5
+      typestr=""
+   else
+      types=(Debug Info Warning Error Fatal Halt)
+      typestr="${types[$type]}: "
+   fi
+
+   print=$[4-type]
+
+   if [ $echo_debug_msg == 1 ]; then
+      echo -e "$typestr$@" >&2
+   elif [ $debug ]; then
+      colorize "$typestr$@" >&2
+   fi
+
+   if [ $print -lt $loglevel ]; then
+      logmsg "$typestr$@"
+   fi
 }
 
 function logmsg() {
-       if [ -w "$logfile" ]; then
-               echo -e `LC_ALL=C date "+%h %d %H:%M:%S"` "$@" >> $logfile
-       fi
+   if [ -w "$logfile" ]; then
+      echo -e `LC_ALL=C date "+%h %d %H:%M:%S"` "$@" >> $logfile
+   fi
 }
 
 function passthru() {
-       printmsg 100 "$@"
+   printmsg 100 "$@"
 }
 function debug() {
-       printmsg 0 "$@"
+   printmsg 0 "$@"
 }
 function info() {
-       printmsg 1 "$@"
+   printmsg 1 "$@"
 }
 function warning() {
-       printmsg 2 "$@"
+   printmsg 2 "$@"
 }
 function error() {
-       printmsg 3 "$@" 
+   printmsg 3 "$@"
 }
 function fatal() {
-       printmsg 4 "$@"
-       exit 2
+   printmsg 4 "$@"
+   exit 2
 }
 function halt() {
-       printmsg 5 "$@"
-       exit 2
+   printmsg 5 "$@"
+   exit 2
 }
 
 msgcount=0
 function msg {
-       messages[$msgcount]=$1
-       let "msgcount += 1"
+   messages[$msgcount]=$1
+   let "msgcount += 1"
 }
 
 #
@@ -158,7 +158,7 @@ function check_perms() {
       echo "Configuration files must be owned by root! Dying on file $file"
       fatal "Configuration files must be owned by root! Dying on file $file"
    fi
-   
+
    if [ "$wperm" != '---' ]; then
       echo "Configuration files must not be world writable/readable! Dying on file $file"
       fatal "Configuration files must not be world writable/readable! Dying on file $file"
@@ -180,12 +180,12 @@ function check_perms() {
 
 # simple lowercase function
 function tolower() {
-       echo "$1" | tr '[:upper:]' '[:lower:]'
+   echo "$1" | tr '[:upper:]' '[:lower:]'
 }
 
 # simple to integer function
 function toint() {
-       echo "$1" | tr -d '[:alpha:]'
+   echo "$1" | tr -d '[:alpha:]'
 }
 
 #
@@ -206,39 +206,39 @@ nowdayofweek=`LC_ALL=C date +%A`
 nowdayofweek=`tolower "$nowdayofweek"`
 
 function isnow() {
-       local when="$1"
-       set -- $when
-
-       [ "$when" == "manual" ] && return 0
-
-       whendayofweek=$1; at=$2; whentime=$3;
-       whenday=`toint "$whendayofweek"`
-       whendayofweek=`tolower "$whendayofweek"`
-       whentime=`echo "$whentime" | @SED@ 's/:[0-9][0-9]$//' | @SED@ -r 's/^([0-9])$/0\1/'`
-
-       if [ "$whendayofweek" == "everyday" -o "$whendayofweek" == "daily" ]; then
-               whendayofweek=$nowdayofweek
-       fi
-
-       if [ "$whenday" == "" ]; then
-               if [ "$whendayofweek" != "$nowdayofweek" ]; then
-                       whendayofweek=${whendayofweek%s}
-                       if [ "$whendayofweek" != "$nowdayofweek" ]; then
-                               return 0
-                       fi
-               fi
-       elif [ "$whenday" != "$nowday" ]; then
-               return 0
-       fi
-
-       [ "$at" == "at" ] || return 0
-       [ "$whentime" == "$nowtime" ] || return 0
-
-       return 1
+   local when="$1"
+   set -- $when
+
+   [ "$when" == "manual" ] && return 0
+
+   whendayofweek=$1; at=$2; whentime=$3;
+   whenday=`toint "$whendayofweek"`
+   whendayofweek=`tolower "$whendayofweek"`
+   whentime=`echo "$whentime" | @SED@ 's/:[0-9][0-9]$//' | @SED@ -r 's/^([0-9])$/0\1/'`
+
+   if [ "$whendayofweek" == "everyday" -o "$whendayofweek" == "daily" ]; then
+      whendayofweek=$nowdayofweek
+   fi
+
+   if [ "$whenday" == "" ]; then
+      if [ "$whendayofweek" != "$nowdayofweek" ]; then
+         whendayofweek=${whendayofweek%s}
+         if [ "$whendayofweek" != "$nowdayofweek" ]; then
+            return 0
+         fi
+      fi
+   elif [ "$whenday" != "$nowday" ]; then
+      return 0
+   fi
+
+   [ "$at" == "at" ] || return 0
+   [ "$whentime" == "$nowtime" ] || return 0
+
+   return 1
 }
 
 function usage() {
-       cat << EOF
+   cat << EOF
 $0 usage:
 This script allows you to coordinate system backup by dropping a few
 simple configuration files into @CFGDIR@/backup.d/. Typically, this
@@ -257,18 +257,18 @@ The following options are available:
 -n, --now            Perform actions now, instead of when they might
                      be scheduled. No output will be created unless also
                      run with -d.
-    --run FILE       Execute the specified action file and then exit.    
+    --run FILE       Execute the specified action file and then exit.
                      Also puts backupninja in debug mode.
-                     
+
 When in debug mode, output to the console will be colored:
 EOF
-       usecolors=yes
-       colorize "Debug: Debugging info (when run with -d)"
-       colorize "Info: Informational messages (verbosity level 4)"
-       colorize "Warning: Warnings (verbosity level 3 and up)"
-       colorize "Error: Errors (verbosity level 2 and up)"
-       colorize "Fatal: Errors which halt a given backup action (always shown)"
-       colorize "Halt: Errors which halt the whole backupninja run (always shown)"
+   usecolors=yes
+   colorize "Debug: Debugging info (when run with -d)"
+   colorize "Info: Informational messages (verbosity level 4)"
+   colorize "Warning: Warnings (verbosity level 3 and up)"
+   colorize "Error: Errors (verbosity level 2 and up)"
+   colorize "Fatal: Errors which halt a given backup action (always shown)"
+   colorize "Halt: Errors which halt the whole backupninja run (always shown)"
 }
 
 ##
@@ -279,89 +279,89 @@ EOF
 ##
 
 function process_action() {
-       local file="$1"
-       local suffix="$2"
-       local run="no"
-       setfile $file
-
-       # skip over this config if "when" option
-       # is not set to the current time.
-       getconf when "$defaultwhen"
-       if [ "$processnow" == 1 ]; then
-               info ">>>> starting action $file (because of --now)"
-               run="yes"
-       elif [ "$when" == "hourly" ]; then
-               info ">>>> starting action $file (because 'when = hourly')"
-               run="yes"
-       else
-               IFS=$'\t\n'
-               for w in $when; do
-                       IFS=$' \t\n'
-                       isnow "$w"
-                       ret=$?
-                       IFS=$'\t\n'
-                       if [ $ret == 0 ]; then
-                               debug "skipping $file because current time does not match $w"
-                       else
-                               info ">>>> starting action $file (because current time matches $w)"
-                               run="yes"
-                       fi
-               done
-               IFS=$' \t\n'
-       fi
-       debug $run
-       [ "$run" == "no" ] && return
-       
-       let "actions_run += 1"
-
-       # call the handler:
-       local bufferfile=`maketemp backupninja.buffer`
-       echo "" > $bufferfile
-       echo_debug_msg=1
-       (
-               . $scriptdirectory/$suffix $file
-       ) 2>&1 | (
-               while read a; do
-                       echo $a >> $bufferfile
-                       [ $debug ] && colorize "$a"
-               done
-       )
-       retcode=$?
-       # ^^^^^^^^ we have a problem! we can't grab the return code "$?". grrr.
-       echo_debug_msg=0
-
-       _warnings=`cat $bufferfile | grep "^Warning: " | wc -l`
-       _errors=`cat $bufferfile | grep "^Error: " | wc -l`
-       _fatals=`cat $bufferfile | grep "^Fatal: " | wc -l`
-       _halts=`cat $bufferfile | grep "^Halt: " | wc -l`
-       
-       ret=`grep "\(^Warning: \|^Error: \|^Fatal: \|Halt: \)" $bufferfile`
-       rm $bufferfile
-       if [ $_halts != 0 ]; then
-               msg "*halt* -- $file"
-               errormsg="$errormsg\n== halt request from $file==\n\n$ret\n"
-               passthru "Halt: <<<< finished action $file: FAILED"
-       elif [ $_fatals != 0 ]; then
-               msg "*failed* -- $file"
-               errormsg="$errormsg\n== fatal errors from $file ==\n\n$ret\n"
-               passthru "Fatal: <<<< finished action $file: FAILED"
-       elif [ $_errors != 0 ]; then
-               msg "*error* -- $file"
-               errormsg="$errormsg\n== errors from $file ==\n\n$ret\n"
-               error "<<<< finished action $file: ERROR"
-       elif [ $_warnings != 0 ]; then
-               msg "*warning* -- $file"
-               errormsg="$errormsg\n== warnings from $file ==\n\n$ret\n"
-               warning "<<<< finished action $file: WARNING"
-       else
-               msg "success -- $file"
-               info "<<<< finished action $file: SUCCESS"
-       fi
-
-       let "halts += _halts"
-       let "fatals += _fatals"
-       let "errors += _errors"
-       let "warnings += _warnings"     
+   local file="$1"
+   local suffix="$2"
+   local run="no"
+   setfile $file
+
+   # skip over this config if "when" option
+   # is not set to the current time.
+   getconf when "$defaultwhen"
+   if [ "$processnow" == 1 ]; then
+      info ">>>> starting action $file (because of --now)"
+      run="yes"
+   elif [ "$when" == "hourly" ]; then
+      info ">>>> starting action $file (because 'when = hourly')"
+      run="yes"
+   else
+      IFS=$'\t\n'
+      for w in $when; do
+         IFS=$' \t\n'
+         isnow "$w"
+         ret=$?
+         IFS=$'\t\n'
+         if [ $ret == 0 ]; then
+            debug "skipping $file because current time does not match $w"
+         else
+            info ">>>> starting action $file (because current time matches $w)"
+            run="yes"
+         fi
+      done
+      IFS=$' \t\n'
+   fi
+   debug $run
+   [ "$run" == "no" ] && return
+
+   let "actions_run += 1"
+
+   # call the handler:
+   local bufferfile=`maketemp backupninja.buffer`
+   echo "" > $bufferfile
+   echo_debug_msg=1
+   (
+      . $scriptdirectory/$suffix $file
+   ) 2>&1 | (
+      while read a; do
+         echo $a >> $bufferfile
+         [ $debug ] && colorize "$a"
+      done
+   )
+   retcode=$?
+   # ^^^^^^^^ we have a problem! we can't grab the return code "$?". grrr.
+   echo_debug_msg=0
+
+   _warnings=`cat $bufferfile | grep "^Warning: " | wc -l`
+   _errors=`cat $bufferfile | grep "^Error: " | wc -l`
+   _fatals=`cat $bufferfile | grep "^Fatal: " | wc -l`
+   _halts=`cat $bufferfile | grep "^Halt: " | wc -l`
+
+   ret=`grep "\(^Warning: \|^Error: \|^Fatal: \|Halt: \)" $bufferfile`
+   rm $bufferfile
+   if [ $_halts != 0 ]; then
+      msg "*halt* -- $file"
+      errormsg="$errormsg\n== halt request from $file==\n\n$ret\n"
+      passthru "Halt: <<<< finished action $file: FAILED"
+   elif [ $_fatals != 0 ]; then
+      msg "*failed* -- $file"
+      errormsg="$errormsg\n== fatal errors from $file ==\n\n$ret\n"
+      passthru "Fatal: <<<< finished action $file: FAILED"
+   elif [ $_errors != 0 ]; then
+      msg "*error* -- $file"
+      errormsg="$errormsg\n== errors from $file ==\n\n$ret\n"
+      error "<<<< finished action $file: ERROR"
+   elif [ $_warnings != 0 ]; then
+      msg "*warning* -- $file"
+      errormsg="$errormsg\n== warnings from $file ==\n\n$ret\n"
+      warning "<<<< finished action $file: WARNING"
+   else
+      msg "success -- $file"
+      info "<<<< finished action $file: SUCCESS"
+   fi
+
+   let "halts += _halts"
+   let "fatals += _fatals"
+   let "errors += _errors"
+   let "warnings += _warnings"
 }
 
 #####################################################
@@ -374,71 +374,71 @@ loglevel=3
 ## process command line options
 
 while [ $# -ge 1 ]; do
-       case $1 in
-               -h|--help) usage;;
-               -d|--debug) debug=1;;
-               -t|--test) test=1;debug=1;;
-               -n|--now) processnow=1;;
-               -f|--conffile)
-                       if [ -f $2 ]; then
-                               conffile=$2
-                       else
-                               echo "-f|--conffile option must be followed by an existing filename"
-                               fatal "-f|--conffile option must be followed by an existing filename"
-                               usage
-                       fi
-                       # we shift here to avoid processing the file path 
-                       shift
-                       ;;
-               --run)
-                       debug=1
-                       if [ -f $2 ]; then
-                               singlerun=$2
-                               processnow=1
-                       else
-                               echo "--run option must be followed by a backupninja action file"
-                               fatal "--run option must be followed by a backupninja action file"
-                               usage
-                       fi
-                       shift
-                       ;;
-               *)
-                       debug=1
-                       echo "Unknown option $1"
-                       fatal "Unknown option $1"
-                       usage
-                       exit
-                       ;;
-       esac
-       shift
-done                                                                                                                                                                                                           
+   case $1 in
+      -h|--help) usage;;
+      -d|--debug) debug=1;;
+      -t|--test) test=1;debug=1;;
+      -n|--now) processnow=1;;
+      -f|--conffile)
+         if [ -f $2 ]; then
+            conffile=$2
+         else
+            echo "-f|--conffile option must be followed by an existing filename"
+            fatal "-f|--conffile option must be followed by an existing filename"
+            usage
+         fi
+         # we shift here to avoid processing the file path
+         shift
+         ;;
+      --run)
+         debug=1
+         if [ -f $2 ]; then
+            singlerun=$2
+            processnow=1
+         else
+            echo "--run option must be followed by a backupninja action file"
+            fatal "--run option must be followed by a backupninja action file"
+            usage
+         fi
+         shift
+         ;;
+      *)
+         debug=1
+         echo "Unknown option $1"
+         fatal "Unknown option $1"
+         usage
+         exit
+         ;;
+   esac
+   shift
+done
 
 #if [ $debug ]; then
-#      usercolors=yes
+#   usercolors=yes
 #fi
 
 ## Load and confirm basic configuration values
 
 # bootstrap
 if [ ! -r "$conffile" ]; then
-       echo "Configuration file $conffile not found." 
-       fatal "Configuration file $conffile not found."
+   echo "Configuration file $conffile not found."
+   fatal "Configuration file $conffile not found."
 fi
 
 # find $libdirectory
 libdirectory=`grep '^libdirectory' $conffile | @AWK@ '{print $3}'`
 if [ -z "$libdirectory" ]; then
-        if [ -d "@libdir@" ]; then
-          libdirectory="@libdir@"
-       else
-          echo "Could not find entry 'libdirectory' in $conffile." 
-          fatal "Could not find entry 'libdirectory' in $conffile." 
-       fi
+   if [ -d "@libdir@" ]; then
+      libdirectory="@libdir@"
+   else
+      echo "Could not find entry 'libdirectory' in $conffile."
+      fatal "Could not find entry 'libdirectory' in $conffile."
+   fi
 else
-        if [ ! -d "$libdirectory" ]; then
-          echo "Lib directory $libdirectory not found." 
-          fatal "Lib directory $libdirectory not found." 
-       fi
+   if [ ! -d "$libdirectory" ]; then
+      echo "Lib directory $libdirectory not found."
+      fatal "Lib directory $libdirectory not found."
+   fi
 fi
 
 # include shared functions
@@ -482,15 +482,15 @@ getconf admingroup root
 init_vservers nodialog
 
 if [ ! -d "$configdirectory" ]; then
-       echo "Configuration directory '$configdirectory' not found."
-       fatal "Configuration directory '$configdirectory' not found."
+   echo "Configuration directory '$configdirectory' not found."
+   fatal "Configuration directory '$configdirectory' not found."
 fi
 
 [ -f "$logfile" ] || touch $logfile
 
 if [ "$UID" != "0" ]; then
-       echo "`basename $0` can only be run as root"
-       exit 1
+   echo "`basename $0` can only be run as root"
+   exit 1
 fi
 
 ## Process each configuration file
@@ -507,34 +507,34 @@ actions_run=0
 errormsg=""
 
 if [ "$singlerun" ]; then
-       files=$singlerun
+   files=$singlerun
 else
-       files=`find $configdirectory -follow -mindepth 1 -maxdepth 1 -type f ! -name '.*.swp' | sort -n`
+   files=`find $configdirectory -follow -mindepth 1 -maxdepth 1 -type f ! -name '.*.swp' | sort -n`
 
-       if [ -z "$files" ]; then
-               fatal "No backup actions configured in '$configdirectory', run ninjahelper!"
-       fi
+   if [ -z "$files" ]; then
+      fatal "No backup actions configured in '$configdirectory', run ninjahelper!"
+   fi
 fi
 
 for file in $files; do
-       [ -f "$file" ] || continue
-       [ "$halts" = "0" ] || continue
-
-        check_perms ${file%/*} # check containing dir
-       check_perms $file
-       suffix="${file##*.}"
-       base=`basename $file`
-       if [ "${base:0:1}" == "0" -o "$suffix" == "disabled" ]; then
-               info "Skipping $file"
-               continue
-       fi
-
-       if [ -e "$scriptdirectory/$suffix" ]; then
-               process_action $file $suffix
-       else
-               error "Can't process file '$file': no handler script for suffix '$suffix'"
-               msg "*missing handler* -- $file"
-       fi
+   [ -f "$file" ] || continue
+   [ "$halts" = "0" ] || continue
+
+   check_perms ${file%/*} # check containing dir
+   check_perms $file
+   suffix="${file##*.}"
+   base=`basename $file`
+   if [ "${base:0:1}" == "0" -o "$suffix" == "disabled" ]; then
+      info "Skipping $file"
+      continue
+   fi
+
+   if [ -e "$scriptdirectory/$suffix" ]; then
+      process_action $file $suffix
+   else
+      error "Can't process file '$file': no handler script for suffix '$suffix'"
+      msg "*missing handler* -- $file"
+   fi
 done
 
 ## mail the messages to the report address
@@ -549,38 +549,38 @@ else doit=0
 fi
 
 if [ $doit == 1 ]; then
-       debug "send report to $reportemail"
-       hostname=`hostname`
-       [ $warnings == 0 ] || subject="WARNING"
-       [ $errors == 0 ] || subject="ERROR"
-       [ $fatals == 0 ] || subject="FAILED"
-       
-       {
-               for ((i=0; i < ${#messages[@]} ; i++)); do
-                       echo ${messages[$i]}
-               done
-               echo -e "$errormsg"
-               if [ "$reportspace" == "yes" ]; then
-                       previous=""
-                       for i in $(ls "$configdirectory"); do
-                       backuploc=$(grep ^directory "$configdirectory"/"$i" | @AWK@ '{print $3}')
-                       if [ "$backuploc" != "$previous" -a -n "$backuploc" ]; then
-                               df -h "$backuploc"
-                               previous="$backuploc"
-                       fi
-                       done
-               fi
-       } | mail -s "backupninja: $hostname $subject" $reportemail
+   debug "send report to $reportemail"
+   hostname=`hostname`
+   [ $warnings == 0 ] || subject="WARNING"
+   [ $errors == 0 ] || subject="ERROR"
+   [ $fatals == 0 ] || subject="FAILED"
+
+   {
+      for ((i=0; i < ${#messages[@]} ; i++)); do
+          echo ${messages[$i]}
+      done
+      echo -e "$errormsg"
+      if [ "$reportspace" == "yes" ]; then
+         previous=""
+         for i in $(ls "$configdirectory"); do
+         backuploc=$(grep ^directory "$configdirectory"/"$i" | @AWK@ '{print $3}')
+         if [ "$backuploc" != "$previous" -a -n "$backuploc" ]; then
+            df -h "$backuploc"
+            previous="$backuploc"
+         fi
+         done
+      fi
+   } | mail -s "backupninja: $hostname $subject" $reportemail
 fi
 
 if [ $actions_run != 0 ]; then
-       info "FINISHED: $actions_run actions run. $fatals fatal. $errors error. $warnings warning."
-       if [ "$halts" != "0" ]; then
-               info "Backup was halted prematurely.  Some actions may not have run."
-       fi
+   info "FINISHED: $actions_run actions run. $fatals fatal. $errors error. $warnings warning."
+   if [ "$halts" != "0" ]; then
+      info "Backup was halted prematurely.  Some actions may not have run."
+   fi
 fi
 
 if [ -n "$reporthost" ]; then
-       debug "send $logfile to $reportuser@$reporthost:$reportdirectory"
-       rsync -qt $logfile $reportuser@$reporthost:$reportdirectory
+   debug "send $logfile to $reportuser@$reporthost:$reportdirectory"
+   rsync -qt $logfile $reportuser@$reporthost:$reportdirectory
 fi
index 040727baa7eb2de9ac54e1e85843e4ab5f4ae15f..7bbef1fd3ca3d3ba36c7ad99b4304ea305e15259 100755 (executable)
@@ -27,7 +27,7 @@ get_next_filename() {
 require_packages() {
    for pkg in "$@"; do
       installed=`dpkg -s $pkg | grep 'ok installed'`
-      if [ -z "$installed" ]; then 
+      if [ -z "$installed" ]; then
          booleanBox "install $pkg?" "This backup action requires package $pkg. Do you want to install it now?"
          if [ $? = 0 ]; then
             apt-get install $pkg
@@ -54,7 +54,7 @@ donew() {
       listItem $helper_function "$helper_info"
    done
    listDisplay menu
-    
+
    [ $? = 1 ] && return
    result="$REPLY"
    [ "$result" = "return" -o "$result" = "" ] && return
@@ -62,10 +62,10 @@ donew() {
    $run_wizard
    result=$?
    # 0 is ok, 1 is cancel, anything else is bad.
-   if [ $result != 1 -a $result != 0 ]; then    
+   if [ $result != 1 -a $result != 0 ]; then
       echo "An error occurred ($result), bailing out. Hit return to continue."
       read
-   fi 
+   fi
 }
 
 do_rm_action() {
@@ -84,17 +84,17 @@ do_run() {
 do_xedit() {
    if [ -z "$EDITOR" -o ! -x "`which $EDITOR`" ]; then
       if [ -h /etc/alternatives/editor -a -x "`readlink /etc/alternatives/editor`" ]; then
-        EDITOR="`readlink /etc/alternatives/editor`"
+    EDITOR="`readlink /etc/alternatives/editor`"
       elif [ -x "`which nano`" ]; then
-        EDITOR="`which nano`"
+    EDITOR="`which nano`"
       elif [ -x "`which vim`" ]; then
-        EDITOR="`which vim`"
+    EDITOR="`which vim`"
       elif [ -x "`which vi`" ]; then
-        EDITOR="`which vi`"
+    EDITOR="`which vi`"
       else
-        echo "No suitable editor found."
-        echo "Please define $EDITOR or configure /etc/alternatives/editor."
-        exit
+    echo "No suitable editor found."
+    echo "Please define $EDITOR or configure /etc/alternatives/editor."
+    exit
       fi
    fi
    $EDITOR $1
@@ -138,17 +138,17 @@ doaction() {
          name "change the filename" \
          run "run this action now" \
          test "do a test run" \
-         kill "remove this action" 
+         kill "remove this action"
       [ $? = 1 ] && return;
       result="$REPLY"
       case "$result" in
-         "view") dialog --textbox $action 0 0;; 
+         "view") dialog --textbox $action 0 0;;
          "xedit") do_xedit $action;;
          "disable") do_disable $action; return;;
          "enable") do_enable $action; return;;
          "name") do_rename $action; return;;
          "run") do_run $action;;
-         "test") do_run_test $action;; 
+         "test") do_run_test $action;;
          "kill") do_rm_action $action; return;;
          "main") return;;
       esac
@@ -178,7 +178,7 @@ fi
 # bootstrap
 conffile="@CFGDIR@/backupninja.conf"
 if [ ! -r "$conffile" ]; then
-   echo "Configuration file $conffile not found." 
+   echo "Configuration file $conffile not found."
    exit 1
 fi
 
@@ -188,12 +188,12 @@ if [ -z "$libdirectory" ]; then
    if [ -d "@libdir@" ]; then
       libdirectory="@libdir@"
    else
-      echo "Could not find entry 'libdirectory' in $conffile." 
+      echo "Could not find entry 'libdirectory' in $conffile."
       exit 1
    fi
 else
    if [ ! -d "$libdirectory" ]; then
-      echo "Lib directory $libdirectory not found." 
+      echo "Lib directory $libdirectory not found."
       exit 1
    fi
 fi
@@ -247,7 +247,7 @@ done
 
 menuBox "main menu" "Select a backup action for more options, or create a new action:" $menulist \
   new "create a new backup action" \
-  quit "leave ninjahelper" 
+  quit "leave ninjahelper"
 
 [ $? = 1 -o $? = 255 ] && exit 0;
 
index b68efb87919ccc131ee019b1de0b40b04a6f2698..56a7209013a280ae1655ddc211ba267d9a983fe1 100755 (executable)
@@ -13,7 +13,7 @@
 #  . check for logs that are never updating and warn
 #  . change constantly updating logs (maildir) to be more friendly
 #  . documentation
-#  . maybe make config option that lists all hosts that should report-in, and if 
+#  . maybe make config option that lists all hosts that should report-in, and if
 #    one doesn't then warn
 #  . restrict rsync somehow?
 #  . abstract path for logtail
@@ -29,7 +29,7 @@ process() {
 #
 # note: some backups never finish, such as the maildir one, need to handle these
 # perhaps by looking for FAILED messages?
-# note2: what about logs that aren't being updated? this is a failure case and 
+# note2: what about logs that aren't being updated? this is a failure case and
 # should be looked for
 # note3: there are also these entries:
 # Jan 20 14:00:01 Fatal: No backup actions configured in '/etc/backup.d', run ninjahelper!
@@ -38,27 +38,27 @@ process() {
 logupdates=`maketemp ninjadata`
 
 /usr/sbin/logtail -f $host > $logupdates
-grep FINISHED $logupdates | 
+grep FINISHED $logupdates |
 (
-       fatal=0
-       warning=0
-       error=0
-
-       while read line
-       do
-               line_array=($line)
-               fatal=$(($fatal + ${line_array[8]}))
-               error=$(($error + ${line_array[10]}))
-               warning=$(($warning + ${line_array[12]}))
-       done
-       if (( $fatal || $warning || $error )); then
-               echo "`basename $host .log`: $fatal fatals found, $error errors found, $warning warnings found" >> $statusfile
-               echo "" >> $reportappend
-               echo "`basename $host .log` log entries since last ninjareport" >> $reportappend
-               echo "---------" >> $reportappend
-               cat $logupdates >> $reportappend
-               rm $logupdates
-       fi
+   fatal=0
+   warning=0
+   error=0
+
+   while read line
+   do
+      line_array=($line)
+      fatal=$(($fatal + ${line_array[8]}))
+      error=$(($error + ${line_array[10]}))
+      warning=$(($warning + ${line_array[12]}))
+   done
+   if (( $fatal || $warning || $error )); then
+      echo "`basename $host .log`: $fatal fatals found, $error errors found, $warning warnings found" >> $statusfile
+      echo "" >> $reportappend
+      echo "`basename $host .log` log entries since last ninjareport" >> $reportappend
+      echo "---------" >> $reportappend
+      cat $logupdates >> $reportappend
+      rm $logupdates
+   fi
 )
 
 }
@@ -69,31 +69,31 @@ reportfile=`maketemp ninjareport`
 
 # Generate a report, only if there are failures
 if [ -s $statusfile ]; then
-       echo "         backupninja mission failures - `date`" >> $reportfile
-       echo "       --------------------------------------------------------------" >> $reportfile
-       echo "" >> $reportfile
-       cat $statusfile | column -t >> $reportfile
-       echo "" >> $reportfile
-       echo "         log entries from failed reports" >> $reportfile
-       echo "       -----------------------------------" >> $reportfile
-       cat $reportappend >> $reportfile
+   echo "         backupninja mission failures - `date`" >> $reportfile
+   echo "       --------------------------------------------------------------" >> $reportfile
+   echo "" >> $reportfile
+   cat $statusfile | column -t >> $reportfile
+   echo "" >> $reportfile
+   echo "         log entries from failed reports" >> $reportfile
+   echo "       -----------------------------------" >> $reportfile
+   cat $reportappend >> $reportfile
 fi
 
 }
 
 usage() {
-       cat << EOF
+   cat << EOF
 This script generates a backupninja status report for all configured
 systems. It requires that each status report is placed in a spot where
 ninjareport can read it, reports are mailed to the reportemail
 configured in @CFGDIR@/backupninja.conf.
 
 The following options are available:
--h, --help             This usage message
--f, --conffile FILE    Use FILE for the configuration instead
-                       of @CFGDIR@/backupninja.conf
--m, --mail <email>     Mail the report to this address
--o, --out              Don't mail the report, just display it
+-h, --help             This usage message
+-f, --conffile FILE    Use FILE for the configuration instead
+                       of @CFGDIR@/backupninja.conf
+-m, --mail <email>     Mail the report to this address
+-o, --out              Don't mail the report, just display it
 
 EOF
 }
@@ -106,45 +106,45 @@ conffile="@CFGDIR@/backupninja.conf"
 ## process command line options
 
 while [ $# -ge 1 ]; do
-       case $1 in
-               -h|--help) 
-                        usage
-                       exit 0
-                       ;;
-               -f|--conffile)
-                       if [ -f $2 ]; then
-                               conffile=$2
-                       else
-                               echo "-f|--conffile option must be followed by an existing filename"
-                               fatal "-f|--conffile option must be followed by an existing filename"
-                               usage
-                       fi
-                       # we shift here to avoid processing the file path 
-                       shift
-                       ;;
-               -m|--mail)
-                       reportemail=$2
-                       shift
-                       ;;
-               -o|--out)
-                       mail=0
-                       display=1
-                       ;;
-               *)
-                       echo "Unknown option $1"
-                       usage
-                       exit
-                       ;;
-       esac
-       shift
-done                                                                                                                                                                                                           
+   case $1 in
+      -h|--help)
+         usage
+         exit 0
+         ;;
+      -f|--conffile)
+         if [ -f $2 ]; then
+            conffile=$2
+         else
+            echo "-f|--conffile option must be followed by an existing filename"
+            fatal "-f|--conffile option must be followed by an existing filename"
+            usage
+         fi
+         # we shift here to avoid processing the file path
+         shift
+         ;;
+      -m|--mail)
+         reportemail=$2
+         shift
+         ;;
+      -o|--out)
+         mail=0
+         display=1
+         ;;
+      *)
+         echo "Unknown option $1"
+         usage
+         exit
+         ;;
+   esac
+   shift
+done
 
 ## Load and confirm basic configuration values
 
 # bootstrap
 if [ ! -r "$conffile" ]; then
-       echo "Configuration file $conffile not found." 
-       fatal "Configuration file $conffile not found."
+   echo "Configuration file $conffile not found."
+   fatal "Configuration file $conffile not found."
 fi
 
 # find $libdirectory
@@ -153,12 +153,12 @@ if [ -z "$libdirectory" ]; then
    if [ -d "@libdir@" ]; then
       libdirectory="@libdir@"
    else
-      echo "Could not find entry 'libdirectory' in $conffile." 
+      echo "Could not find entry 'libdirectory' in $conffile."
       exit 1
    fi
 else
    if [ ! -d "$libdirectory" ]; then
-      echo "Lib directory $libdirectory not found." 
+      echo "Lib directory $libdirectory not found."
       exit 1
    fi
 fi
@@ -176,17 +176,17 @@ getconf reportemail
 hosts=`find $reportdirectory -follow -mindepth 1 -maxdepth 1 -type f ! -name '*.offset' | sort -n`
 
 if [ -z "$hosts" ]; then
-       echo "Fatal: No backupninja reports found in '$reportdirectory'!"
-       mail=0
+   echo "Fatal: No backupninja reports found in '$reportdirectory'!"
+   mail=0
 fi
 
 statusfile=`maketemp ninjastatus`
 reportappend=`maketemp ninjaappend`
 
 for host in $hosts; do
-       [ -f "$host" ] || continue
-       # Check somehow that the file is a valid report file
-       process $host
+   [ -f "$host" ] || continue
+   # Check somehow that the file is a valid report file
+   process $host
 done
 
 generatereport
@@ -194,12 +194,11 @@ generatereport
 ## mail the report to the report address or display it
 
 if [ -s $reportfile ]; then
-    if [ $mail == 1 ]; then
-       mail -s "backupninja mission failure report" $reportemail < $reportfile
-    fi
+   if [ $mail == 1 ]; then
+      mail -s "backupninja mission failure report" $reportemail < $reportfile
+   fi
 fi
 
 if [ $display == 1 ]; then
-       cat $reportfile
+   cat $reportfile
 fi
-