projekty: server-backups/backup - correct

wolvverine wolvverine at pld-linux.org
Thu Mar 2 21:20:59 CET 2006


Author: wolvverine                   Date: Thu Mar  2 20:20:59 2006 GMT
Module: projekty                      Tag: HEAD
---- Log message:
- correct

---- Files affected:
projekty/server-backups:
   backup (1.8 -> 1.9) 

---- Diffs:

================================================================
Index: projekty/server-backups/backup
diff -u projekty/server-backups/backup:1.8 projekty/server-backups/backup:1.9
--- projekty/server-backups/backup:1.8	Tue Feb 28 04:06:57 2006
+++ projekty/server-backups/backup	Thu Mar  2 21:20:54 2006
@@ -12,7 +12,8 @@
 # - remove bashizm
 set -x
 ####################
- DIRSCRIPTS=/root/scripts # TODO - remove this
+ DIRSCRIPTS="/root/scripts" # TODO - remove this
+ VARBACKDIR="/var/lib/backups"
  DIRETC=/etc/backups
  DATA=`date +%Y%m%d`
  TIME=`date +%H%M`
@@ -22,6 +23,7 @@
  BRODCASTIP=''
  USERSTORHOST=''
  MYSQLUSER=''
+ MYSQLPASSWORD=''
  PASSWD=''
  DIRSTORHOST=backup
  NICELEVEL=19
@@ -35,22 +37,24 @@
 TAROPT="-czpf"
 # TAROPT=" a -ed -ag -dh -m5 -v1140000 -x@/etc/backups/exclude"
 [ -f ${DIRETC}/backups.conf ] && . ${DIRETC}/backups.conf
-#[! -f ${DIRETC}/backdir ] && 
-#[! -f ${DIRETC}/backsubdir ] && 
-#[! -f ${DIRETC}/exclude ] && 
+#[! -f ${DIRETC}/backdir ] 
+#[! -f ${DIRETC}/backsubdir ] 
+#[! -f ${DIRETC}/exclude ]
 
 mkdir -p $BCK_HOME/$DATA-$TIME ;
+mkdir -p ${VARBACKDIR};
 touch /tmp/$DATA-$TIME-backup ;
 
 #TODO - optional this
 #obudzenie kompa skladujacego
 MACSTORHOST=`arp -a $STORHOST | awk '{print $4};'`
-wakelan -b $BRODCASTIP -m $MACSTORHOST
+wakelan -b $BRODCASTIP -m $MACSTORHOST 2>/tmp/$DATA-$TIME-error
 ERROR=$? ;	
 if [ ! ${ERROR} -eq 0 ];
     then
-	echo "backup error ${ERROR}- wake host  - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error
-	${PROGMAIL} -s "backup error ${ERROR}- wake host  - $DATA-$TIME !!!!" $RECIPIENT ;
+	echo "backup error ${ERROR}- wake host  - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error ;
+	cat /tmp/$DATA-$TIME-error >> /tmp/$DATA-$TIME-backup-error
+	cat /tmp/$DATA-$TIME-error | ${PROGMAIL} -s "backup error ${ERROR}- wake host  - $DATA-$TIME !!!!" $RECIPIENT ;
 fi
 ##################
 # backup katalogow
@@ -58,16 +62,17 @@
 while read BACKDIR;
 do
     NAMEDIR="${BACKDIR##*/}"
-    nice -n $NICELEVEL ${PROGTAR} ${TAROPT} "${BCK_HOME}/${DATA}-${TIME}/${NAMEDIR}_${DATA}-${TIME}.tar.gz" -X "${EXCLUDEFILE}" "${BACKDIR}"
+    nice -n $NICELEVEL ${PROGTAR} ${TAROPT} "${BCK_HOME}/${DATA}-${TIME}/${NAMEDIR}_${DATA}-${TIME}.tar.gz" -X "${EXCLUDEFILE}" "${BACKDIR}" 2>/tmp/$DATA-$TIME-error
     ERROR=$?;
 	if [ ! ${ERROR} -eq 0 ]; then
 	    echo "backup error ${ERROR}-${NAMEDIR}-tar.gz  - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error
-            cat /tmp/$DATA-$TIME-backup |  ${PROGMAIL} -s "backup error ${ERROR}-${NAMEDIR}-tar.gz  - $DATA-$TIME !!!!" $RECIPIENT ;
+	    cat /tmp/$DATA-$TIME-error >> /tmp/$DATA-$TIME-backup-error
+            cat /tmp/$DATA-$TIME-error |  ${PROGMAIL} -s "backup error ${ERROR}-${NAMEDIR}  - $DATA-$TIME !!!!" $RECIPIENT ;
 	fi
 done < ${CONFBACKDIRFILE}
 ERROR=$?;
 if [ ! ${ERROR} -eq 0 ]; then
