How to check root partition with fsck?

I installed Linux Mint 12 KDE, and I would like to check the root partition for any errors.

How do I check the root partition with fsck at boot time?


sudo touch /forcefsck

Then reboot.


You can use shutdown command for this too.

shutdown -rF now

From man:

The -F flag means 'force fsck'.
This only creates an advisory file /forcefsck which can be tested by the system when it comes up again. The boot rc file can test if this file is present, and decide to run fsck(1) with a special `force' flag so that even properly unmounted file systems get checked. After that, the boot process should remove /forcefsck.


Here is another way to do this:

tune2fs -C 2 -c 1 /dev/THEDEVTHATROOTIS

reboot

then the filesystem will be checked, and once all is good you should do

tune2fs -c 60 /dev/THEDEVTHATROOTIS

I have assumed that the max-mount-count was set to 60, you should find out before issuing the first command with

dumpe2fs /dev/THEDEVTHATROOTIS |grep "Maximum mount count"


On my systems (several x86 notebooks and a Banana Pi Pro), saying sudo shutdown now brings me to runlevel 1 (aka maintenance mode) where I can safely check my root FS:

mount -o remount,ro /dev/rootpartition
fsck /dev/rootpartition
reboot

There's no need to alter /etc/fstab to do this, and I have the opportunity to run fsck with whatever options that may be needed to fix a tricky case.

Note: /forcefsck and tune2fs tricks work on x86, but not on Banana Pi.