Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #
- # DOT Indonesia - dot.co.id
- # Daily backup Script
- # Samsul Ma'arif <mail@samsul.web.id>
- #
- #set -x
- TODAY=`date +"%Y-%m-%d"`
- YESTERDAY=`date -d "1 day ago" +"%Y-%m-%d"`
- # How many days to keep? 7 is prefered
- OLDBACKUP=`date -d "7 days ago" +"%Y-%m-%d"`
- USERDIR="/home/situs/backup"
- # base directory to be backup
- SRCDIR="/home/situs/"
- DSTDIR="$USERDIR/$TODAY"
- EXCLUDES="$USERDIR/exclude_list.txt"
- LOG="$USERDIR/BACKUP-$TODAY-success.log"
- # DB access
- DBNAME="moodledb"
- DBUSER="moodleuser"
- DBPASSWORD="TWFsYW5nUmF5YUpheWEK"
- DBHOST="127.0.0.1"
- RSYNC="/usr/bin/rsync"
- # create destination directory if not exist
- if [ ! -d $DSTDIR ] ; then
- echo "Creating $DSTDIR" >> $LOG
- mkdir -p $DSTDIR
- fi
- echo "backup to $DSTDIR/backup-daily.tar.gz" >> $LOG
- cd $SRCDIR
- tar -czf $DSTDIR/backup-daily.tgz public
- # Backup Database
- echo "backup $DBNAME to $DSTDIR/$TODAY-$DBNAME.sql.gz" >> $LOG
- mysqldump --user=$DBUSER --password=$DBPASSWORD --lock-tables --databases $DBNAME | gzip -c > $DSTDIR/$TODAY-$DBNAME.sql.gz
- # Delete older than 7 days
- if [ -d $USERDIR/$OLDBACKUP ]; then
- echo "deleting old backup $USERDIR/$OLDBACKUP" >> $LOG
- rm -rf $USERDIR/$OLDBACKUP
- else
- echo "Nothing to delete!" >> $LOG
- fi
- echo "" >> $LOG
- # Logging
- echo "\nBACKUP success $TODAY" >> $LOG
- exit 0
Add Comment
Please, Sign In to add comment