Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: A Lenda da Gávea no Ubuntu
Por nhoj
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Backup em fita DAT usando o comando tar (problemas e soluções)
Linux user
Publicado por Daniel em 07/07/2007

Login: camolez, 30588 pontos
[ Hits: 10770 ]

Backup em fita DAT usando o comando tar (problemas e soluções)

Olá companheiros e companheiras,

Depois de muito sofrimento ao realizar backup com a fita DAT, resolvi escrever esta dica passando resolução dos problemas que tive.

Depois de escrever meu script para realizar backup e agendá-lo no crontab, comecei a ter dor de cabeça.

Problema/Solução 1

Primeiro, criei um arquivo texto contendo todos os diretórios que deveriam ser salvos. O conteúdo do arquivo (chamado arquivos_backup) ficou assim:

/etc
/var/log
/home
/samba/dados

Ao executar o comando de backup:

# tar -cvf /dev/st0 -T /root/backup/arquivos_backup

Porém, ele fazia apenas o backup do diretório /etc! Descobri que isto estava acontecendo por ter feito o "arquivo_backup" no bloco de notas do Windows e o Linux não estava entendendo o formato do arquivo. Para resolver, bastou executar o comando:

# dos2unix arquivos_backup

Pronto, agora o script faz o backup de todos os diretórios.

Problema/Solução 2

Corrigido o problema com o arquivo que contém os diretórios para backup, configurei o crontab para executar o script às 02:00:

00 02 * * 1-5 root tar -cvf /dev/st0 -T /root/backup/arquivos_backup

No dia seguinte verifiquei que ainda haviam erros e o script não foi executado. Descobri que tinha que colocar o caminho completo para onde se encontra o comando tar (/bin/tar) e pronto! Backup feito, ou melhor, quase feito.

Problema/Solução 3

Depois de executar o comando:

# tar -tvf /dev/st0 > conteudo.log

para listar o conteúdo da fita DAT, descobri que ele só estava fazendo backup ate /var/log, depois mais nada. Não continha /home e nem /samba/dados/.

Depois de uma semana quebrando a cabeça, consegui achar o problema. Estava executando o comando tar com a opção "v" (de verbose, ou seja, mostre-me o que acontece). Como o comando executa no background (por estar agendado no crontab), acredito que algum buffer estava estourando. As possíveis soluções são tirar o "v" do comando ou jogar a saída do verbose para o /dev/null, que foi a minha escolha. O agendamento no crontab ficou assim:

#00 02 * * 1-5 root /bin/tar -cvf /dev/st0 -T /root/backup/arquivos_backup > /dev/null 2> /home/camolez/logbackup.log

No final joguei tudo que é resultado "positivo" para /dev/null. Se preferir acompanhar de perto, redirecione este resultado para um arquivo. Fiz isso na última instância, jogando os possíveis resultados de erro para um arquivo chamado logbackup.log na minha área.

Para ter uma melhor aparência no resultado final do arquivo logbackup.log e também acompanhar o tempo entre o início e fim do backup, fiz um script:

#!/bin/sh
#***************************************************************
# Arquivo bash backup da fita DAT
# Criado por......: Daniel C. Camolez - 25/05/2007
# Alterado por....:
#***************************************************************

# Cabeçalho do backup

/bin/echo > /home/camolez/logbackup.log
/bin/echo "*** Inicio do backup ***" >> /home/camolez/logbackup.log
/bin/date >> /home/camolez/logbackup.log
/bin/echo >> /home/camolez/logbackup.log

# fazendo o backup dos dados
/bin/echo "Enviando para fita DAT" >> /home/camolez/logbackup.log
/bin/echo >> /home/camolez/logbackup.log
/bin/tar -cvf /dev/st0 -T /root/backup/arquivos_backup 1> /dev/null 2>> /home/camolez/logbackup.log

/bin/echo >> /home/camolez/logbackup.log

# ejetando a fita DAT
/bin/mt -f /dev/st0 eject 2>> /home/camolez/logbackup.log

# Rodapé do backup
/bin/echo >> /home/camolez/logbackup.log
/bin/echo ">>> Fim do backup <<<" >> /home/camolez/logbackup.log
/bin/date >> /home/camolez/logbackup.log

Bom, é isso aí. Passei por alguns sofrimentos por falta de leitura acredito (leiam os manuais). Está aí, resolvi colocar esta dica para quem está começando a trabalhar com backup em fita DAT.

Abraços a todos,

Camolez


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Revista Espírito Livre
   Dica Linux recomendada Corrigindo o bug no gnome-panel do Ubuntu 10.04
   Dica Linux recomendada Criando pequenos pacotes TGZ
   Dica Linux recomendada Como usar seu Iphone como controle sem fio para jogar no Linux
   Dica Linux recomendada Lançada edição n. 6 da Revista Espírito Livre

Comentários
[1] Comentário enviado por renatoasantana em 17/07/2007 - 11:20h:

Muito bom!!! Estava tentando descobrir uma forma de fazer isto a tanto tempo e agora já resolvi meu problema!!! Muito obrigado!!! Boa sorte.

[2] Comentário enviado por ramos1986 em 10/03/2008 - 19:22h:

show de bola esse script cara, parabéns....


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.