hash value on directory
10,902
Solution 1
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.
Solution 2
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.
Solution 3
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
Related videos on Youtube
Author by
user3734225
Updated on September 18, 2022Comments
-
user3734225 almost 2 years
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.
-
Dante over 7 yearsNotice md5sum prints the filenames alongside md5 hashes. So the path of both directories must be the same for an overall md5 checksum. So change the current directory to the one you want the md5 checksum for that and use
find . -type f -exec md5sum {} \; | md5sum
or delete filenames before using md5sum byfind /path/to/dir/ -type f -exec md5sum {} \; | awk '{ print $1 }' | md5sum
. -
Dante over 7 yearsI am using 16.04. After
sudo apt-get install md5deep
done, I getmd5deep: command not found
! -
user68186 over 6 yearsIn Ubuntu 16.04 md5deep is «transitional dummy package for hashdeep». So you must use:
hashdeep -r {directory}
. (Try firsthashdeep -h
to see all options.) -
tolache over 3 years
md5deep -r {direcotory} | md5deep
helped me -
motilio over 3 yearsjust tried, works great!