By default, the fsck utility is run on every boot. For ext3 filesystems, the boot scripts do a quick check to see if the filesystem journal indicates the file system is clean. If the initial check passes no further checking is performed. Otherwise, the user is prompted to run a full fsck check.
You can force an automatic full check by changing the check interval using tune2fs (-c and/or -i). For example:
# tune2fs -c 1 /dev/hda2
The above command would tell the init scripts to run fsck on hda2 at every boot.
# tune2fs -i 1d /dev/hda2
The above command would tell the init scripts to run fsck on hda2 after 1 day.
If you only want to run fsck on the next boot, please execute the following as the root user:
# cd / # touch forcefsck
This will only run the file system check on the next reboot. By touching the file “forcefsck” in the / directory, it will force the system to perform a full file system check.
The file “forcefsck” will be deleted automatically after fsck is finished.
Note: For systems with large disks, fsck on boot may take a long time to run depending on system speed and disk sizes.