none
Script de Backup RRS feed

  • Pergunta

  • Pessoal muito bom dia,

    Preciso criar um script em Shell para realizar um backup de uma pasta em especifico que preciso.

    Só para testar a copia da pasta criei as seguintes linhas:

    $backup_directory="C:\inetpub\logs\LogFiles"

    foreach($file in Get-ChildItem -Path $backup_directory){

    Beleza, funciona, copia a pasta, depois coloquei instrução para enviar para outro local e até ai OK,

    Mas eu quero substituir o comando de copia simples por um que copie a mesma pasta, mas só copie o diferencial, ou seja apenas o que mudou entre uma copia  eoutra, para evitar o seguinte efeito:

    • Na primeira cópia a pasta tem por exemplo 200 MB de conteudo, copia os 200...
    • Na segunda cópia a pasta ja esta com 300 MB de conteudo, ai copia os 300 MB e sobrepoe o outro...

    O que eu quero é que, imaginando o caso acima, na segunda cópia como o conteudo aumento de 200 para 300 MB, o script só copie os 100 MB novos...

    Porque se não vai chegar um momento qu eo arquivo estará com 1 GB e ele copiara tudo, ai vai gerar latencia na rede...

    Obrigado.


    Carlos Eduardo Consultor Técnico MCTS Windows Server 2008 Networking Infrastructure Configuration MCTS Windows Server 2008 Application Infrastructure Configuration ITIL V3 Fondation Certified

    quinta-feira, 1 de março de 2012 14:09

Respostas

  • Vamos falar através de exemplos:

    Primeira Cópia:

    Origem:

    A.txt

    B.txt

    Destino: inicialmente vazio

    Ação: Vai copiar A e B

    =================================================

    Segunda Cópia:

    Origem:

    A.txt (sem modificação)

    B.txt (modificado)

    C.txt (novo)

    Destino:

    A.txt e B.txt da primeria cópia

    Ação: Copia B e C (substitui o B da primeira cópia)


    Fábio de Paula Junior



    quinta-feira, 1 de março de 2012 16:25
    Moderador

Todas as Respostas

  • Use o ROBOCOPY.

    robocopy "C:\inetpub\logs\LogFiles" "c:\outrolocal" /E
    Se você quiser fazer isso pelo PowerShell vc vai ter que ficar comparando os arquivos(comparar se existe, data ou tamanho,etc...), isso vai ser lento e vai te dar um trabalho desnecessário.


    Fábio de Paula Junior

    quinta-feira, 1 de março de 2012 15:51
    Moderador
  • Fabio boa tarde tudo bem?

    Mas com esse comando consigo realizar a copia do jeito que falei? Porque vou executar a copia a cada uma ou duas horas dos logs do IIs e gostaria que a cada copia só fosse copiado o que mudou e não a pasta inteira novamente.

    Grato.


    Carlos Eduardo Consultor Técnico MCTS Windows Server 2008 Networking Infrastructure Configuration MCTS Windows Server 2008 Application Infrastructure Configuration ITIL V3 Fondation Certified

    quinta-feira, 1 de março de 2012 16:15
  • Vamos falar através de exemplos:

    Primeira Cópia:

    Origem:

    A.txt

    B.txt

    Destino: inicialmente vazio

    Ação: Vai copiar A e B

    =================================================

    Segunda Cópia:

    Origem:

    A.txt (sem modificação)

    B.txt (modificado)

    C.txt (novo)

    Destino:

    A.txt e B.txt da primeria cópia

    Ação: Copia B e C (substitui o B da primeira cópia)


    Fábio de Paula Junior



    quinta-feira, 1 de março de 2012 16:25
    Moderador
  • Ah legal Fabio, compreendi o que voce demonstrou, vou fazer uns testes seguindo essa logica.

    Obrigado por enquanto.


    Carlos Eduardo Consultor Técnico MCTS Windows Server 2008 Networking Infrastructure Configuration MCTS Windows Server 2008 Application Infrastructure Configuration ITIL V3 Fondation Certified

    quinta-feira, 1 de março de 2012 16:47
  • Fabio, mais uma coisa:

    Vou tentar inserir um comando para compactar os arquivos, voce teria alguma sugestão...


    Carlos Eduardo Consultor Técnico MCTS Windows Server 2008 Networking Infrastructure Configuration MCTS Windows Server 2008 Application Infrastructure Configuration ITIL V3 Fondation Certified

    quinta-feira, 1 de março de 2012 17:07
  • No windows não conheço forma nativa de fazer isto.

    Você vai ter que arrumara algum programa externo pra fazer isso: Sugestão: WinRar ou 7-Zip.


    Fábio de Paula Junior

    quinta-feira, 1 de março de 2012 17:14
    Moderador
  • Fabio, utilizei alguns parametros do Winrar e funcionou corretamente.

    Obrigado pelas dicas.

    Abraço.


    Carlos Eduardo Consultor Técnico MCTS Windows Server 2008 Networking Infrastructure Configuration MCTS Windows Server 2008 Application Infrastructure Configuration ITIL V3 Fondation Certified

    segunda-feira, 5 de março de 2012 18:18
  • Bom Dia, Desculpa por intervir no asunto,

    Entendi oque nosso amigo falou, uso robocopy, 

    Teria como criar script para mim efetuando esses comando citados.


    Desde Ja muito obrigo...

    Estou começando agora na aréa estou leigo no asunto ... Desculpas....
    sexta-feira, 6 de julho de 2018 13:51