If this doesn't fix the problem you are probably having problems with memory or disk corruption. If so you may have some dodgy SIMMs or a faulty motherboard or hard disk or controller. Your root directory and all the directories up to your home directory must be readable and executable by everybody. See the manpage for chmod or a book on Unix for how to fix the problem. No utmp entry.
Modern kernels use a better strategy for writing cached disk blocks.
It will work fine with older kernels as well, so there's no need to keep the old update around. You must arrange to mount the root filesystem readonly to start with, check it if necessary, and then remount it read-write. Read the documentation that comes with util-linux to find out how to do this. The maximal number of mounts value can be examined and changed using the tune2fs program from this package. Kernels from 1.0 onwards support checking a filesystem based on the elapsed time since the last check as well as by the number of mounts.