Script para backups automáticos do seu servidor

Quem gerencia servidores sabe o quanto é importante salvar, fazer backup de tudo ... bem, em caso de problema ou falha, o backup será nosso melhor amigo e nos ajudará a restaurar os serviços 🙂

Há algum tempo atrás (vários meses ... alguns meses) aqui, as configurações não eram copiadas em servidores, logs ou algo parecido automaticamente. E não poderia ser assim haha, pensei em usar Bacula, mas Deus !! Pelo que eu queria, isso era muito, muito complicado na minha opinião, se o que você quer é simplesmente fazer backups e salvá-los (ou enviá-los para outro servidor, ou por e-mail) não há necessidade de usar o Bacula, com um script simples todos os problemas são resolvidos, por isso decidi fazer o meu próprio script e fiquei mais satisfeito 😀

E justamente esse roteiro é o que compartilho com vocês, explico muito brevemente o que ele faz:

  1. Crie uma pasta onde tudo será salvo, e esta pasta será compactada.
  2. Esta pasta terá o nome do ano, mês e dia atual, por exemplo hoje essa pasta se chamaria: 2012-04-26
  3. Copiar / Etc / (e todo o seu conteúdo) para essa pasta.
  4. Copiar registros (/ var / log /) para essa pasta mencionada.
  5. Exporte os bancos de dados MySQL que temos.
  6. Comprimir com uma senha (SENHA) nessa pasta, compacte-a em RAR.
  7. Gerar um arquivo (dados.info) com todo o log do acima feito (registro de cópia de arquivo e compressão para .rar), além de colocar o tamanho (em MBs) do arquivo .RAR, que recordo, contém tudo o que decidimos salvar.
  8. Exclua a pasta na qual colocamos os arquivos e depois compactamos, pois se já temos essa pasta compactada, não há necessidade de tê-la também descompactada.
  9. Envie emails para administradores ou pessoas ligadas ao servidor, informando que o backup foi feito corretamente, e o arquivo com o log de tudo será enviado anexado a esse email (dados.info.rar)

Obviamente, esse script não deve ser executado e agora haha, você deve abri-lo e alterar sua senha do MySQL nele, pois não sei a senha do root de seus bancos de dados rsrs !!! quero que a notificação seja enviada, pois os e-mails que coloco são apenas por exemplo.

Se você quiser compactá-lo em .tar.gz e não em . Raramente (como o script é configurado) aí eu deixei a linha comentada, é só descomentar e comentar no . Raramente. Da mesma forma, se você deseja copiar por SSH (usando SCP) o arquivo compactado para outro servidor ou hospedagem, também deixei a linha no final (está comentado), nela você deve colocar os dados de acesso ao seu servidor ou hospedagem ( usuário e domínio ou URL do servidor), mas para que isso funcione, você também deve configurar SSH sem senha, já que o script não poderá acessar o servidor se não tiver acesso permitido a ele.

Ah, se você quiser que a coisa de envio de e-mail funcione, você deve ter postfix instalado no servidor, quase todos instalam postfix mas hey, o esclarecimento é válido 🙂

Embora ... eles pudessem modificar e usar um script em Python que eu saí a um tempo atrásmas acho que funcionaria um pouco mais ^ - ^ U

E bem, só falta sair do script:

Script de backup VPS

Lembre-se de que você deve dar permissões de execução (chmod + x vps_backup-script.sh)

Para que funcione todos os dias às 10h, eles colocam isso em um terminal:

echo "* 10    * * *   root    cd /root && ./vps_backup-script.sh" >> /etc/crontab && /etc/init.d/cron restart

Supondo que o script seja salvo como: /root/vps_backup-script.sh

Bem, não quero que pareça muito complicado, o que não é haha, na verdade isso é algo extremamente simples, só que quando você vê pela primeira vez pode ser um pouco assustador 🙂

Me diga se tiver alguma dúvida, dúvida ou sugestão, você sabe que gosto de ajudar 😀

lembranças

PD: Esclareço que não sou nem me considero um programador haha, nem perto rsrs !! Eu sei que o script pode ser otimizado muito mais, mas hey… Eu não sou um programador 🙂


