rubis
(usa CentOS)
Enviado em 12/10/2015 - 13:14h
E ai pessoal,
tenho um script de backup que ja utilizo na empresa, mas to querondo aprimoralo tendo em vista que sou iniciante em shell to precisando de uma ajuda de vocẽs. Meu cenário hoje é o seguinte. nos meu servidores onde faço o bkp tenho discos montados em outro servidor onde é um dataprotector, hoje se este nao esta montado ja da problema, queria um meio de o script montar o disco no final descmotar, outra duvida é o arquivo de log, ele ele não esta criando o arquivo do log com a data no final. Estou testando a integridade dos arquivos para ter certeza que o arquivo original é o mesmo do copiado para do server do dataprotector, porem não sei um meio de fazer essa verificação pelo tamanho do arquivo, consegui fazer só por md5, mas nao me ajuda muito. Segue script que utilizo.
LOG="/servidor/log_bkp$DATA.txt"
ERRO=$?
DATA=`date +%d%m`
DIA_ATUAL=`date +%m%d`
DIR_BKP="/BKP"
DIR_CP="/DATAPROTECTOR/1001/"
ARQUIVO_CP=${DIR_CP}/bkp_kw_1001_${DIA_ATUAL}.tar.bz2
ARQUIVO_ORI=${DIR_BKP}/bkp_kw_1001_${DIA_ATUAL}.tar.bz2
cd /retag
mysqlcheck -uroot -p123456 -a --auto-repair controle
mysqlcheck -uroot -p123456 -a --auto-repair retag
#EFETUANDO BACKUP
if [ $ERRO != "0" ]
# Grava o LOG com o código do Erro encontrado
then
echo "---------Backup `date +%d-%m`---------" >> $LOG
echo "Erro na gravacao do backup = $ERRO" >> $LOG
echo "---------------------------------------" >> $LOG
# Senao (Caso o retorno seja 1, ou seja, sem erro)
else
# Grava o log informado que tudo esta OK
echo "---------Backup `date +%d-%m`---------" >> $LOG
echo "gravacao do backup esta ok" >> $LOG
if [ -d ${DIR_BKP} ]
then
if [ -f ${DIR_BKP}/bkp_kw_1001_${DIA_ATUAL}.tar.bz2 ]
then
rm -f ${DIR_BKP}/bkp_kw_1001_${DIA_ATUAL}.tar.bz2
fi
mysqldump -uroot -p123456 -a -c --database controle > ${DIR_BKP}/xxx.sql
mysqldump -uroot -p123456 -a -c retag >>${DIR_BKP}/xxx.sql
mysqldump -uroot -p123456 -a -d retag >>${DIR_BKP}/xxx.sql
mysqldump -uroot -p123456 -a -c retag mercador >>${DIR_BKP}/xxx.sql
tar -jcvf ${DIR_BKP}/bkp_kw_1001_${DIA_ATUAL}.tar.bz2 ${DIR_BKP}/*.sql
${DIR_BKP}/bkp_kw_1001_${DIA_ATUAL}.tar.bz2 >> $ARQUIVO_ORI
rm -f ${DIR_BKP}/*.sql
fi
fi
cp -rpvf ${DIR_BKP}/bkp_kw_1001_${DIA_ATUAL}.tar.bz2 ${DIR_CP}
md5sum $ARQUIVO_ORI
md5sum $ARQUIVO_CP
if [ ${ARQUIVO_ORI} == ${ARQUIVO_CP} ]; then
echo "Integridade dos arquivos está OK." >> $LOG
else
echo "Diferença na integridade dos arquivos." >> $LOG
fi
Aguardo ajuda.