Articles

Linux cksum command

Aggiornato: 13/03/2021 da Computer Hope

cksum command

Nei sistemi operativi Unix-like, il comando cksum calcola un cyclic Redundancy check (CRC) e il conteggio dei byte per ogni file di input, e lo scrive in standard output.

Questa pagina copre la versione GNU/Linux di cksum.

Descrizione

Il checksum di un file è un modo semplice per verificare se i suoi dati sono stati danneggiati durante il trasferimento da un luogo all’altro. Se il valore di checksum del file è lo stesso prima e dopo il trasferimento, è improbabile che si sia verificato accidentalmente un danneggiamento dei dati, ad esempio dal rumore del segnale.

Diciamo che hai un file, myfile.txt, contenente il seguente testo:

This is my original file.

È possibile calcolare il checksum utilizzando cksum:

cksum myfile.txt

…e questo sarà l’output:

4164605383 26 myfile.txt

Qui, 4164605383 è il checksum e 26 è la quantità di dati, in byte. Se si modifica il contenuto del file in questo:

This is no longer my original file.

…ed esegui di nuovo cksum, vedrai quanto segue:

cksum myfile.txt
632554699 36 myfile.txt

Il checksum è molto diverso, e possiamo anche vedere che ci sono altri dieci byte di dati.

Il checksum sarà diverso anche se il numero di byte è uguale all’originale:

This is a corrupted file.
cksum myfile.txt
2256884274 26 myfile.txt

…e cambia radicalmente anche se solo un personaggio è diverso:

This is my original file?
cksum myfile.txt
3832066352 26 myfile.txt
Importante

Semplici checksum, come quelli prodotti dallo strumento cksum, sono utili solo per rilevare la corruzione accidentale dei dati. Non ha lo scopo di proteggere contro l’alterazione dannosa di un file. È stato dimostrato che un utente malintenzionato potrebbe apportare modifiche a un file che produrrebbe un checksum cksum identico. Pertanto, se è necessario essere assolutamente certi che un file è identico all’originale, utilizzare un metodo più potente. Consigliamo vivamente di utilizzare l’algoritmo SHA256 per verificare l’integrità dei dati. È possibile generare e verificare somme hash SHA256 utilizzando strumenti come GNU rhash.

Sintassi

La sintassi del comando cksum è molto semplice. Specificare uno o più file da controllare:

cksum ...

…oppure un’opzione:

cksum 

Se si esegue cksum senza nomi di file e senza opzioni, si crea un checksum per i dati letti dallo standard input.

Opzioni

FILE Il nome del file che si desidera controllare.
help help Visualizza un messaggio di aiuto ed esci.
version versione Visualizza le informazioni sulla versione e esci.

Esempi

cksum file.txt

Calcola il checksum e il bytecount del file.txt e output i valori con il nome del file. L’output sarà simile al seguente:

1740057581 19 file.txt

Qui, 1740057581 è il checksum, 19 è il numero di byte nel file e il file.txt è il nome del file.

cksum myfile.txt myfile2.txt

Il comando precedente genera checksum e bytecount per i file myfile.txt e myfile2.txt. L’output è simile al seguente:

3832066352 26 myfile.txt3722946153 34 myfile2.txt
cksum < myfile.txt

Il comando precedente reindirizzerà il contenuto di myfile.txt a cksum, che leggerà i dati dallo standard input e output un checksum e bytecount.

cat myfile.txt | cksum

Il comando precedente cat il contenuto di myfile.txt e pipe l’uscita a cksum, che lo legge dallo standard input.

cksum

L’esecuzione di cksum senza opzioni consente di digitare qualsiasi cosa, premendo Invio per nuove righe. Quando hai finito di inserire il testo, puoi premere Ctrl + D per segnalare la fine dello standard input e cksum emette il checksum e il bytecount del testo immesso.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *