Calculer la somme de contrôle MD5 sur une arborescence entière

Lorsque l’on effectue des transferts d’une machine à une autre, il peut arriver que des erreurs se produisent. Voici une technique permettant de vérifier que les fichiers transférés sont bien conformes aux originaux. On utilise pour cela l’algorithme Message Digest 5 qui permet de calculer une somme à partir d’un fichier. Si un seul octet venait à changer dans ce fichier, alors la somme de contrôle serait complètement différente.

Générer la somme MD5 d’un fichier

Pour calculer une somme de contrôle sur un fichier, il suffit de faire, sous GNU Linux :

md5sum mon_image.png > SUM

On pourra ensuite vérifier que le fichier n’a pas été altéré via la commande :

md5sum -c SUM

Générer la somme MD5 d’une arborescence

Dans certains cas, on a besoin de vérifier toute une arborescence de fichiers. Voici comment faire :

find /home/moi/mon_repertoire -type f -print0 | xargs -0 md5sum > SUM

La commande find va trouver tous les fichiers (option -type f) et la commande md5sum va alors calculer la somme de contrôle de chacun des fichiers reçus en paramètre.

Pour vérifier l’arborescence, on fera comme précédemment :

md5sum -c SUM