md5deep não funciona com arquivos duplicados em diretórios diferentes

md5deep não funciona com arquivos duplicados em diretórios diferentes

Quero usar o md5deep para verificar se alguns diretórios copiados foram copiados corretamente. Mas parece que o md5deep não usa os nomes de arquivos armazenados nos arquivos .md5 gerados ao combinar!

Na verdade, isso significa que se eu copiar uma grande estrutura de diretórios (com arquivos duplicados) e algo der errado, então um diretório contém arquivos (com nomes de arquivos corretos e conteúdo errado), então o md5deep NÃO achará isso uma incompatibilidade!

EXEMPLO:

Imagine que temos a seguinte estrutura de arquivos:

photos\public_photo1.jpg
photos\public_photo2.jpg
photos\private_photo1.jpg
photos\photos_my_mother_can_see\public_photo1.jpg
photos\photos_my_mother_can_see\public_photo2.jpg

Como você pode ver, duas das fotos são arquivos duplicados!

Agora imagine que meu utilitário de cópia falhou, de modo que o CONTENT de public_photo1.jpgrealmente era o CONTENT de private_photo1.jpg. A estrutura de diretórios ainda é a mesma!

Na minha unidade de origem, fiz o seguinte para gerar o arquivo MD5:

md5deep64 -rel c:\photos\*.* > result.md5

(Eu uso caminhos relativos!)

Depois combino os arquivos com a pasta de destino:

md5deep64 -X result.md5 -r c:\photosdest

Nenhuma alteração encontrada!!

Se eu fizer uma correspondência (md5deep64 -wm result.md5 -rc:\photosdest) posso até ver como ele não usou os nomes dos arquivos para comparar:

c:\photosdest\photos_my_mother_can_see\public_photo1.jpg matched c:\photos\private_photo1.jpg
c:\photosdest\public_photo1.jpg matched c:\photos\photos_my_mother_can_see\public_photo1.jpg
c:\photosdest\public_photo2.jpg matched c:\photos\public_photo2.jpg
c:\photosdest\photos_my_mother_can_see\public_photo2.jpg matched c:\photos\public_photo2.jpg
c:\photosdest\private_photo1.jpg matched c:\photos\private_photo1.jpg

:-(

É um recurso ou um bug?

Existe alguma maneira de forçar o md5deep a comparar o MD5 de arquivos com o mesmo nome e local? ...ou devo começar a procurar outro gerador/comparador md5?

Responder1

Este é um recurso do md5deep, não um bug. Parece que você deseja usar o programa complementar hashdeep. Esse programa vem com md5deep.

md5deep foi projetado para localizar arquivos independentemente do nome do arquivo. Por exemplo, ao procurar pelo rootkit EVILEVIL.EXE, o usuário desejaria encontrar qualquer arquivo com o mesmo hash do EVILEVIL, mesmo que tivesse sido renomeado como fuzzykitten.exe.

O programa hashdeep, por outro lado, pode fazer uma auditoria, que verifica o tamanho do arquivo, localização,ehash ao combinar.

informação relacionada