Apresento o "BackRE", um script de backup que busca os arquivos em outros servidores e realiza a compactação dos arquivos em um outro equipamento com uma pasta compartilhada. Além de enviar notificações para o administrador, realiza tentativas de montar as unidades remotas caso haja algum problema.
#!/bin/bash
# Script de backup virtual - BackRE
# Por: Cláudio Mercaldo
# Compacta e copia para equipamento (xxx.xxx.xxx.xxx) backup virtual
#
# Função básica:
# < c o m a n d o > < d i r. m o n t a d o > < data da cópia > <ext> <dir.local>
# rar a -r -y -ow -m3 /opt/nt/nomedoarquivo-'date +%d%m%y'.rar /arquivos/*
#
clear
#
# PROCEDURES
#
# Desmontar todas as unidades montadas anteriormente.
DMOUNT ()
{
echo "Desmontando Unidades Remotas"
smbumount /opt/pdc
smbumount /opt/sistema
smbumount /opt/dados
echo "Aguarde....."
}
# Montar as unidades para backup. Você pode trocar o nome do equipamento pelo ip correspondente.
MONTAR ()
{
echo "Montando Unidades Remotas"
mount -t smbfs -o username=root,password=senha //bkpremoto/zbackup$ /opt/pdc
TESTAR
mount -t smbfs -o username=root,password=senha //server3/dados /opt/dados
TESTAR
mount -t cifs -o username=usuário,passwd=senha //server2/sistema /opt/sistema
TESTAR
}
# Enviar email para o administrador – Não esqueça de configurar seu MTA.
EMAIL ()
{
more mensagem.txt | mail -s "[Agente BackRE] – Cópia Concluída em $(date +%d/%m/%Y)" adminstrador@dominio.com.br
}
# Verifica se as unidades foram montadas corretamente.
# Caso as unidades não sejam montadas corretamente, tentar novamente!!
TESTAR ()
{
if [ $? -ne 0 ]; then
{
echo "Erro ao Tentar Montar a Unidade!"
echo
echo "AGUARDE, Tentando Montar a Unidade Novamente"
MONTAR
}; fi
}
# EXECUÇÃO DO SCRIPT
#
DMOUNT
#
MONTAR
#
#Iniciar a compactação e cópia para o equipamento backup virtual na pasta compartilhada (bkpvirtual$).
#
# PDC
#
cd /arquivos/
rar a -r -y -ow -m3 /opt/pdc/bkpARQUIVOS-`date +%d%m%y`.rar /arquivos/*
#
# SISTEMA
#
cd /opt/sistema/
rar a -r -y -ow -m3 /opt/sistema/bkpSISTEMA-`date +%d%m%y`.rar /opt/sistema/*
#
# DADOS
#
rar a -r -y -ow -m3 /opt/dados/bkpDADOS-`date +%d%m%y`.rar /opt/dados/*
#
#
DMOUNT
#
# Envia Notificação do Backup por email.
EMAIL
#
A configuração da rede interna é apenas para que os provedores não rejeitem a mensagem.
Att.
ClaudioM
#5Comentário enviado por aprendiz_ce em 27/09/2006 - 21:45h
Olá Claudio, fiz exatamente isso!
Em "dc_relay_domains" coloquei "smtp.mail.yahoo.com.br" e depois mudei para "mail.yahoo.com.br", mas nenhuma das duas formas deu certo. O que é que pode estar dando errado? Além do acesso a internet tenho que ter mais outro serviço configurado para o envio de emais externo?
Muito obrigado pela sua atenção e aguardo retorno.
Ps. E como ficar a questão da autenticação em um servidor SMTP externo?
#6Comentário enviado por cmercaldo em 28/09/2006 - 11:17h
Mardonio.
Preciso que vc "printe" o "log" de envio dos seus testes. Vide exemplo abaixo:
Vc deve testar as variações do yahoo, isso levando em consideração que vc queira enviar a mensagem para "mardoniocavalcante@yahoo.com.br". Não podemos esquecer no entanto que o YAHOO tem configurações especiais. Se não funcionar, sugiro mandar para outra conta para fazer um teste, sempre lembrando de alterar a segunda linha (mail.yahoo.com.br) para o endereço que vc tentará enviar o email. Onde esta IPLOCAL, favor trocar pelo IPLOCAL do seu equipamento.
No aguardo!
ps. Não esqueça de "postar" o "log"
Att.
ClaudioM
#9Comentário enviado por aprendiz_ce em 28/09/2006 - 20:44h
Beleza!
#10Comentário enviado por aprendiz_ce em 28/09/2006 - 21:22h
# The following lines are desirable for IPv6 capable hosts
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Mais uma vez obrigado e fico no aguardo
#11Comentário enviado por cmercaldo em 02/10/2006 - 14:06h
Vc deve testar as variações do yahoo, isso levando em consideração que vc queira enviar a mensagem para "mardoniocavalcante@yahoo.com.br". Não podemos esquecer no entanto que o YAHOO tem configurações especiais. Se não funcionar, sugiro mandar para outra conta para fazer um teste, sempre lembrando de alterar a segunda linha (mail.yahoo.com.br) para o endereço que vc tentará enviar o email. Onde esta IPLOCAL, favor trocar pelo IPLOCAL do seu equipamento.
No aguardo!
ps. Não esqueça de "postar" o "log"
Att.
ClaudioM
#12Comentário enviado por aprendiz_ce em 02/10/2006 - 22:21h
Olá Cláudio,
Reinstalei o sistema prestando bastante atenção nas suas observações e deu tudo certinho, mas somente pra entrega de mensagens LOCAIS. Como faço agora pra enviar mensagens pra fora com no caso do "yahoo", "bol" ou "oul"? Ah, e como faço para ler as mensagens LOCAIS?
Desculpe-me pela perturbação, pois nunca tive a oportunidade de trabalhar com o EXIM, apesar de sempre ter tido essa vontade.
Obrigado mais uma vez e aguardo mais orientações.
#13Comentário enviado por cmercaldo em 03/10/2006 - 22:39h
Sua resposta esta na mensagem anterior...
Coloque no hosts um ip loopback com o smtp que deseja enviar...
Estou no aguardo!!
Att.
ClaudioM
#14Comentário enviado por crfjunior em 09/03/2007 - 11:09h
Bom dia estou confuso.... estou mantando um server web que tem o buguizilla tambem, só q aqui na empresa temos um servidor de email funcionando e os usuarios do bugzilla trocam informação via email... com devo fazr pra funcionar isso instalei o exim4(debian) mas não esta funcionando..
meu conf exim:
dc_eximconfig_configtype='smarthost'
dc_other_hostnames='mail'
dc_local_interfaces='10.100.100.14'
dc_readhost=''
dc_relay_domains='dominio'
dc_minimaldns='false'
dc_relay_nets='10.100.0.0/16'
dc_smarthost='nomedominio'
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
#15Comentário enviado por cmercaldo em 09/03/2007 - 20:28h
Junior.
Suas contas de email são locais ou estão em um provedor externo??
Preciso saber de mais informações para que eu possa ajudar.
Se preferir me adicione no seu Messenger, ok!
Até mais!!
Claudio Mercaldo
#16Comentário enviado por reimago em 03/04/2007 - 00:28h
Claudio, meu exim4 funciona quando envio um email através de uma conta de usuario comum, porem quando envio seguindo seu exemplo, o remetente root@dominio.com.br não consegue rotear o email.
Como faço pra resolver isso, já que o script vai ser executado pelo root.
Aguardo sua ajuda e agradeço desde já.
Cesar
#17Comentário enviado por cmercaldo em 03/04/2007 - 20:01h
Cesar.
Se vc configurou o arquivo update-exim4.conf, basta fazer o teste de envio abaixo:
#more mensagem.txt | mail -s "Teste de Envio" administrador@dominio.com.br
Lembrando que a conta administrador@dominio.com.br tem que ser substituida por sua conta particular de envio e recebimento.
#18Comentário enviado por chrisley em 11/12/2007 - 09:48h
Caro Amigo o seu artigo foi de grande utilidade para mim. Mas esta acontecendo alguns problemas quanto a acentos em nomes de pasta e arquivos. O que posso fazer para corrigir estes acentos.
#19Comentário enviado por cmercaldo em 06/09/2009 - 13:20h
Prezado Chrislev.
Eu não uso acentos em arquivos pelo samba, ou seja, verifique se no seu SMB.CONF existem o parametro abaixo:
unix charset = iso8859-1
display charset = cp850
Comente estas linhas com o caracter ( # ), assim não haverá mais problemas com o backup.
Se o problema persistir, pode me adicionar no msn e posso auxiliar vc na execução do script de backup que utilizo a mais de 4 anos sem problemas.
Att.
Claudio M (clmercaldo@hotmail.com)
#20Comentário enviado por removido em 14/01/2012 - 11:29h
Olá Pessoal,
Ainda sou iniciante em Linux e estou tendo que escrever um script para fazer um backup remoto dos servidores daqui. Porém, estou com uma dúvida: Em que parte do script que é feito o acesso ao servidor? No caso, o servidor que usamos é acessado por ssh. Eu poderia colar no script um comando ssh usuario@IP para acessar o servidor? Neste caso, como seria inserida a senha q é pedida para login?
Obrigada desde já.
Conto com a colaboração de todos.
Preferências de cookies
Usamos cookies essenciais para manter o site funcionando. Cookies de estatísticas e anúncios só serão carregados se você permitir.