+ Responder ao Tópico



  1. #1
    brunico
    Ola ,
    gostaria de saber se tem a possibilidade de os backups de todos dias serem jogados diariamente na numa fita(91GB), sem apagar os anteriores, como se fossem diretórios para cada dia na fita. (Apenas sobrescrever backups de semana em semana).

  2. #2
    rvgugisch
    Aqui na empresa a gente usa o TAR numa fita DLT para fazer os backups.
    O processo aqui é o seguinte:
    * Segunda-feira é feito o backup FULL
    * Terça a sábado é feito incremental.

    Cada um dos backups gera uma posição na fita.
    O de segundo é a posição 0 (zero)
    O de terça é a posição 1 e assim até sábado (que é a 5)

    Acredito que o script esteja mais ou menos documentado e seja de fácil entendimento! Qualquer coisa entre em contato direto comigo (rvgugisch AT ig PONTO com PONTO br!

    Eu o utiliza aqui há mais de ano sem problemas! Coloquei o mesmo no cron para rodar todos os dias às 23:55 horas!

    Se tiver alguma alteração legal, me envie, vamos melhorar!!!


    Segue abaixo o script utilizado! Pode ver se te resolve o problema!


    **********************************************************
    #!/bin/sh
    #
    ######################################################################
    #
    # Script de backup em fita com TAR
    #
    # Verificar as variaveis:
    # SERVIDOR - nome do servidor a que se refere o backup
    # DIRETORIO - diretorio incial do backup
    #
    ######################################################################

    #echo "Ajuste das variaveis a serem utilizadas"
    SERVIDOR="Servidor 3 - Dados" # Servidor a que se refero o backup
    DIRETORIO="/home" # Diretorio inicial do backup
    DOW=`date +%w` # Dia da Semana
    DATE=`date +%D` # Data atual
    DAY=`date +%A` # Dia do Mes
    INICIO=`date +%A-%T` # Data/Hora de inicio
    DEVICE="/dev/st0" # Dispositivo para rebobinar a unidade
    NDEVICE="/dev/nst0" # Dispositivo para retorno do backup
    REWIND="mt -f $DEVICE rewind" # Rebobinar a fita
    EJECT="mt -f $DEVICE eject" # Ejetar a fita
    EOD="mt -f $NDEVICE eod" # Vai para final da fita
    FSF="mt -f $NDEVICE fsf" # Vai para uma marca da fita

    #
    # Como nao tenho o sendmail no meu server nao posso mais
    # utilizar ele para mandar e-mails, por isso nao uso mais a variavel
    # abaixo
    # Lista de usuarios que receberao e-mails
    MAILLIST="xxx@dominio.com.br, \
    yyy@dominio.com.br, \
    backup@dominio.com.br"

    # se dia da semana for 1 entao e segunda-feira
    # Backup completo
    if [ $DOW = "1" ]
    then
    #
    #echo " - Rebobinar a fita"
    $REWIND

    #echo " - cria um arquivo para controle do ultimo backup completo realizado"
    echo $DATE > /tmp/.LASTFULL

    #echo " - Criar arquivos: CORPO.TXT (corpo do e-mail) e "
    #echo " BACKUP.TXT (anexo do e-mail)"
    echo $SERVIDOR > /tmp/corpo.txt
    echo $SERVIDOR > /tmp/backup.txt
    echo "==============================================================" >> /tmp/corpo.txt
    echo "==============================================================" >> /tmp/backup.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/backup.txt
    echo "Backup Completo - ${DAY} / ${INICIO}" >> /tmp/corpo.txt
    echo "Backup Completo - ${DAY} / ${INICIO}" >> /tmp/backup.txt
    echo "--------------------------------------------------------------" >> /tmp/corpo.txt
    echo "--------------------------------------------------------------" >> /tmp/backup.txt

    #echo " - cria o backup em fita incluindo no arquivo backup.txt os arquivos"
    #echo " incluidos no backup"
    #tar -cvvf $NDEVICE /ibratec >> /tmp/backup.txt
    tar -cvvf $NDEVICE $DIRETORIO >> /tmp/backup.txt

    #echo " - rebobina a fita"
    $REWIND

    #echo " - Ajusta a fita para o backup 0"
    $FSF 0

    #echo " - Inclui informacoes de verificacao dentro do arquivo backup.txt"
    echo " " >> /tmp/backup.txt
    echo " " >> /tmp/backup.txt
    echo " " >> /tmp/backup.txt
    echo "--------------------------------------------------------------" >> /tmp/backup.txt
    echo " - Verificando o backup de ${DAY}" >> /tmp/backup.txt
    FINAL=`date` # Data do inicio da verificacao
    echo " iniciado em ${FINAL}" >> /tmp/backup.txt

    #echo " - Compara entre a gravacao e os arquivos originais"
    tar -dvf $NDEVICE >> /tmp/backup.txt

    FINAL=`date` # Data de termino da verificacao
    echo " finalizado em ${FINAL}" >> /tmp/backup.txt

    #echo " - rebobina a fita"
    $REWIND

    #echo " - copia o arquivo de controle da ultima copia completa"
    cp /tmp/.LASTFULL /etc/.LASTFULL
    cp /tmp/.LASTFULL /etc/.LASTINC

    #echo " - Concui as informacoes nos arquivos corpo.txt e backup.txt"
    FINAL=`date` # Data de termino do backup
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/backup.txt
    echo "----------------------------------------------------" >> /tmp/corpo.txt
    echo "----------------------------------------------------" >> /tmp/backup.txt
    echo "Backup Completo finalizado em ${DAY} as ${FINAL}" >> /tmp/corpo.txt
    echo "Backup Completo finalizado em ${DAY} as ${FINAL}" > /tmp/backup.txt

    #echo " - compacta o arquivo backup.txt"
    gzip /tmp/backup.txt

    # Envia o antigo de e-mail
    # se tiver o sendmail instalado na maquina pode usar este comando
    #mail $MAILLIST -s "Backup Completo" < /tmp/backup.txt.gz

    #echo " - envia por e-mail SEM arquivo de LOG"
    metasend -b -F zzz@dominio.com.br \
    -s "${SERVIDOR} - Backup Completo - ${DATE} - ${DAY}" \
    -t aaa@dominio.com.br \
    -e quoted-printable \
    -m 'text/plain; charset="ISO-8859-1"' \
    -f /tmp/corpo.txt

    #echo " - envia por e-mail COM arquivo de LOG"
    metasend -b -F zzz@dominio.com.br \
    -s "${SERVIDOR} - Backup Completo - ${DATE} - ${DAY}" \
    -t backup@dominio.com.br \
    -e quoted-printable \
    -m 'text/plain; charset="ISO-8859-1"' \
    -f /tmp/corpo.txt \
    -n \
    -e base64 \
    -m 'application/x-gzip; name="backup.txt.gz"' \
    -f /tmp/backup.txt.gz \
    -D backup.txt.gz \
    -S 100000000
    else
    #echo "* OUTROS DIAS"
    if [ $DOW <> 0 ]
    then
    #echo " - para o final da fita"
    $EOD

    #echo " - cria um arquivo para controle do ultimo backup incremental realizado"
    echo $DATE > /tmp/.LASTINC

    #echo " - Criar arquivos: CORPO.TXT (corpo do e-mail) e "
    #echo " BACKUP.TXT (anexo do e-mail)"
    echo $SERVIDOR > /tmp/corpo.txt
    echo $SERVIDOR > /tmp/backup.txt
    echo "==============================================================" >> /tmp/corpo.txt
    echo "==============================================================" >> /tmp/backup.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/backup.txt
    echo "Backup Incremental" >> /tmp/corpo.txt
    echo " ${DAY} / ${INICIO}" >> /tmp/corpo.txt
    echo "Backup Incremental" >> /tmp/backup.txt
    echo " ${DAY} / ${INICIO}" >> /tmp/backup.txt
    echo "--------------------------------------------------------------" >> /tmp/corpo.txt
    echo "--------------------------------------------------------------" >> /tmp/backup.txt

    #echo " - cria o backup em fita incluindo no arquivo backup.txt os arquivos"
    #echo " incluidos no backup"
    #tar -cvvf $NDEVICE --newer `cat /etc/.LASTINC` /Ibratec >> /tmp/backup.txt
    tar -cvvf $NDEVICE --newer `cat /etc/.LASTINC` $DIRETORIO >> /tmp/backup.txt

    #echo " - rebobina a fita"
    $REWIND

    #echo " - Ajusta a fita para o backup atual"
    $FSF `expr $DOW - 1`

    #echo " - Inclui informacoes de verificacao dentro do arquivo backup.txt"
    echo " " >> /tmp/backup.txt
    echo " " >> /tmp/backup.txt
    echo " " >> /tmp/backup.txt
    echo "--------------------------------------------------------------" >> /tmp/backup.txt
    echo " - Verificando o backup de ${DAY}" >> /tmp/backup.txt
    FINAL=`date` # Data do inicio da verificacao
    echo " iniciado em ${FINAL}" >> /tmp/backup.txt

    #echo " - Compara entre a gravacao e os arquivos originais"
    tar -dvf $NDEVICE >> /tmp/backup.txt

    FINAL=`date` # Data de termino da verificacao
    echo " finalizado em ${FINAL}" >> /tmp/backup.txt

    #echo " - rebobina a fita"
    $REWIND

    #echo " - copia o arquivo de controle da ultima copia completa"
    cp /tmp/.LASTINC /etc/.LASTINC

    #echo " - Concui as informacoes nos arquivos corpo.txt e backup.txt"
    FINAL=`date` # Data de termino do backup
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/backup.txt
    echo "--------------------------------------------------------------" >> /tmp/corpo.txt
    echo "--------------------------------------------------------------" >> /tmp/backup.txt
    echo "Backup Incremental finalizado em:" >> /tmp/corpo.txt
    echo " ${DAY} as ${FINAL}" >> /tmp/corpo.txt
    echo "Backup Incremental finalizado em:" >> /tmp/backup.txt
    echo " ${DAY} as ${FINAL}" >> /tmp/backup.txt
    echo "--------------------------------------------------------------" >> /tmp/corpo.txt
    echo "--------------------------------------------------------------" >> /tmp/backup.txt

    #echo " - compacta o arquivo backup.txt"
    gzip /tmp/backup.txt

    # Envia o antigo de e-mail - ver comantarios do comando
    # acima (segunda feira
    #mail $MAILLIST -s "Backup Incremental" < /tmp/backup.txt.gz

    #echo " - envia por e-mail"
    metasend -b -F aaa@dominio.com.br \
    -s "${SERVIDOR} - Backup Incremental - ${DATE} - ${DAY}" \
    -t xxx@dominio.com.br \
    -e quoted-printable \
    -m 'text/plain; charset="ISO-8859-1"' \
    -f /tmp/corpo.txt

    metasend -b -F aaa@dominio.com.br \
    -s "${SERVIDOR} - Backup Incremental - ${DATE} - ${DAY}" \
    -t backup@dominio.com.br \
    -e quoted-printable \
    -m 'text/plain; charset="ISO-8859-1"' \
    -f /tmp/corpo.txt \
    -n \
    -e base64 \
    -m 'application/x-gzip; name="backup.txt.gz"' \
    -f /tmp/backup.txt.gz \
    -D backup.txt.gz \
    -S 100000000
    fi
    fi

    # Se for sabado, enviar e-mail para trocar a fita
    if [ $DOW = "6" ]
    then
    #echo " "
    #echo " "
    #echo " "
    #echo "* TROCA DE FITA"
    #echo " - Cria o arquivo corpo.txt para inserir no e-mail de troca da fita"
    echo $SERVIDOR > /tmp/corpo.txt
    echo "==============================================================" >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo "O Backup semanal foi terminado em:" >> /tmp/corpo.txt
    echo " ${DAY} / ${INICIO}!" >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo "Favor trocar a fita" >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo "Grato" >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt
    echo "Administrador de Backups" >> /tmp/corpo.txt
    echo "backup@dominio.com.br" >> /tmp/corpo.txt
    echo " " >> /tmp/corpo.txt

    #echo " - Se for sabado entao ejetar a fita enviar e-mail para TROCAR A FITA"
    $EJECT

    #echo " - Envio de e-mail"
    metasend -b -F aaa@dominio.com.br \
    -s "Backup Semanal Finalizado $SERVIDOR - TROCAR A FITA" \
    -t xxx@dominio.com.br \
    -e quoted-printable \
    -m 'text/plain; charset="ISO-8859-1"' \
    -f /tmp/corpo.txt

    fi

    #echo " "
    #echo " "
    #echo "* Apagar os arquivos temporarios gerados"
    rm -f /tmp/corpo.txt
    rm -f /tmp/backup.txt.gz

    #
    #
    # FIM
    #






Tópicos Similares

  1. Backup em Fita dat com CPIO
    Por srangel no fórum Servidores de Rede
    Respostas: 0
    Último Post: 05-01-2005, 16:15
  2. Backup em fita dat apresenta erro ao ler o conteudo
    Por IRAM FARIA no fórum Servidores de Rede
    Respostas: 6
    Último Post: 05-12-2004, 09:51
  3. Backup em Fita DAT [ Red Hat 9 ]
    Por ZEDjjs no fórum Servidores de Rede
    Respostas: 1
    Último Post: 29-09-2004, 14:43
  4. backup em fita
    Por letsay no fórum Servidores de Rede
    Respostas: 4
    Último Post: 15-01-2004, 15:14
  5. Backup em Fita
    Por no fórum Servidores de Rede
    Respostas: 1
    Último Post: 24-10-2003, 19:03

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L