Backup incremental com RSYNC PDF Imprimir E-mail
Utilizado em servidores GNU/Linux baseados em CentOS 5.2

############################################
#!/bin/bash
## Backup Incremental com RSYNC + SSH
## Editado por Guto <http://gmedeiros.net> em 08/07/2009
## Versao 2.2
############################################

date=`date +%y"."%m"."%d`
validade=8
log="${backup}/${date}.log"
backup="/aondeSeraGuardadoOBackup"
exceto="arquivosDiretoriosSembackup"
backupAtual="${backup}/${date}"
origem="/diretorio1 /diretorio2 /diretorio3"

echo "########## Iniciando Backup em `date` ##########" > ${log}

## Criando diretorio atual
if [ -e ${backup}/ultimo ]; then
backupAnterior=`cat ${backup}/ultimo`;

if [ -d ${backupAnterior} ]; then
echo "########## Backup anterior encontrado, copiando arquivos ##########" >> ${log}
cp -la ${backupAnterior} ${backupAtual} >> ${log} 2>&1
fi

## Condicao de existencia do diretorio anterior
else
echo "########## Backup nao existe, criando backup ##########" >> ${log}
mkdir ${backupAtual} >> ${log} 2>&1
fi

## Executando backup
for dir in ${origem}; do
echo "########## Iniciando backup de ${dir} ##########" >> ${log}
rsync -auv --progress --stats --exclude=${exceto} --delete ${dir} ${backupAtual} >> ${log} 2>&1
done

## Registrando data do backup atual
echo ${backupAtual} > ${backup}/ultimo

## Verificando a validade do backup
for dir in `find ${backup} -maxdepth 1 -type d -mtime +${validade}`; do
echo "########## Apagando backup fora da validade ${dir} ##########" >> ${log}
rm -rf ${dir} >> ${log} 2>&1
done