Overzicht
Het commando sum berekent de checksum en het aantal blokken van een opgegeven bestand en exporteert deze naar de standaarduitvoer. Deze waarden kunnen worden gebruikt om snel te controleren of de inhoud van een bestand is gewijzigd. Standaard wordt de berekening uitgevoerd met blokken van 512 bytes in de BSD-compatibele modus.
Belangrijkste kenmerken
- Berekening van de 16-bits checksum van een bestand
- Berekening van het aantal blokken van een bestand (standaard 512 bytes of 1KB)
- Eenvoudige controle van bestandsintegriteit en wijzigingen
- Ondersteuning voor BSD- en System V-compatibele modi
Belangrijkste opties
Het commando sum biedt enkele opties om de methode voor het berekenen van de checksum te wijzigen.
Checksum-modus
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`sum` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Leer verschillende manieren om de checksum en het aantal blokken van een bestand te berekenen met het commando sum.
Standaard checksum-berekening (BSD-modus)
echo 'Hello World' > testfile.txt
sum testfile.txt
Berekent de standaard (BSD) checksum en het aantal blokken van een bestand. (Maak testfile.txt aan en voer uit)
System V-modus checksum-berekening
sum -s testfile.txt
Berekent de checksum en het aantal blokken van een bestand in de System V-compatibele modus.
Checksum-berekening voor meerdere bestanden
echo 'Another file' > anotherfile.txt
sum testfile.txt anotherfile.txt
Berekent de checksum voor meerdere bestanden tegelijk.
Checksum-berekening van standaardinvoer
echo 'Data from stdin' | sum
Berekent de checksum van gegevens die via een pipe naar de standaardinvoer worden verzonden.
Tips & Aandachtspunten
Het commando sum is geschikt voor eenvoudige toepassingen, maar voor moderne controles van bestandsintegriteit is het raadzaam om krachtigere tools te gebruiken.
Veiligheidswaarschuwing
De 16-bits checksum die door sum wordt gegenereerd, heeft een hoge kans op conflicten (collisions). Dit betekent dat twee bestanden met verschillende inhoud dezelfde checksum kunnen hebben. Daarom is het niet geschikt voor het verifiëren van de integriteit van belangrijke gegevens.
- Lage beveiliging: 16-bits checksums zijn kwetsbaar voor conflicten en maken het moeilijk om kwaadaardige wijzigingen te detecteren.
- Beperkt gebruik: Wordt voornamelijk gebruikt voor niet-beveiligde doeleinden, zoals snelle controles van wijzigingen in bestanden tijdens ontwikkeling.
Alternatieve commando's
Voor krachtigere en veiligere controles van bestandsintegriteit is het raadzaam om de volgende commando's te gebruiken:
- md5sum: Berekent de MD5-hash. (32-cijferig hexadecimaal)
- sha1sum: Berekent de SHA-1-hash. (40-cijferig hexadecimaal)
- sha256sum: Berekent de SHA-256-hash. (64-cijferig hexadecimaal)
- cksum: Berekent de CRC32-checksum. Krachtiger dan sum, maar minder krachtig dan de md5/sha-series.
Begrip van blokgrootte
Het aantal blokken in het commando sum is de bestandsgrootte gedeeld door de blokgrootte. De BSD-modus gebruikt 512 bytes, terwijl de System V-modus 1024 bytes (1KB) gebruikt.
- BSD-blok: 512 bytes (standaard)
- System V-blok: 1024 bytes (1KB)