-            cat /tmp/$DATA-$TIME-backup |  ${PROGMAIL} -s "backup error ${ERROR} - tar.gz  - $DATA-$TIME !!!!" $RECIPIENT ;
+            cat /tmp/$DATA-$TIME-backup |  ${PROGMAIL} -s "backup error ${ERROR} - $DATA-$TIME !!!!" $RECIPIENT ;
 fi
 #########################################
 #BACKUP PODKATALOGOW katalogu wskazanego
@@ -79,30 +84,37 @@
 	    do 
 #		USERNAME=`echo $poddir | awk 'BEGIN { FS="/"} {print $NF}'`;
 		SUBDIRNAME="${SUBDIR##*/}";
-		nice -n $NICELEVEL ${PROGTAR} ${TAROPT} "${BCK_HOME}/${DATA}-${TIME}/${DIRNAME}_${SUBDIRNAME}_${DATA}-${TIME}.tar.gz" -X "${EXCLUDEFILE}" "${SUBDIR}";
+		nice -n $NICELEVEL ${PROGTAR} ${TAROPT} "${BCK_HOME}/${DATA}-${TIME}/${DIRNAME}_${SUBDIRNAME}_${DATA}-${TIME}.tar.gz" -X "${EXCLUDEFILE}" "${SUBDIR}" 2>/tmp/$DATA-$TIME-error
 		ERROR=$?;
 		if [ ! ${ERROR} -eq 0 ]; then
 		    echo "backup error ${ERROR} - ${DIRNAME} - ${SUBDIRNAME} - tar.gz  - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error
-		    cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - ${DIRNAME} - ${SUBDIRNAME} - tar.gz  - $DATA-$TIME !!!!" $RECIPIENT ;
+		    cat /tmp/$DATA-$TIME-error >> /tmp/$DATA-$TIME-backup-error
+		    cat /tmp/$DATA-$TIME-error | ${PROGMAIL} -s "backup error ${ERROR} - ${DIRNAME} - ${SUBDIRNAME} - $DATA-$TIME !!!!" $RECIPIENT ;
 		fi
             done
 done < ${CONFBACKSUBDIRFILE}
+
+
 ERROR=$?;
-if [ ! ${ERROR} -eq 0 ]; then
-	echo "backup error ${ERROR} - tar.gz  - ${DATA-$TIME} !!!!" >> /tmp/$DATA-$TIME-backup-error
-	cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - tar.gz  - ${DATA-$TIME} !!!!" ${RECIPIENT} ;
-fi
+
+#if [ ! ${ERROR} -eq 0 ]; then
+#	echo "backup error ${ERROR} - ${DATA-$TIME} !!!!" >> /tmp/$DATA-$TIME-backup-error
+#	cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - tar.gz  - ${DATA-$TIME} !!!!" ${RECIPIENT} ;
+#fi
+
+#TODO poczatek  petli sprawdzajacej argumenty wywołania skryptu podstawiajac kolejno je pod $1
 
 ###################
 #BACKUP bazy Mysql
 ###################
 
-if [ $2 -eq mysql ]; then
-    mysqldump -u ${MYSQLUSER}  --password=${MYSQLPASSWORD} -A | gzip -c9 > "${BCK_HOME}/${DATA}-${TIME}/mysql_base_full-${DATA}-${TIME}.gz"
+if [ $1 = mysql ]; then
+    mysqldump -u ${MYSQLUSER}  --password=${MYSQLPASSWORD} -A | gzip -c9 > "${BCK_HOME}/${DATA}-${TIME}/mysql_base_full-${DATA}-${TIME}.gz" 2>/tmp/$DATA-$TIME-error
     ERROR=$?
     if [ ! ${ERROR} -eq 0 ]; then
 	echo "backup error ${ERROR} - Backup MySQL database - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error
-	cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - Backup MySQL database - $DATA-$TIME !!!!" $RECIPIENT ;
+	cat /tmp/$DATA-$TIME-error >> /tmp/$DATA-$TIME-backup-error
+	cat /tmp/$DATA-$TIME-error | ${PROGMAIL} -s "backup error ${ERROR} - Backup MySQL database - $DATA-$TIME !!!!" $RECIPIENT ;
     fi
 fi
 
@@ -113,12 +125,13 @@
 # Wysłanie na dysk innego hosta po rsync
 ########################################
 
