criando rotina de backup incremental
Criando um script shell para geral backup incremental…
backup_incrementa
#!/bin/bash
###
# Criado por Édson Kuzniewski (contato Θ edsonk.com.br)
# 17-02-2009
# BACKUP INCREMENTAL
# PEGA SOMENTE ARQUIVOS MODIFICADOS NO PERÍODO DE 1 DIA
###
# Data do momento no qual o backup foi gerado.
DATA=`date +%Y-%m-%d_%Hh%Mmin`
# Origem dos dados no qual vão ser feitos os backup.
ORIGEM="/home/"
# Diretório para onde vai ser enviado o backup.
DIR="/backup"
# Nome do arquivo do backup.
ARQUIVO="backup_incremental_$DATA.tgz"
# Endereço completo do arquivo do backup.
BACKUP="$DIR/$ARQUIVO"
efeito(){
echo
echo
for x in `seq 1 5`; do
echo -n ">"
sleep 0.05
done
echo -n " "
}
efeito
echo "Iniciando backup incremental..."
find $ORIGEM -mtime -1 -type f -print | tar czf $BACKUP -T -
efeito
echo "Compactado."
cd $DIR
efeito
echo "Enviando e-mail..."
echo "Backup Incremental:`du -sh ${BACKUP}`." | mail -s "[servidor] backup incremental - $DATA" email@servidor
efeito
echo "Definindo chmod para 400..."
chmod 400 $BACKUP
efeito
echo "Definindo chown para o usuário de backup..."
chown backup:backup $BACKUP
efeito
echo "Final de backup incremental."
exit 0
defina modo de execução para o arquivo backup_incremental criado…
chmod 700 backup_incremental
Depois defina no crontap o periodo para que seja executado o script, neste caso vai executar de segunda a sexta as 19h.
00 19 * * 1,2,3,4,5 root /root/scripts/backup_incremental