...a little note: don't mount rw to do a fsck. It doesn't need it, as it access the device directly, and it'll all mess up as the drive is still mounted. A better idea is to do:

$ umount /dev/hda4
$ fsck ...

Hugo