-if [ $1 -eq rsync ]; then
-    nice -n $NICELEVEL rsync -avzrp --stats  --password-file="${DIRETC}/rsyncpasswd" "${BCK_HOME}/$DATA-$TIME" $USERSTORHOST@$STORHOST::$DIRSTORHOST  >> /tmp/$DATA-$TIME-backup 1<&2
+if [ $1 = rsync ]; then
+    nice -n $NICELEVEL rsync -avzrp --stats  --password-file="${DIRETC}/rsyncpasswd" "${BCK_HOME}/$DATA-$TIME" $USERSTORHOST@$STORHOST::$DIRSTORHOST 2>/tmp/$DATA-$TIME-error
     ERROR=$?
     if [ ! ${ERROR} -eq 0 ]; then
 	echo "backup error ${ERROR} - send rsync to another host - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error
-	cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - send rsync to another host - $DATA-$TIME !!!!" $RECIPIENT ;
+	cat /tmp/$DATA-$TIME-error >> /tmp/$DATA-$TIME-backup-error
+	cat /tmp/$DATA-$TIME-error | ${PROGMAIL} -s "backup error ${ERROR} - send rsync to another host - $DATA-$TIME !!!!" $RECIPIENT ;
     fi
 fi
 ########################### END rsync
@@ -127,20 +140,22 @@
 # Nagranie na plytke DVD
 #########################
 
-if [ $1 -eq dvd ]; then
-    mkisofs -o "/var/tmp/backup-${DATA}-${TIME}.iso" -J -r -V "Backup_${DATA}-${TIME}" "/var/kopie/${DATA}-${TIME}"
+if [ $1 = dvd ]; then
+    mkisofs -o "/var/tmp/backup-${DATA}-${TIME}.iso" -J -r -V "Backup_${DATA}-${TIME}" "/var/kopie/${DATA}-${TIME}" 2>/tmp/$DATA-$TIME-error
     ERROR=$?;
         if [ ! ${ERROR} -eq 0 ]; then
 	    echo "backup error ${ERROR} - mkiso - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error
-	    cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - mkiso - $DATA-$TIME !!!!" $RECIPIENT ;
+	    cat /tmp/$DATA-$TIME-error >> /tmp/$DATA-$TIME-backup-error
+	    cat /tmp/$DATA-$TIME-error | ${PROGMAIL} -s "backup error ${ERROR} - mkiso - $DATA-$TIME !!!!" $RECIPIENT ;
         fi
     du -h /tmp/backup-$DATA-$TIME.iso >> $DIRSCRIPTS/backup-usage 
 #TODO - configure drive and options
-    dvdrecord -dao speed=2 dev=ATAPI:0,1,0 driveropts=burnfree /var/tmp/backup-$DATA-$TIME.iso
+    dvdrecord -dao speed=2 dev=ATAPI:0,1,0 driveropts=burnfree /var/tmp/backup-$DATA-$TIME.iso 2>/tmp/$DATA-$TIME-error
     ERROR=$?;
 	if [ ! ${ERROR} -eq 0 ]; then
 	    echo "backup error ${ERROR} - dvdrecord - $DATA-$TIME !!!!" >> /tmp/$DATA-$TIME-backup-error
-	    cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - dvdrecord - $DATA-$TIME !!!!" $RECIPIENT ;
+	    cat /tmp/$DATA-$TIME-error >> /tmp/$DATA-$TIME-backup-error
+	    cat /tmp/$DATA-$TIME-error | ${PROGMAIL} -s "backup error ${ERROR} - dvdrecord - $DATA-$TIME !!!!" $RECIPIENT ;
 	fi
     rm /var/tmp/backup-$DATA-$TIME.iso;
 fi
@@ -155,7 +170,9 @@
 	cat "${DIRSCRIPTS}/backup-usage" >> /tmp/$DATA-$TIME-backup-error
 	cat /tmp/$DATA-$TIME-backup-error | ${PROGMAIL} -s "backup ERROR !!! - $DATA-$TIME" $RECIPIENT
     else
-        cat "${DIRSCRIPTS}/backup-usage" >> /tmp/$DATA-$TIME-backup
+	du -h ${BCK_HOME}/*${DATA}-${TIME}* > "${VARBACKDIR}/backup-last-du"
+	echo "$DATA-$TIME" > "${VARBACKDIR}/backup-last-date"
+        cat "${VARBACKDIR}/backup-last-du" >> /tmp/$DATA-$TIME-backup
 	echo "$DATA-$TIME - ok" >> /var/log/backups
 	cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup OK - $DATA-$TIME" $RECIPIENT
 fi
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/projekty/server-backups/backup?r1=1.8&r2=1.9&f=u



More information about the pld-cvs-commit mailing list