Created
May 3, 2010 09:03
-
-
Save vad/387895 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#! /bin/sh | |
# find the path of this script | |
ABSPATH="$(cd "${0%/*}" 2>/dev/null; echo "$PWD"/"${0##*/}")" | |
SCRIPT_PATH=`dirname "$ABSPATH" | |
export DEST_DIR=/hardmnt/bowie0/sra/sonet/backup/ | |
export AUTH_FILE=....... | |
source $SCRIPT_PATH/backup-lib.sh | |
BACKUP_CMD="pg_dump -U sonetdbmgr desktop" | |
backup sql pg_desktop_db "$BACKUP_CMD" | |
BACKUP_CMD="pg_dump -U sonetdbmgr desktop_dev" | |
backup sql pg_desktop_dev_db "$BACKUP_CMD" | |
BACKUP_CMD="pg_dump -U sonetdbmgr research_wiki" | |
backup sql research_wiki "$BACKUP_CMD" | |
BACKUP_CMD="pg_dump -U sonetdbmgr research_pds" | |
backup sql research_pds "$BACKUP_CMD" | |
BACKUP_CMD="mysqldump -u root ejabberd" | |
backup sql ejabberd_db "$BACKUP_CMD" | |
BACKUP_CMD="mysqldump -u root wikidb" | |
backup sql wiki "$BACKUP_CMD" | |
backup_files desktop_www www/desktop/html | |
backup_files www_conf "www/bowie/conf www/desktop/conf" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DAY=$(date +%d) | |
YEAR_MONTH=$(date +\%Y\%m) | |
## functions | |
put () { | |
smbclient -A $AUTH_FILE '\\fbk\ricerca\sonet' -c "cd backup\\$1 ; put $DEST_DIR/$1/$2 $2"; | |
} | |
backup_x64() { | |
EXT=$1 | |
THIS_DIR=$2 | |
BACKUP_CMD="$3" | |
REF_FN=${YEAR_MONTH}.$EXT.bz2 | |
REF=$DEST_DIR/$THIS_DIR/$REF_FN | |
if [ ! -f $REF ] | |
then | |
$BACKUP_CMD| bzip2 -9 > $REF | |
put $THIS_DIR $REF_FN | |
else | |
FN=${YEAR_MONTH}${DAY}.$EXT | |
FP=$DEST_DIR/$THIS_DIR/$FN | |
bunzip2 -kc $REF > /tmp/xdelta.1 | |
$BACKUP_CMD |xdelta3 -e -I 0 -S djw -s /tmp/xdelta.1 > $FP.vcdiff | |
rm -f $FP /tmp/xdelta.1 | |
put $THIS_DIR $FN.vcdiff | |
fi | |
} | |
backup() { | |
EXT=$1 | |
THIS_DIR=$2 | |
BACKUP_CMD="$3" | |
REF_FN=${YEAR_MONTH}.$EXT.gz | |
REF=$DEST_DIR/$THIS_DIR/$REF_FN | |
if [ ! -f $REF ] | |
then | |
$BACKUP_CMD| gzip -9 > $REF | |
put $THIS_DIR $REF_FN | |
else | |
FN=${YEAR_MONTH}${DAY}.$EXT.gz | |
FP=$DEST_DIR/$THIS_DIR/$FN | |
$BACKUP_CMD| gzip -9 > $FP | |
xdelta delta $REF $FP $FP.xdelta | |
rm -f $FP | |
put $THIS_DIR $FN.xdelta | |
fi | |
} | |
backup_files() { | |
THIS_DIR=$1 | |
FILES="$2" | |
REF_FN=${YEAR_MONTH}.gz | |
REF=/$DEST_DIR/$THIS_DIR/$REF_FN | |
if [ ! -f $REF ] | |
then | |
tar zcvf $REF --exclude '*/.svn*' -C / $FILES | |
put $THIS_DIR $REF_FN | |
else | |
FN=${YEAR_MONTH}${DAY}.gz | |
FP=$DEST_DIR/$THIS_DIR/$FN | |
tar zcvf $FP --exclude '*/.svn*' -C / $FILES | |
xdelta delta $REF $FP $FP.xdelta | |
rm -f $FP | |
put $THIS_DIR $FN.xdelta | |
fi | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment