projekty: server-backups/backup - poprawki /n - add mysqldump
wolvverine
wolvverine at pld-linux.org
Mon Feb 27 13:58:38 CET 2006
Author: wolvverine Date: Mon Feb 27 12:58:38 2006 GMT
Module: projekty Tag: HEAD
---- Log message:
- poprawki /n - add mysqldump
---- Files affected:
projekty/server-backups:
backup (1.3 -> 1.4)
---- Diffs:
================================================================
Index: projekty/server-backups/backup
diff -u projekty/server-backups/backup:1.3 projekty/server-backups/backup:1.4
--- projekty/server-backups/backup:1.3 Sat Feb 18 21:08:07 2006
+++ projekty/server-backups/backup Mon Feb 27 13:58:32 2006
@@ -1,26 +1,38 @@
#!/bin/bash
+
+#TODO
+# - remove DIRSCRIPTS
+# - add SMB
+# - add multiple option
+# - add error control for config files
set -x
####################
- DIRSCRIPTS=/root/scripts
+ DIRSCRIPTS=/root/scripts # TODO - remove this
+ DIRETC=/etc/backups
DATA=`date +%Y%m%d`
TIME=`date +%H%M`
- BCK_HOME=/var/kopie
+ BCK_HOME="/var/kopie"
RECIPIENT=''
- STORHOST=192.168.0.51
- BRODCASTIP=192.168.0.255
- USERSTORHOST=admin
- PASSWD=
+ STORHOST=''
+ BRODCASTIP=''
+ USERSTORHOST=''
+ MYSQLUSER=''
+ PASSWD=''
DIRSTORHOST=backup
NICELEVEL=19
ERROR=0
PROGMAIL="/bin/mail"
PROGTAR="/bin/tar"
- CONFBACKDIRFILE="/etc/backups/backdir"
- CONFBACKSUBDIRFILE="/etc/backups/backsubdir"
- EXCLUDEFILE="/etc/backups/exclude"
+ CONFBACKDIRFILE="${DIRETC}/backdir"
+ CONFBACKSUBDIRFILE="${DIRETC}/backsubdir"
+ EXCLUDEFILE="${DIRETC}/exclude"
# PROGTAR="/usr/local/bin/rar"
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 ] &&
mkdir -p $BCK_HOME/$DATA-$TIME ;
touch /tmp/$DATA-$TIME-backup ;
@@ -33,15 +45,9 @@
then
/bin/mail -s "backup error - wake host - $DATA-$TIME !!!!" $RECIPIENT ;
fi
-
-#oczyszczenie ze zbednych danych
-nice -n $NICELEVEL find /home/services/samba/uzyszkodnicy/*/profile/Dane\ aplikacji/Mozilla/Firefox/Profiles/*/Cache -type f -exec rm -v {} \;
-# >> /tmp/$DATA-$TIME-backup 1<&2;
-ERROR=$? ;
- if [ ! ${ERROR} -eq 0 ]; then
- cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error - cleaning - $DATA-$TIME !!!!" $RECIPIENT ;
- fi
+##################
# backup katalogow
+##################
while read BACKDIR;
do
NAMEDIR="${BACKDIR##*/}"
@@ -55,8 +61,9 @@
if [ ! ${ERROR} -eq 0 ]; then
cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - tar.gz - $DATA-$TIME !!!!" $RECIPIENT ;
fi
-#####
-#BACKUP PODKATALOGOW
+#########################################
+#BACKUP PODKATALOGOW katalogu wskazanego
+#########################################
while read SUBDIRBCK;
do
DIRNAME="${SUBDIRBCK##*/}";
@@ -73,43 +80,60 @@
done < ${CONFBACKSUBDIRFILE}
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} - tar.gz - ${DATA-$TIME} !!!!" ${RECIPIENT} ;
+fi
+
+###################
+#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"
fi
-######
-######
+
+#################
+# zapis backupu
+##################
+########################################
# WysĹanie na dysk innego hosta po rsync
-##
-nice -n 19 rsync -avzrp --stats --password-file="${DIRSCRIPTS}/rsyncpasswd" "${BCK_HOME}/$DATA-$TIME" $USERSTORHOST@$STORHOST::$DIRSTORHOST >> /tmp/$DATA-$TIME-backup 1<&2
-ERROR=$?
+########################################
+
+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
+ ERROR=$?
if [ ! ${ERROR} -eq 0 ]; then
cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - send to another host - $DATA-$TIME !!!!" $RECIPIENT ;
fi
-du -h ${BCK_HOME}/*${DATA}-${TIME}* > ${DIRSCRIPTS}/backup-usage
-cat "${DIRSCRIPTS}/backup-usage" >> /tmp/$DATA-$TIME-backup
-cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup OK - $DATA-$TIME" $RECIPIENT
-
-######
-######
-##
+ du -h ${BCK_HOME}/*${DATA}-${TIME}* > ${DIRSCRIPTS}/backup-usage
+ cat "${DIRSCRIPTS}/backup-usage" >> /tmp/$DATA-$TIME-backup
+ cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup OK - $DATA-$TIME" $RECIPIENT
+fi
+
+#########################
# Nagranie na plytke DVD
-##
+#########################
+
if [ $1 -eq dvd ]; then
- mkisofs -o "/var/tmp/backup-${DATA}-${TIME}.iso" -J -r -V Backup1 "/var/kopie/${DATA}-${TIME}"
+ mkisofs -o "/var/tmp/backup-${DATA}-${TIME}.iso" -J -r -V "Backup_${DATA}-${TIME}" "/var/kopie/${DATA}-${TIME}"
ERROR=$?;
if [ ! ${ERROR} -eq 0 ]; then
cat /tmp/$DATA-$TIME-backup | ${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
ERROR=$?;
if [ ! ${ERROR} -eq 0 ]; then
- cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - cdrecord - $DATA-$TIME !!!!" $RECIPIENT ;
+ cat /tmp/$DATA-$TIME-backup | ${PROGMAIL} -s "backup error ${ERROR} - dvdrecord - $DATA-$TIME !!!!" $RECIPIENT ;
fi
+#######################
+
echo "$DATA-$TIME" > $DIRSCRIPTS/backup-date
echo "$DATA-$TIME - ok" >> /var/log/backup-error
rm /var/tmp/backup-$DATA-$TIME.iso;
fi
+##############################################################
#net rpc shutdown -S "$STORHOST" -U "$USERSTORHOST"%"$PASSWD"
-####################
+##############################################################
#EOF
================================================================
---- CVS-web:
http://cvs.pld-linux.org/projekty/server-backups/backup?r1=1.3&r2=1.4&f=u
More information about the pld-cvs-commit
mailing list