Rsync para confirmar a transferência / mv depois que tudo estiver salvo localmente

1

Existe uma maneira de rsync uma pasta para uma pasta do servidor remover, mas mova tudo somente após a transferência inteira ser feita?

Eu não quero arquivos movidos um após o outro, porque isso causaria problemas com o servidor web em execução.

Eu prefiro ter a pasta completa movida depois que tudo for transferido no servidor (o que leva algo como ~ 1s)

    
por Damiano Barbati 22.06.2017 / 11:55

2 respostas

1

Você está procurando a opção - delay-updates . De man rsync :

   --delay-updates
          This  option puts the temporary file from each updated file into
          a holding directory until the end of the transfer, at which time
          all  the files are renamed into place in rapid succession.  This
          attempts to make the updating of the files a little more atomic.
          [...]
          See  also the "atomic-rsync" perl script in the "support" subdir
          for an update algorithm  that  is  even  more  atomic  (it  uses
          --link-dest and a parallel hierarchy of files).
    
por 22.06.2017 / 14:19
0

A maneira mais segura é fazer o rsync colocar os arquivos em um diretório alternativo fora do docroot do servidor web. Em seguida, altere a configuração dos servidores para apontar o docroot para a nova pasta e sinalize ao servidor da Web para executar um "gracioso" recarregar sua configuração. Com o Apache, isso deve garantir que nenhuma solicitação seja mal administrada ou descartada.

The USR1 or graceful signal causes the parent process to advise the children to exit after their current request (or to exit immediately if they're not serving anything). The parent re-reads its configuration files and re-opens its log files. As each child dies off the parent replaces it with a child from the new generation of the configuration, which begins serving new requests immediately.

Em outras palavras, eu automatizaria isso usando um script de shell e ssh em vez de tentar encontrar opções de rsync para gerenciar seu servidor da Web.

    
por 22.06.2017 / 12:00

Tags