29 comentários, deixe o seu

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   faustode dito

    Arrumando,

    Atenciosamente,

    Como você é muito interessante, mas uma ressalva; Se esse script for executado hoje, ele se chamará 2012/04/25, hoje é o dia da vigilância.

    obrigado
    faustode

    1.    KZKG ^ Gaara dito

      HAHAHA verdade hahaha, é que eu meio que moro no futuro ... rsrs !!!

  2.   homem linux dito

    Muito interessante, na verdade me mostra como fazer várias coisas, estou desenvolvendo o meu próprio e vou pegar alguns trechos de seu código para adicionar funcionalidades.

    No meu caso, usarei rsync em vez de cp para copiar os arquivos.

    Felicidades !!

    1.    KZKG ^ Gaara dito

      Sim, usar o rsync é uma boa ideia, mas eu preferi usar o cp porque, vou copiar os arquivos para uma pasta em branco, não vou sincronizar com nenhuma outra informação haha ​​é por isso que acabei de usar o cp :)

      Se quiser saber mais dicas de bash, verifique a tag aqui no site… você vai descobrir como fazer lock de arquivos, controlar quais usuários podem executar o script, etc 😀
      https://blog.desdelinux.net/tag/bash/

      Saudações e obrigado por comentar 🙂

  3.   Edwin dito

    um servidor com ssh sem senha?

    1.    KZKG ^ Gaara dito

      Não sem senha, mas para aceitar conexões SSH com confiança de um determinado IP, isso é feito de forma MUITO segura com o uso de chaves públicas e privadas, no link que deixei explico tudo detalhadamente

      1.    Edwin dito

        Com as chaves sim, por um momento fiquei com medo xD

        1.    KZKG ^ Gaara dito

          RI MUITO!!! nem que eu fosse suicida rsrsrs !!!

          1.    Coragem dito

            Não, mas dentro das coisas nós somos, você realmente gosta de reclamar

  4.   andresnetx dito

    ótimo esse script.
    Espero que continuem postando scripts. ajude aqueles de nós que estão mudando para o Linux a serem mais produtivos e a reduzir o tempo de aprendizado.

    1.    KZKG ^ Gaara dito

      😀 obrigado por comentar.
      Em breve publicarei outra dica sobre o bash 😉

      lembranças

      1.    armações toupeira dito

        Obrigado louco! um dia vou retribuir os favores que os camaradas desta linda comunidade linux me dão!

  5.   ivan dito

    Como posso copiar o conteúdo de vários arquivos de log e colocá-lo em um único arquivo ,,,, automaticamente a cada 5 minutos, levando em consideração ,,,,, que o conteúdo dos arquivos a serem copiados é medido constantemente

    1.    Elwuilmer dito

      Minha recomendação, (sugestão), seria uma contribuição… Crie uma condição para que a cada 5 minutos ele verifique o arquivo ou arquivos, seja com:

      * último acesso = atime
      * última modificação = mtime
      * última alteração de informação = ctime

      Assim, se houver alguma alteração nos arquivos, agrupe-os e / ou leia-os (cat) e envie-os> arquivos de logs.

      Este é um exemplo claro, uma questão de testar, tentar, verificar e modificar.

  6.   KZKG ^ Gaara dito

    Testando o plugin do Caché ...

  7.   Santiago dito

    Informação muito boa, a verdade é que me ajudou muito, estou fazendo um grande projeto (obviamente é fictício, porque é do estúdio) e essa informação foi muito boa para mim.
    Muito obrigado!

  8.   Morena dito

    Como você faria um script de shell que:?
    Peça ao usuário para especificar o nome do diretório para backup
    Pergunte o local onde você fará o backup do diretório
    Incluir data de backup

    1.    KZKG ^ Gaara dito

      Olá,

      Com "ler", posso pedir ao usuário todos os dados, depois atribuí-los a variáveis ​​e pronto.

      Escreva para meu e-mail se tiver dúvidas: kzkggaara[at]desdelinux[ponto Net

      lembranças

      PS: A data do backup já está incluída no script.

  9.   ana_gaby dito

    apresentar um script mais simples para fazer backup de pastas do Ubuntu e transferi-las por ftp para outro servidor, obrigado

  10.   banheiro dito

    Olá, como faço um backup de todo o sistema operacional linux e envio para outro pc. Gostaria muito de receber sua atenção, muito obrigado !!

  11.   Franco Valdettaro dito

    Você poderia me enviar o script para o meu email fvaldettaro@gmail.com por favor.

  12.   Javier dito

    Você poderia, por favor, me enviar o script para meu e-mail, um milhão de agradecimentos, saudações.

  13.   Wuilmer Bolivar dito

    Bom dia amigo, acho que você está com problema no subdomínio "colar" pois estava verificando alguns códigos/scripts publicados que levam à colagem.desdelinux e todos eles me redirecionam para o blog.desdelinux.

  14.   Esquilos na rede dito

    Sim, não é possível acessar o script porque cola. redireciona você, você pode enviá-lo para outro lugar?

    1.    Alex Streaming dito

      O problema para obter o script foi resolvido?

      Obrigado.

      1.    Luigys toro dito

        Foi consertado, agora eles podem acessar os códigos

      2.    Esquilos na rede dito

        Agora sim, obrigado!

  15.   paco dito

    boa tarde, gostaria de poder baixar o script, seria possivel fazer o upload novamente, agora nao esta disponivel

  16.   Ramiro dito

    Olá,
    Muito boa contribuição! Posso pedir o script para fazer o download? Muito obrigado 🙂