você está aqui: Home  → Arquivo de Mensagens

Backups via e-mail

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 08 de Abril de 1997

Muitas vezes não é necessário que se faça um backup completo de todos os sistemas de arquivos de uma máquina. Todavia, ainda assim é importante que se salvem alguns arquivos importantes.

Uma solução para este problema é realizar o backup destes arquivos, em sua maioria arquivos de configuração, através de e-mail.

Desta forma, os arquivos são gravados diariamente e enviados via email para uma ou mais máquinas ou pessoas, onde são gravados em um arquivo em disco.

A automatização via cron, pode ser criada através da edição à crontab de uma linha como:

  0 0 * * * /usr/local/etc/saveconfig  1>/dev/null 2>/dev/nul

Desta forma, todos os dias, as 00:00 horas, o script /usr/local/etc/saveconfig é executado.

Para melhor entender o procedimento, encontra-se abaixo o script saveconfig, contendo explicações detalhadas sobre os passos seguidos:

  --------------------------<saveconfig>--------------------------------------
  #!/bin/sh
  #
  # Script para realização de backup de arquivos de configuração
  # via correio eletronico
  # Queiroz - 08/04/97
  #
  
  PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
  export PATH
  
  # A seguir é criado um arquivo no formato tar, contendo todos os arquivos
  # de configuração que se deseja salvar. A lista dos arquivos deve ser
  # criada em conjunto com todos os usuários e administradores da máquina
  # Observar que o arquivo é criado com diretórios relativos, ou seja,
  # iniciados em "." para facilitar a expansão do arquivo tar em qualquer
  # localização.
  # O arquivo tar criado é compactado utilizando-se o programa gzip
  # e redirecionado para o arquivo /tmp/machine.config.tar.gz
  
  cd /
  tar cvf - \
          ./var/spool/cron \
          ./var/named \
          ./etc/aliases \
          ./etc/dumpdates \
          ./etc/gated.conf \
          ./etc/group \
          ./etc/hostname.le0 \
          ./etc/hostname.le1 \
          ./etc/hosts \
          ./etc/hosts.equiv \
          ./etc/hosts.equiv \
          ./etc/inet \
          ./etc/vfstab \
          ./etc/vold.conf | gzip > /tmp/machine.config.tar.gz
  
  # Neste ponto, o formato do arquivo é transformado pelo comando
  # uuencode para permitir a sua transferência via mail
  
  uuencode /tmp/machine.config.tar.gz machine.config.tar.gz \
           > /tmp/machine.config.tar.gz.uu
  
  # Em seguida, o arquivo é enviado para a(s) máquinas de destino
  # onde deverá ser criado um alias que se encarregará de realizar
  # a gravação no local apropriado. Incluir na(s) máquina(s) de destino,
  # no arquivo /etc/aliases, uma linha do tipo:
  # backup: "|/usr/local/bin/deliver -b /usr/local/doc/backups/machine
  #
  # Recomenda-se também a encriptação da mensagem para aumentar
  # a segurança deste esquema visto que informações confidenciais
  # estarão sendo enviadas. Aguarde as próximas dicas ;-)
  #
  # O programa deliver é de domínio público e serve para fazer a sincronização
  # de gravação no arquivo de destino, no caso, /usr/local/doc/backups/machine.
  # De tempos em tempos este arquivo deve ser examinado e removidas as mensagens
  # mais antigas (manual ou automaticamente). 
  #
  # No nosso exemplo, o arquivo de backup é enviado para o usuário
  # queiroz e para o alias backup na máquina fserver.com.br.
  
  mail -s "Configuracao ""date +%d/%m"" (machine)" queiroz backup@fserver.com.br <
                  /tmp/machine.config.tar.gz.uu
  
  # Finalmente, os arquivos temporários gerados devem ser removidos
  
  rm /tmp/machine.config.*


 

 

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script