hash value on directory

I want to verify integrity of folder. The folder has so many files and folders. How to calculate hash value of directory as a whole on Ubuntu. md5sum calculate at only file level.


For a list of md5sums:

find /path/to/dir/ -type f -exec md5sum {} \;

And for an overall md5 checksum:

find /path/to/dir/ -type f -exec md5sum {} \; | md5sum

Example output:

b2d5d3a5e102aae48eb6ff36c602ac75  -

Notice, at a folder with huge size, it can take very long.


Install md5deep with

sudo apt-get install md5deep

The command

md5deep -r {direcotory}

you will get a hash based on all the files in the directory. You can also use md5deep to compare hashes of the files in the dir.


I created dir-fingerprint that can be used to solve that. It creates fingerprint/hash for all the files in directory tree and saves it in a file, also telling you if the fingerprint has changed.

It can be installed with:

$ brew install nejckorasa/tap/dir-fingerprint

and used as:

$ dir-fingerprint <path_to_directory>

with output:

Old     [8a7b73f9671004edd50500bc7d3f1837d841a5c086011207259eb2d183823adf]
New     [8a7b73f9671004edd50500bc7d3f1837d841a5c086011207259eb2d183823adf]
@       <path_to_directory>/.fingerprint
Diff    false

and .fingerprint file created