eu montei esse script tem um tempo da uma ajustada pro que vc precisa que pra mim funciona 100%
eu uso hd externo formatado em ext4 e dei um label nele com o e2label (para evitar que ele monte um hd no lugar do outro etc...)
tbm uso o ssmtp para que ele me envie um status do backup diariamente.
#!/bin/bash
hora=`date +%H:%M`
data=`date +%Y-%b-%d`
echo "arquivos temporarios do bkp"
arquivo_temp1=/tmp/lx-$data.tgz
arquivo_temp2=/tmp/user-$data.tgz
arquivo_temp3=/tmp/share-$data.tgz
arquivo_temp4=/tmp/dpto-$data.tgz
arquivo_temp5=/tmp/scripts-$data.tgz
arquivo_temp6=/tmp/software-$data.tgz
arquivo_temp7=/tmp/sistemas-$data.tgz
echo "local onde sera guardado os bkps"
disp_backup="/media/smart/backup"
echo "arquivos a serem salvos no backup"
lx="/etc /root/gerencia"
user="/dados/users"
share="/dados/share"
dpto="/dados/dpto"
software="/dados/software"
scripts="/dados/scripts"
sistemas="/media/pacto/Quickly/bd /media/pacto/Aclon/bd"
echo "log dos backups"
arquivo_log=/var/log/backup/backup-$data
arquivo_log1=/var/log/backup/backuplx-$data
arquivo_log2=/var/log/backup/backupuser-$data
arquivo_log3=/var/log/backup/backupshare-$data
arquivo_log4=/var/log/backup/backupdpto-$data
arquivo_log5=/var/log/backup/backupscripts-$data
arquivo_log6=/var/log/backup/backupsoftware-$data
arquivo_log7=/var/log/backup/baqckupsistemas-$data
sync
sleep 20
sync
function execbkp {
echo "Iniciando o backup do dia $data as $hora"
if tar -czvf $arquivo_temp1 $lx > $arquivo_log1
tar -czvf $arquivo_temp2 $user > $arquivo_log2
tar -czvf $arquivo_temp3 $share > $arquivo_log3
tar -czvf $arquivo_temp4 $dpto > $arquivo_log4
tar -czvf $arquivo_temp5 $scripts > $arquivo_log5
tar -czvf $arquivo_temp6 $software > $arquivo_log6
tar -czvf $arquivo_temp7 $sistemas > $arquivo_log7
then
echo "Backup feito com sucesso"
else
echo "Ocorreram erros no backup, favor consultar o arquivo mv $arquivo_log1 $arquivo_log2 $arquivo_log3 $arquivo_log4 $arquivo_log5 $arquivo_log6 para maiores informacoes"
fi
sync
sleep 30
sync
echo "Movendo o Backup para o SMART"
mv $arquivo_temp1 $disp_backup >> $arquivo_log1 2>&1
mv $arquivo_temp2 $disp_backup >> $arquivo_log2 2>&1
mv $arquivo_temp3 $disp_backup >> $arquivo_log3 2>&1
mv $arquivo_temp4 $disp_backup >> $arquivo_log4 2>&1
mv $arquivo_temp5 $disp_backup >> $arquivo_log5 2>&1
mv $arquivo_temp6 $disp_backup >> $arquivo_log6 2>&1
mv $arquivo_temp7 $disp_backup >> $arquivo_log7 2>&1
sync
sleep 10
sync
}
echo "Iniciando Backup"
echo
echo "Montando o SMART"
if ! mount LABEL=hdbkp /media/smart; then
echo "Subject: Erro na unidade de Backup" > $arquivo_log
echo "hd externo com erro backup nao realizado !!!!!" >> $arquivo_log
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
else
execbkp
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
echo -e "Subject: Backup diario\n\n" > $arquivo_log
echo "Prezados segue o relatorio do backup" >> $arquivo_log
echo "" >> $arquivo_log
echo "$data Backup feito com sucesso" >> $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "arquivos dentro da pasta samba" >> $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "backup sistemas">> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "`du -hs /media/smart/backup/software-* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "`du -hs /media/smart/backup/sistemas-* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "backup scripts" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "`du -hs /media/smart/backup/scripts-* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "backup share" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "`du -hs /media/smart/backup/share-* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "backup Linux" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "`du -hs /media/smart/backup/lx-* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "backup usuarios" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "`du -hs /media/smart/backup/user-* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "backup departamental" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "`du -hs /media/smart/backup/dpto-* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "backup ldap" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "`du -hs /media/smart/backup/bkpldap* | sort -n`" >> $arquivo_log
sed -i "s/\/media\/smart\/backup\///g" $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "Iniciando Teste dos arquivo compactados" >> $arquivo_log
RETN=$?
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "testando bkp sistemas" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
tar -tzf /media/smart/backup/software-$data.tgz > /dev/null 2>&1
if [ $RETN -eq "0" ]; then
echo "Arquivo OK" >> $arquivo_log
else
echo "Arquivo danificado" >> $arquivo_log
fi
echo "-----------------------------------------------------------" >> $arquivo_log
tar -tzf /media/smart/backup/sistemas-$data.tgz > /dev/null 2>&1
if [ $RETN -eq "0" ]; then
echo "Arquivo OK" >> $arquivo_log
else
echo "Arquivo danificado" >> $arquivo_log
fi
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "testando bkp scripts" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
tar -tzf /media/smart/backup/scripts-$data.tgz > /dev/null 2>&1
if [ $RETN -eq "0" ]; then
echo "Arquivo OK" >> $arquivo_log
else
echo "Arquivo danificado" >> $arquivo_log
fi
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "testando bkp share" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
tar -tzf /media/smart/backup/share-$data.tgz > /dev/null 2>&1
if [ $RETN -eq "0" ]; then
echo "Arquivo OK" >> $arquivo_log
else
echo "Arquivo danificado" >> $arquivo_log
fi
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "testando bkp linux" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
tar -tzf /media/smart/backup/lx-$data.tgz > /dev/null 2>&1
if [ $RETN -eq "0" ]; then
echo "Arquivo OK" >> $arquivo_log
else
echo "Arquivo danificado" >> $arquivo_log
fi
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "testando bkp usuarios" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
tar -tzf /media/smart/backup/user-$data.tgz > /dev/null 2>&1
if [ $RETN -eq "0" ]; then
echo "Arquivo OK" >> $arquivo_log
else
echo "Arquivo danificado" >> $arquivo_log
fi
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "testando bkp Departamental" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
tar -tzf /media/smart/backup/dpto-$data.tgz > /dev/null 2>&1
if [ $RETN -eq "0" ]; then
echo "Arquivo OK" >> $arquivo_log
fi
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo -e "`df -h`" >> $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "Teste do HD" >> $arquivo_log
echo "Disco Principal" >> $arquivo_log
smartctl -H /dev/sda >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo -e "`df -h`" >> $arquivo_log
echo "" >> $arquivo_log
echo "-----------------------------------------------------------" >> $arquivo_log
echo "" >> $arquivo_log
echo "Inicio do backup as $hora" >> $arquivo_log
hora1=`date +%H:%M`
echo "Fim do backup as $hora1" >> $arquivo_log
echo "Enviando email"
fi
sync
sleep 60
sync
echo "Desmotando o SMART"
umount /media/smart
hora=`date +%H:%M`
echo "Fim do backup as $hora"