Aprica_Backup.sh


max21 Unternehmensgruppe
#!/bin/sh
# Copyright (C) 2005 seat-1 Software GmbH
#
# Written by: David Ayers <d.ayers@inode.at>
usage()
{
	echo Usage: $0 mandant
	echo mandant muss eine 6 stellige Zahl sein, z.B. 000100
	exit 1
}
if [ 0 -ne "`id -u`" ] ; then
  echo "Run this script as root"
  exit 1
fi
# require mandant
if [ "$#" != "1" ] ; then
	usage
fi
INTARS_MANDANT=$1
if [ -z "$INTARS_MANDANT" ] ; then
	usage
fi
INTARS_MANDANT_L=`(echo -n "$INTARS_MANDANT"|wc -c|tr -d [:space:])`
if [ "$INTARS_MANDANT_L" != "6" ] ; then
	usage
fi
umask 022
PATH=/sbin:/bin:/usr/sbin:/usr/bin
export PATH
DATE=`date +"%Y%m%d%H%M"`
INTARS_BU_PATH=/var/lib/aprica
INTARS_DB=aprica_$INTARS_MANDANT
LOCAL_IGNORE_ALWAYS="\
    --exclude shared_obj \
    --exclude shared_debug_obj \
    --exclude Temp \
    "
LOCAL_IGNORE_QUICK="\
    --exclude Ressources \
    --exclude DataArchiv \
    "
if [ "$1" = "quick" ] ; then
  LOCAL_IGNORE="$LOCAL_IGNORE_ALWAYS $LOCAL_IGNORE_QUICK"
else
  LOCAL_IGNORE="$LOCAL_IGNORE_ALWAYS"
fi
test -d $INTARS_BU_PATH/db || mkdir --parents $INTARS_BU_PATH/db
test -d $INTARS_BU_PATH/gl || mkdir --parents $INTARS_BU_PATH/gl
test -d $INTARS_BU_PATH/current || mkdir --parents $INTARS_BU_PATH/current
mysqldump -uroot -proot  \
    --opt --default-character-set=utf8 $INTARS_DB | \
    bzip2 > $INTARS_BU_PATH/db/$INTARS_DB.$DATE.sql.bz2
tar --directory=/usr/GNUstep/ $LOCAL_IGNORE \
    -jcpf $INTARS_BU_PATH/gl/Local.$DATE.tar.bz2 \
    Local/Projects Local/Library/Aprica
rm -f $INTARS_BU_PATH/current/$INTARS_DB.current.sql.bz2
rm -f $INTARS_BU_PATH/current/Local.current.tar.bz2
ln -s $INTARS_BU_PATH/db/$INTARS_DB.$DATE.sql.bz2 \
      $INTARS_BU_PATH/current/$INTARS_DB.current.sql.bz2
ln -s $INTARS_BU_PATH/gl/Local.$DATE.tar.bz2 \
      $INTARS_BU_PATH/current/Local.current.tar.bz2
find $INTARS_BU_PATH/gl -daystart -mtime +14 -name "Local.*.tar.bz2" \
    | xargs --no-run-if-empty rm 
find $INTARS_BU_PATH/hd -daystart -mtime +14 -name "htdocs.*.tar.bz2" \
    | xargs --no-run-if-empty rm 
find $INTARS_BU_PATH/db -daystart -mtime +30 -name "$INTARS_DB.*.sql.bz2" \
    | xargs --no-run-if-empty rm 
ls -l $INTARS_BU_PATH/db
ls -l $INTARS_BU_PATH/gl
ls -l $INTARS_BU_PATH/current
df -h
Foto