/*Gostaria de que nesse script, ao invés de compactar o home todo em um
único arquivo, compactasse cada pasta do diretório home, assim no caso
da necessidade de restauração, restaturaria somente a(s) pasta(s)
necessária(s).
*/,
Ola Edson, eu tenho um script que faz exatamente isto. segue abaixo
[]´s
#! /bin/sh
######################################################
# # backup.sh # #
# # Escrito por Flavio Torres - Sob GPL # #
# # Dezembro de 2004 # #
# # v. 0.93 beta # #
# # Efetua backup de todos os arquivos # #
#####################################################
#descrição
#faz os backups dos grupos da pasta home/online com execeção dos
#diretórios da variavael nobackup.
#
#O procedimento de backup funciona da seguinte maneira:
#- é montado a pasta para armazenar o backup
#- é excluido o backup anterior
#- é feito o novo backup
#- o novo backup é testado para ver se esta funcionando
#- se nao estiver é gerado novamente
#variaveis
salvar="/backups"
diretorios=`ls /home/ -A1N`
data=$(date | cut -f 2-4 -d ' ')
nobackup="online
lost+found"
log="/var/log/backup_grupos.log"
#montando o backup
echo "----Inicio Backup Geral----" $data >> $log
while [ true ]; do
smbmount //192.168.0.2/pdcbackup /backups/ -o
username=USUARIO%SENHAip=192.168.0.2,debug=0,workgroup=ONLINE
if [ $? = "0" ]; then
echo "Sistema montado!" $data >> $log
echo "[OK] Continuando..."
break
else
echo "Erro na montagem!" $data >> $log
echo "Erro, Tentando Novamente..."
continue
fi
done
cd /
grupos=`ls /home/online/ -A1N`
for diretorio in $grupos; do
while [ true ]; do
echo "$diretorio: "
echo "excluido ..."
rm $salvar/grupos/$diretorio.tar.gz
echo "compactando ..."
tar cf - /home/online/$diretorio --exclude
/home/online/abm --exclude /home/online/programas --exclude
/home/online/transfere | gzip -c > $salvar/grupos/$diretorio.tar.gz
echo "testando ..."
if tar -ztf $salvar/grupos/$diretorio.tar.gz >> /dev/null 2>&1;
then
echo " Arquivo ok"
echo " Arquivo ok" $diretorio $data >> $log
echo
echo
break
else
echo " Erro compactando novamente!"
echo " Erro compactando novamente!" $diretorio >> $log
echo
echo
continue
fi
done
done
while [ true ]; do
echo "etc: "
echo "excluido ..."
rm $salvar/sistema/etc.tar.gz
echo "compactando ..."
tar cf - /etc | gzip -c > $salvar/sistema/etc.tar.gz
echo "testando ..."
if tar -ztf $salvar/sistema/etc.tar.gz >> /dev/null 2>&1; then
echo "Arquivo ok"
echo " Arquivo ok" $diretorio $data >> $log
echo
echo
break
else
echo "Erro compactando novamente!"
echo " Erro compactando novamente!" $diretorio >> $log
echo
echo
continue
fi
done
smbumount /backups
echo "----Backup Geral realizado com Sucesso----" >> $log
_______________________________________________________
Yahoo! Acesso Grátis - Internet rápida e grátis.
Instale o discador agora! http://br.acesso.yahoo.com/
---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html