(links below are supporting documentation and not necessarily directly related to your question).
As Michael and DavAlPi pointed out some filesystems (like ext4, btrfs and zfs) CRC both files and filesystem metadata.
With ext2, the filesystem is modified with each mount, setting it to "dirty."(this was replaced with needs_recovery in ext3) When it is unmounted this is unset. If system initialization sees an unmounted filesystem marked as dirty, it will assume it was unmounted uncleanly and run a filesystem check to ensure integrity. On RHEL this is usually done somewhere around the "remounting root" message during startup. Either way, it's going to be one of the first things the distro does.
With ext3 you get a journal, so if the filesystem is corrupt due to unexpected failures, it will either "replay" journal transactions or ignore them, whichever is most likely to not cause problems. You don't get CRC's though so if the data is just plain dying (failing HDD platter for instance), it's just how it's going to be. But ext3 can be upgraded to ext4 if you need the features and it shouldn't create any userland issues.
So one way or another, filesystem integrity is checked, but using the latest filesystems gives you some additional protections.