Script Backup em DVDRW

Publicado por Pedro Augusto Malanga 20/12/2007

[ Hits: 5.344 ]

Download backupdvd.sh




Ola pessoal,

Aí vai mais um script que fica aguardando que seja inserido um DVDRW que logo em seguida é formatado, gerando um arquivo TAR e um backup de Firebird e manda tudo para o mesmo.

Lembrando que o DVD é formatado antes do backup, assim se alguém for utilizar em cron seria muito interessante ter alguns DVDRW para cada dia da semana, como fiz, montei 2 conjuntos de DVDRW com 14 DVDRWs assim tenho uma semana de backup.

  



Esconder código-fonte

#!/bin/bash

binFirebird="/opt/firebird/bin"
nomebanco="sistema.fdb"
errotmp="/backup/tmpTXT"
logback="/backup/logbackup.txt"
dirBackup="/backup/firebirdBK"
listaBack="/backup/config/lista.txt"
dirTar="/backup/TAR"
fireMov="/backup/firebirdMV/"
DVD="/dev/dvd"

data=`date +%H_%M_%d_%m__%Y`

echo " ======= Inicio do backup (Hora_Min_Dia_Mes_Ano): " $data >> $logback
echo -e "\a"
sleep 1
echo -e "\a"
y=0;
p=1;
while [ $y != $p ]
do

data2=`date +%H_%M_%d_%m__%Y`
echo -e "\a"
# Tenta formatar DVD
dvd+rw-format -force -blank /dev/dvd 2> $errotmp

 cat $errotmp | grep "blanking"

   TESTA=$?

 if [ $TESTA = "0" ]
   then
      p=0;
        echo " OK   == Formatacao feita com sucesso "  >> $logback
        echo " ======= Backup do banco " >> $logback
    echo   $binFirebird/gbak -b -v $nomebanco $dirBackup/Bk_$nomebanco_$data.fbk -user sysdba -password masterkey >> $logback

      tar -cvf $dirTar/GMBK_$data.tar -T $listaBack
      echo " ======= Iniciando copia para DVD - " >> $logback
      growisofs -dvd-compat -Z $DVD -J -R $dirTar/GMBK_$data.tar
   
   RETVAL=$?
     if [ $RETVAL = "0" ]
        then
                echo " OK   == GRAVACAO efetuada com sucesso " >> $logback
                echo " ======= Apagando arquivo TAR " >> $logback
      rm $dirTar/GMBK_$data.tar -f
      if [ $? = "0" ]
         then
            echo " OK   == Arquivo TAR APAGADO " >> $logback
                   else
            echo " ERRO == Problema ao apagar TAR " >> $logback
      fi
                echo " ======= Apagando arquivo FireBK " >> $logback
      rm $dirBackup/Bk_$nomebanco_$data.fbk -f
      if [ $? = "0" ]
         then
            echo " OK   == Arquivo FireBK APAGADO " >> $logback
         else
            echo " ERRO == Problema ao apagar FireBK " >> $logbak
                fi
                
             else
                echo " ERRO == ATENCAO problemas na gravacao " $data2  >> $logback
          fi      
      sleep 8
   else
      p=1;
      echo " ERRO == Problema na formatacao " $data2 >> $logback
      sleep 120
  fi
done

echo " ======= FIM do Backup " $data2 >> $logback
eject
rm $errotmp -f
exit

Scripts recomendados

SlackBuild para empacotar o Firefox (binário) pro Slackware

Conexão e Desconexão ADSL automáticas no Slackware

Instalar o screenFetch em qualquer distribuição

Script para captura de campos de formulário com conversão URL encode.

Script de logon


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts