#!/bin/bash

BACKUP_PLACE="/usr/backup/"
PID_FILE="/tmp/.cron.backup.pid"
LOG_FILE="/root/txt/cron.backup.log"

TEMP="`date +%m%d.%H%M`_$$"
BLAD="false"
alias ls='ls'
unalias ls

if [ -e $PID_FILE ]; then
    echo "$TEMP: cron.backup pracuje w tle. Kończę działanie." >> $LOG_FILE
    exit
else
    echo "###" >> $LOG_FILE
    echo "$TEMP: cron.backup zaczął archiwizację" >> $LOG_FILE
    echo "$TEMP: o czasie: `date`" >> $LOG_FILE
    echo "$$" > $PID_FILE
    echo "###" >> $LOG_FILE
fi

cd $BACKUP_PLACE
mv *.tgz *.tar.bz2 old/


################################
#for PLACE  in  /root /etc ;
for PLACE  in  /root /etc /usr/local/etc /home/nthx/cvs_repo /home/nthx;
do
    echo "$TEMP: tar $PLACE" >> $LOG_FILE
    nice tar cf `echo $PLACE | tr '/' '_'`.$TEMP.tar.bz2 $PLACE/.[a-zA-Z0-9]* $PLACE/* \
    --exclude=/etc/shadow \
    --exclude=/etc/shadow- \
    --exclude=/home/nthx/mnt \
    --exclude=/home/nthx/adv/real-database \
    --exclude=/home/nthx/images \
    --exclude=/home/nthx/music \
    --exclude=/usr/local/cvs_repo/\!trash\! \
    --use-compress-program=bzip2 || BLAD="true";
done

if [ "$BLAD" == "true" ]; then
#nie rob nic 
    echo "$TEMP: Błąd podczas przetwarzania danych" >> $LOG_FILE
else
#mozesz usunąć pliki stare
    echo "$TEMP: rm -rf $BACKUP_PLACE/old/*.tar.bz2" >> $LOG_FILE
    rm -rf old/*.tar.bz2 old/*.tgz
fi

echo "$TEMP: Dane zarchiwizowane." >> $LOG_FILE
echo "$TEMP: Oto ls -l $BACKUP_PLACE" >> $LOG_FILE
ls -l $BACKUP_PLACE >>  $LOG_FILE

rm -rf  $PID_FILE

echo "$TEMP:`date +%m%d.%H%M` cron.backup skończył archiwizację" >> $LOG_FILE