Página 1 de 2 12 ÚltimoÚltimo
+ Responder ao Tópico



  1. #1

    Padrão Shell para backup

    Bom dia pessoal, estou precisando de uma ajuda para criar um shell para realização de um backup nos meu servidores....

    Eu possuo um servidor em uma cidade ( 192.168.3.2 )
    um outro servidor em uma outra cidade ( 192.168.4.2 )
    e mais um outro no escritorio central, q fica em outra cidade ( 192.168.0.2 )

    o que eu preciso:

    eu quero, do escritorio central ( 192.168.0.2 ) agendar para todos os dias uma cópia dos dados dos servidores 192.168.4.2 e 192.168.3.2 para uma outra maquina qualquer..

    agora, como farei isso ?

    alguem pode me ajudar ?

  2. #2

    Padrão Shell para backup

    Será q ninguém tem uma idéia de como posso fazer isso ??

  3. #3

    Padrão opa

    vc faz o seguinte

    :!/bin/bash
    tar -czvf arquivos.tar.gz diretorio_que_vc_quer_que_faça_BKP ; scp arquivo.tar.gz 192.168.4.2:/root/

    simples mais porem tem tudo :good:

  4. #4

    Padrão Shell para backup

    entendi, nao é dificil, mas o negocio é q eu queria fazer isso todos os dias à meia noite, e gravando cada um com um nome...... como se fosse algo automático... portanto na segunda seria um nome, na terça outro.... e assim por diante.


    tem jeito?

  5. #5

    Padrão opa

    tem sim, espera só um pouco que vou fazer e te passo !!

  6. #6

    Padrão Shell para backup

    o google é seu amigo:

    http://googlefor.com/Use%20A%20Porra%20Do%20Google.aspx

    http://www.google.com.br/search?hl=p...l+script&meta=

    um bocado de dicas, inclusive (como vc quer) usando o cron. Quanto ao nome, vc pode colocar qualquer coisa como backupANOMESDIA.tar.bz2 com muita facilidade, usando o "date" da máquina

    man date

    :twisted:

  7. #7

  8. #8

    Padrão Shell para backup

    Vou colocar um exemplo que usei uma vez, porém ele monta via samba o compartilhamento na máquina remota.

    Código :
    #
    # Pega data atual
    echo Coletando data atual...
    DATA=`date +%Y_%m_%d`
     
    # Dados do arquivo de backup
    echo Coletando dados da máquina e do arquivo a ser gerado...
    MAQUINA="srv.seuserver.com.br"
    ARQUIVO="backup-diario-$MAQUINA-$DATA.tar.gz"
     
    # Diretórios que serão incluídos no backup
    echo Coletando diretórios que serão incluídos no backup...
    DIRETORIOS="/home/teste/dir1 /home/alguém/dir2 /etc"
     
    # Cria o arquivo .tar.gz na pasta /home/backup
    echo Criando arquivo de backup na pasta /home/backup...
    tar zcf /home/backup/$ARQUIVO $DIRETORIOS
     
    # Monta o compartilhamento windows em uma máquina na rede
    echo Montando compartilhamento remoto na máquina local...
    mount -t smbfs -o guest //maquina/D /mnt/backup/
     
    # Copia o arquivo para o compartilhamento windows na rede
    echo Enviando arquivo de backup pela rede...
    cp /home/backup/$ARQUIVO /mnt/backup/hotsoft/diario
     
    # Remove o arquivo .tar.gz criado do servidor
    echo Removendo arquivo temporário criado no servidor...
    rm /home/backup/$ARQUIVO
     
    # Desmonta o compartilhamento da máquina remota
    echo Desmontando compartilhamento da máquina remota...
    umount /mnt/backup
     
    echo Backup realizado com sucesso!! Seus dados estão salvos!!!

    É simplão, mas tá valendo!!

  9. #9

    Padrão Re: opa

    Citação Postado originalmente por matheus_linux
    kra me adiciona ai no MSN [email protected] que te passo !!
    Cara para de falar esse negocio de msn, se tem alguma coisa a dizer diz no forum.

    falows

  10. #10

  11. #11
    Avenger
    Visitante

    Padrão Shell para backup

    Tem coisas.. [TUMMMM] que só IM resolve prá você. (dá prá se ter um retorno imediato do progresso e assim fica mais dinamica uma resolução de problema do que no forum). Ruy Netto opressor

    Agora, metendo o bedelho no tópico:
    Um dos truques para a automatização do backup que você quer seria usar chaves pública e privada do SSH e rodar os clientes ssh com a opção 'batchmode'. Essa opção desabilita a pergunta de senha e de pegar a chave (acho que você pode escolher por padrão ou negar) do servidor remoto caso ela mude. A chave publica e privada então te poupam da pergunta de senha (desde claro, que você tenha feito sua chave sem senha), e basta uma conexao manual no servidor remoto para que ele 'memorize' a chave (assumindo que tal servidor é dotado de ip fixo).
    Com os clientes ssh e scp funcionando pela chave publica/privada, você vai poder executar os comandos lá com toda a segurança como se estivesse já dentro da máquina. Daí o melhor seria fazer um ssh no servidor remoto para compactar os dados do backup e então copiar. Se não me engano, o scp já fica por padrão para compactar os dados ao enviar -- dessa forma se você transfere um arquivo de 20Mb não compactado, talvez um arquivo que vá para 9Mb compactado, você vai fazer uma transferência bem mais rápida do que o normal, 'aparentemente' até acima do link que você disponha nos pontos. Isso não significa que, ao chegar no outro lado da cópia, o arquivo vai estar compactado, não. Só durante a transferência é que o pacote enviado é compactado pelo remoto e então descompactado pelo local (destino). As opções de compactação do scp são junto da 'batchmode', e se chamam 'compression' e 'compressionlevel'.

    Bem, o objetivo do post foi só te dar uma solução prá te nortear no que você pode fazer para automatizar seu backup de forma segura. Como fazer as chaves, como transferir pelo scp ou ativar essas opções seria outro lado da história, e você acha tudo em 'man ssh', sshd ou fazendo perguntas específicas no forum sobre onde ficou com dificuldade.

    Outra alternativa seria usar o rsync (e rodar servidor rsync em cada uma das maquinas que se queira fazer o backup). Não sei porém, sobre a capacidade de criptografação dos dados transmitidos e nem da compactação durante transferencia dos dados pelo rsync.

    Espero ter ajudado um pouco.

  12. #12

    Padrão Shell para backup

    Citação Postado originalmente por Avenger
    Tem coisas.. [TUMMMM] que só IM resolve prá você. (dá prá se ter um retorno imediato do progresso e assim fica mais dinamica uma resolução de problema do que no forum). Ruy Netto opressor

    Agora, metendo o bedelho no tópico:
    Um dos truques para a automatização do backup que você quer seria usar chaves pública e privada do SSH e rodar os clientes ssh com a opção 'batchmode'. Essa opção desabilita a pergunta de senha e de pegar a chave (acho que você pode escolher por padrão ou negar) do servidor remoto caso ela mude. A chave publica e privada então te poupam da pergunta de senha (desde claro, que você tenha feito sua chave sem senha), e basta uma conexao manual no servidor remoto para que ele 'memorize' a chave (assumindo que tal servidor é dotado de ip fixo).
    Com os clientes ssh e scp funcionando pela chave publica/privada, você vai poder executar os comandos lá com toda a segurança como se estivesse já dentro da máquina. Daí o melhor seria fazer um ssh no servidor remoto para compactar os dados do backup e então copiar. Se não me engano, o scp já fica por padrão para compactar os dados ao enviar -- dessa forma se você transfere um arquivo de 20Mb não compactado, talvez um arquivo que vá para 9Mb compactado, você vai fazer uma transferência bem mais rápida do que o normal, 'aparentemente' até acima do link que você disponha nos pontos. Isso não significa que, ao chegar no outro lado da cópia, o arquivo vai estar compactado, não. Só durante a transferência é que o pacote enviado é compactado pelo remoto e então descompactado pelo local (destino). As opções de compactação do scp são junto da 'batchmode', e se chamam 'compression' e 'compressionlevel'.

    Bem, o objetivo do post foi só te dar uma solução prá te nortear no que você pode fazer para automatizar seu backup de forma segura. Como fazer as chaves, como transferir pelo scp ou ativar essas opções seria outro lado da história, e você acha tudo em 'man ssh', sshd ou fazendo perguntas específicas no forum sobre onde ficou com dificuldade.

    Outra alternativa seria usar o rsync (e rodar servidor rsync em cada uma das maquinas que se queira fazer o backup). Não sei porém, sobre a capacidade de criptografação dos dados transmitidos e nem da compactação durante transferencia dos dados pelo rsync.

    Espero ter ajudado um pouco.
    Cara não é a questão de querer ser opressor ou não, o problema é que ae perde documentação de mta coisa. Já procurei varias coisas no topico e não encontrei a resposta pois o cara acaba o papo no msn, por isso sou a favor de ter tudo no forum, apenas por esse motivo, para ter a documentação da coisa.

    falows

  13. #13
    Avenger
    Visitante

    Padrão Shell para backup

    Heh, foi só brincadeira o que falei sobre ser opressor; mas é que no final das contas daria mais trabalho resolver pelo forum mandando um post... esperando um retorno... Por isso que há certo sentido em se optar pelo IM nessas horas de problema específico. No fórum o que a gente pode é tentar 'prever' o problema do outro e postar a opinião.

    Por outro lado, podia-se resolver o problema e então colar o log da resolução do problema para se ter ele documentado. Porém, olha aí dando mais trabalho... hehe

    Eu concordo com você que ajuda ter as coisas documentadas no forum, sim, mas hei de convir que é mais prático de ser resolver determinadas situações pelo IM; quando, claro, há situações mais cômodas de serem resolvidas no forum, como é o caso do primeiro contato, quando você quer achar alguém que tenha a solução do seu problema.

    Daí o que falta seria a disponibilidade de quem abriu o tópico para, após a resolução do problema, postar mais detalhes sobre o problema (como conclusões tiradas durante a resolução) e a solução adotada -- daí resolvia o problema. O difícil é contar com essa disponibilidade. hehe

  14. #14

    Padrão ...

    Avenger,

    mesmo assim eu concordo com o Amigo Ruy,

    Não acho que as coisas devessem ser resolvidas pelo MSN, ou por e-mail, ou sei la o que...Se começou a conversa no forum, termina!!

    Se todos resolvessem pelo MSN nosso forum seria um site cheio de informações incompletas...

    E se por um acaso for realmente necessário resolver no MSN é um obrigação colocar a resposta aqui para terminar o que começou...Fazer a pergunta é facil, agora, ir com ela até o fim é difícil...

    Bem....Agora podem voltar ao tópico.....E ae resolveu??

    Há braços

  15. #15
    bonny
    Visitante

    Padrão Shell para backup

    avenger, pelo amor de deus, rsync e' uma bosta, achei melhor a solucao do ssh que recomendar rsync, o twidle ta codando um pra mim em perl com client/server, vou poder rodar nas maquinas windows, linux, bsd, solaris, aix e irix daqui.

  16. #16
    Avenger
    Visitante

    Padrão Shell para backup

    ney,

    E o treco em perl vai ter os pacotes de dados trafegados criptografados prá evitar ataques do tipo 'man in the middle'? (no caso nem o rsync criptografa, mas o ssh através daquele tando de chave, sim).

    Viva la revolución! 6)

  17. #17
    fabricio_
    Visitante

    Padrão Shell para backup

    Citação Postado originalmente por bonny
    avenger, pelo amor de deus, rsync e' uma bosta, achei melhor a solucao do ssh que recomendar rsync, o twidle ta codando um pra mim em perl com client/server, vou poder rodar nas maquinas windows, linux, bsd, solaris, aix e irix daqui.
    blasfêmia

    faca um backup de 30 gb que caia no meio da noite amigo , e depois recomece do zero

  18. #18
    bonny
    Visitante

    Padrão Shell para backup

    po, entao faz o seguinte amigao, pega um arquivo de 3k em texto, altera ele e deixa ele com 3k, voce vai ver se o rsync maravilhoso vai copiar ele.

    avenger, po, eu vo pedir pra ele fazer sim, quando terminar eu vo vender essa ferramenta pra ele pra varias empresas, baratinho, 300 conto, sistema de backup universal e seguro, a gente troca mais ideia sobre isso no msn

  19. #19
    fabricio_
    Visitante

    Padrão Shell para backup


    Código :
    [root@fabricio Desktop]# ls -l /tmp/rsync.rox rsync.rox
    -rw-r--r--  1 root root 3080 Jan 17 13:59 rsync.rox
    -rw-r--r--  1 root root 3080 Jan 17 14:00 /tmp/rsync.rox
    [root@fabricio Desktop]# head rsync.rox
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    [root@fabricio Desktop]# head /tmp/rsync.rox
    rsync sux!
    rsync sux!
    rsync sux!
    rsync sux!
    rsync sux!
    rsync sux!
    rsync sux!
    rsync sux!
    rsync sux!
    rsync sux!
    [root@fabricio Desktop]# rsync -av rsync.rox /tmp/rsync.rox
    building file list ... done
    rsync.rox
     
    sent 3178 bytes  received 42 bytes  6440.00 bytes/sec
    total size is 3080  speedup is 0.96
    [root@fabricio Desktop]# ls -l /tmp/rsync.rox rsync.rox
    -rw-r--r--  1 root root 3080 Jan 17 13:59 rsync.rox
    -rw-r--r--  1 root root 3080 Jan 17 13:59 /tmp/rsync.rox
    [root@fabricio Desktop]# head rsync.rox
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    [root@fabricio Desktop]# head /tmp/rsync.rox
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!
    rsync rox!

    problema ?? :toim: :toim:

  20. #20
    PDP-7
    Visitante

    Padrão Shell para backup

    Bem galera li sobre as opções de rsync e ssh e concordo com o privilégio do ssh, porém ninguém comento sobre o uso das chaves para melhorar a segurança da informação que eu acho indispensavel e limitar a um unico usuario a realizar o backup. Mais acho que todos já fizeram isso é claro.

    Abraço
    FreeBSD/Linux
    Na veia!!