Mit Checkit Dateiintegrität prüfen

2

Selbst schreibgeschützte Dateien können sich verändern. Sei es, weil ein Programm oder Skript Amok läuft, oder die SSD beziehungsweise Festplatte schleichend den Geist aufgibt. Insbesondere diese „Bitfäule“ erkennt man meist erst, wenn man ein Urlaubsfoto öffnet und der Oma ein dicker grüner Streifen über das Gesicht läuft.

Das kleine Werkzeug Checkit verspricht, manipulierte und defekte Dateien zu erkennen. Das macht Backups zwar nicht überflüssig, deckt aber zumindest Dateifehler frühzeitig auf. Zudem läuft man nicht Gefahr, ein defektes Dokument weiterzubearbeiten und somit die Situation zu verschlimmern. Des Weiteren erhält man einen Hinweis darauf, ob ein Programm die Datei (heimlich) verändert hat. Abschließend kann man mit Checkit auch noch leicht feststellen, ob die Kopie einer Datei ordnungsgemäß im Zielverzeichnis angekommen ist.

Checkit erstellt für jede Datei einen digitalen Fingerabdruck, die sogenannte Checksumme. Diese tackert es standardmäßig als Attribut an die Datei. Das hat den Vorteil, dass die Checksumme auch beim Kopieren der Datei erhalten bleibt. Allerdings muss das Dateisystem dieses Vorgehen unterstützen. Bei der unter Linux überwiegend zum Einsatz kommenden Ext-Familie ist dies der Fall.

Um Checkit in Betrieb zu nehmen, installiert man zunächst den C-Compiler, make, aclocal aus dem Automake-Paket und das Entwicklerpaket zu libattr. Unter Ubuntu führt die folgende Anweisung in einem Terminal zum Ziel:

sudo apt-get install build-essential make automake libattr1-dev

Anschließend schnappt man sich von der Checkit-Homepage die aktuelle Version und entpackt das dabei erhaltene Archiv auf der Festplatte. Das Programm übersetzt und installiert man mit dem bekannten Dreisatz:

./configure
make
make install

Jetzt muss man einmal für die (wichtigen) Dateien den digitalen Fingerabdruck berechnen und anheften lassen. Für die Datei bild1.png erledigt das in einem Terminal der Befehl:

checkit -s -o bild1.png

Der Parameter -s erzeugt eine Checksumme und heftet sie an die Datei. Sollte bereits eine solche Checksumme an der Datei kleben, wird sie überschrieben – dies erlaubt man mit dem Parameter -o.

Um gleich alle Dateien in sämtlichen Unterverzeichnissen des Ordners fotos mit einem Fingerabdruck zu bestücken, hängt man noch ein -r an:

checkit -s -o -r fotos/

Jetzt kann man jederzeit prüfen, ob sich die Dateien verändert haben:

checkit -c -r fotos/

Checkit durchläuft jetzt alle Dateien im Verzeichnis fotos und gibt für jede Datei das Prüfergebnis aus.

Hier schlug die Prüfung von Checkit bei der Datei bild3.png fehl.
Hier schlug die Prüfung von Checkit bei der Datei bild3.png fehl.

Hinterlasse einen Kommentar

2 Kommentare auf "Mit Checkit Dateiintegrität prüfen"

  E-Mail Benachrichtigung  
Neuste Älteste Beste Bewertung
Benachrichtige mich zu:

debsums macht was ähnliches für Softwarepakete

Damit auch größere Dateien >2,4GB (2^31-1) bearbeitet werden muß vor dem #include die Anweisung
#define _FILE_OFFSET_BITS 64
eingefügt werden.