Alguns arquivos não são transferidos usando o rsync entre dois servidores

1

Eu usei rsync com o parâmetro -av para migrar um site de um servidor para outro. não foi exibido nenhum erro, mas o tamanho das pastas não é o mesmo e o site não funciona corretamente. então algo está faltando. Existe algum parâmetro que copie realmente tudo? Eu tenho contas sudo em ambos os lados ofc.

Eu verifico o tamanho da pasta com du -s dir , os tamanhos são os seguintes:

old server : 2554620

new server : 2547676

está em bytes. Como faço para ter a cópia exata?

Saída de contagens de palavras:

old server :  2663    3105  175534
new server :  2665    3107  175594
    
por RayofCommand 16.08.2013 / 14:20

1 resposta

2

É possível que alguns dos arquivos não satisfaçam o tamanho padrão & rsync do rsync; encontro. Obtenha o rsync para transferir com base em somas de verificação. Será mais lento, mas se o arquivo for alterado de qualquer maneira, ele será transferido.

rsync -cav <source> <destination>

Se você quiser verificar se ele transferirá os arquivos desejados, adicione -n ao final do comando para obter uma execução a seco. Você pode então verificar a lista de arquivos perdidos, ou ainda mais fácil, se você tem um nome de arquivo específico que você sabe que não estava sendo transferido antes, apenas grep para isso!

rsync -cav <source> <destination> -n | grep some-missing-filename

ATUALIZAÇÃO: Se você não tiver certeza se o conteúdo das pastas é o mesmo, verifique facilmente o seguinte:

em cada servidor:

cd /to/root/of/your/website
find . | md5sum

E, em seguida, compare a soma de verificação md5 que é a saída, se o número é o mesmo, então você tem os mesmos arquivos (por exemplo, arquivo1 no servidor1 e no servidor2), embora isso não seja responsável pelo conteúdo do arquivo

Se você quiser ver quais arquivos existem em um, mas não em outro, então é claro que você pode listar os diretórios em arquivos:

cd /to/root/of/your/website
find . > server1.txt

... nos dois servidores e, em seguida,

diff server1.txt server2.txt

Apenas um pensamento final:

scp -r user@server1:/path/to/website /path/to/website
    
por 16.08.2013 / 14:44