You could use rsync --checksum
to check the files. Or simply use sha256sum
or similar to check the files manually. Using rsync
is in my opinion more comfortable because it automatically checks recursively, but that largely depends on your usecase.
If you really require absolute integrity, you should really consider using an error correction code . Hard drives don't keep data integrity forever, a bit might change from time to time.