Como verificar o CRC de um arquivo?

10

Eu estava olhando esta pergunta e aparece tudo, menos crc. Existe uma boa maneira do Ubuntu por aí fazer isso?

Alter Lagos
fonte
CRC significa verificação de redundância cíclica. É um tipo de hash (inseguro), em vez de um padrão específico. en.wikipedia.org/wiki/Cyclic_redundancy_check lista muitos tipos de CRC. (CRC32 é talvez o mais comum.)
mwfearnley

Respostas:

17

Como sempre (talvez algumas vezes), o google é meu amigo:

$ sudo apt-get install libarchive-zip-perl
$ crc32 my_file
Alter Lagos
fonte
2
perl-Archive-Zipno fedora, lembre-se
Nemo
Muito útil para comparar se um arquivo dentro de um JAR é a versão correta.
Jjj
2
Adicionando o que Nemo disse, para CentOs, Redhat, Fedora e outras distribuições similares, a biblioteca é instalada comyum install perl-Archive-Zip
Terry
12

Uma maneira de calcular é:

cksum "file"

Outro é

crc32 "file"

Para usar este último comando, você precisa instalar o libarchive-zip-perlpacote

Leo
fonte
5
cksumnão é compatível com crc32, ele usa diferente algoritmo
red75prime
4

Eu usaria o interno md5sumdos programas sha fornecidos:

sha1sum (1)          - compute and check SHA1 message digest
sha224sum (1)        - compute and check SHA224 message digest
sha256sum (1)        - compute and check SHA256 message digest
sha384sum (1)        - compute and check SHA384 message digest
sha512sum (1)        - compute and check SHA512 message digest

cksum está praticamente ultrapassado nos dias de hoje por causa de seus problemas.

mdpc
fonte
11
Que problemas? Quero saber se dois arquivos são duplicados - cksumnão é bom o suficiente para esse fim?
Marc.2377 24/11/19
Talvez o "problema" seja o fato de o CRC não ser um hash criptográfico (o que significa que é fácil criar dois arquivos com conteúdos diferentes que tenham o mesmo CRC, se é isso que você está tentando fazer). No entanto, quando você está falando de erros aleatórios, o CRC não é tão ruim quanto o AFAIK.
AnthonyD973 28/01
2

cksfvO aplicativo do cksfvpacote também gera a soma de verificação CRC32.

Miki
fonte
2
você poderia dar um exemplo de uso?
Zanna
cksfv -c "file"imprime o CRC32 em stdout. Se você deseja suprimir o cabeçalho, a cksfv -c "file" 2>/dev/null | grep -v ^\;fornece o nome do arquivo + CRC32 e nenhum aviso para um diretório.
emk2203