checksum tool for filesystems
Choices for filesystems which have built-in checksums to ensure data integrity are limited and come with their own drawbacks, in particular, they are often times still not considered as stable and mature as other filesystems. In other cases, such as storage on (virtual) servers, there is not even any choice of the underlying filesystem.
While software is often distributed, in particular, in the open-source
community with accompanying
MD5SUMS files containing checksums,
this approach is not scalable for entire filesystem structures.
fschksum tries to fill this gap: It generates a database
with checksums, modification dates, and file sizes for entire filesystem
structure. Amongst others, a database can be updated for new/modified files
only, database updates (or two separate database files) can be compared very
fast, and files can be checked for their integrity.
fschksum is only available for POSIX-compatible
operating systems and relies on the inode to be a unique identifier for each
file. This also implies that
fschksum should not cross
filesystem boundaries, as inode numbers might not be unique anymore. (There
is currently no automatic test implemented to prevent this use scenario!)
Porting to other operating systems should be straighforward with a few targeted modifications in a few places. (E.g., replace the use of inodes by another unique identifier which typically exists for every filesystem and operating system.)