Eu tenho dois servidores que devem ter a mesma configuração, exceto por diferenças conhecidas.
Correndo:
find / \( -path /proc -o -path /sys -o -path /dev \) -prune -o -print | sort > allfiles.txt
Posso encontrar uma lista de todos os arquivos em um servidor e compará-la com a lista de arquivos no outro servidor. Isso me mostrará as diferenças nos nomes dos arquivos que residem nos servidores.
O que eu realmente quero fazer é executar uma soma de verificação em todos os arquivos nos dois servidores e compará-los para descobrir também onde o conteúdo é diferente. por exemplo
find / \( -path /proc -o -path /sys -o -path /dev \) -prune -o -print | xargs /usr/bin/sha1sum
Esta é uma maneira sensata de fazer isso? Eu estava pensando que o rysnc já tem a maior parte dessa funcionalidade, mas pode ser usado para fornecer a lista de diferenças?
-print0
vez de-print
e emxargs -0
vez dexargs
. Você evitará problemas causados por nomes de arquivos "ímpares".