Qual é o equivalente sha256sum -c
no Windows?
Eu tenho um conjunto de arquivos muito importantes que preciso copiar e espelhar em muitos tipos diferentes de discos em muitos locais geograficamente distintos. Depois de retransmitir o conteúdo para o disco via USB, ethernet, fibra, rádio, telegrama e sinais (alguns dos quais são meios de transmissão mais confiáveis do que outros!), Quero verificar a integridade dos dados gravados no disco.
No Debian Linux, as somas de verificação de arquivos são normalmente armazenadas em um SHA256SUM
arquivo “resumo” gerado usando o sha256sum
comando. É trivial usar este comando para gerar este arquivo com as somas de verificação SHA256 recursivas de todos os arquivos no diretório e subdiretórios atuais. Também é muito trivial para o usuário utilizar este comando para verificar a integridade de todos os arquivos, de forma recursiva. Por exemplo, considere este conjunto de dados supercrítico de fotos de gatos
user@disp3274:~/Pictures$ tree
.
├── cats
│ ├── cat1.jpeg
│ ├── cat2.jpeg
│ └── cat3.jpeg
└── people
├── person1.jpeg
└── person2.jpeg
2 directories, 5 files
user@disp3274:~/Pictures$
Posso gerar o arquivo de soma de verificação da seguinte maneira
user@disp3274:~/Pictures$ time sha256sum `find . -type f` > SHA256SUMS
real 0m0.010s
user 0m0.008s
sys 0m0.002s
user@disp3274:~/Pictures$
user@disp3274:~/Pictures$ cat SHA256SUMS
b2d82e7b8dcbaef4d06466bee3486c12467ce5882e2eabe735319a90606f206a ./people/person2.jpeg
e01f7b240f300ce629c07502639a670d9665e82df6cba9311b87ba3ad23c595d ./people/person1.jpeg
53e056cc91fd4157880fb746255a2f621ebee8ca6351a659130d6228142c1e47 ./cats/cat1.jpeg
a0a73a21b9d26f1bbe4fcfce0acd21964dedf2dc247a5fe99bd9f304aa137379 ./cats/cat2.jpeg
a171fa88d431a531960b6eb312d964ed66cc35afd64bde5dda9b929ad83343f6 ./cats/cat3.jpeg
user@disp3274:~/Pictures$
E posso verificar a integridade de todos os arquivos da seguinte maneira
user@disp3274:~/Pictures$ time sha256sum -c SHA256SUMS
./people/person2.jpeg: OK
./people/person1.jpeg: OK
./cats/cat1.jpeg: OK
./cats/cat2.jpeg: OK
./cats/cat3.jpeg: OK
real 0m0.009s
user 0m0.008s
sys 0m0.000s
user@disp3274:~/Pictures$
No Windows, qual é a ferramenta interna equivalente para gerar um SHA256SUMS
(ou arquivo de resumo semelhante usando outra função hash criptográfica) e verificar a integridade de um conjunto de arquivos, recursivamente?
Responder1
New-FileCatalog e Test-FileCatalog podem fazer isso.
New-FileCatalog -Path "x:\DirectoryName" -CatalogFilePath "x:\SomeOtherDirectoryName\"
Test-FileCatalog -Path "x:\DirectoryName" -CatalogFilePath "x:\SomeOtherDirectoryName\catalog.cat"
Responder2
Eu uso fsum. https://www.slavasoft.com/fsum/ Mais rápido, mas tem problemas com diferentes páginas de código.
Outro é exf https://www.exactfile.com/exf/ Mais lento, mas entende páginas de código.