Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
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.*
Referências Adicionais
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.




