How to schedule a disk check for the next reboot. As root or using sudo do the following:
Method 1: Use the forecfsck file method
touch /forcefsck shutdown -r now
Note: This command seems to check all partitions when run
Method 2: Up the mount count above the fsck check limit
Use this to identify what mounted partition you want to check
df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 88G 81G 2.5G 98% /
On a LVM system the path to the device can be quite long
df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/apf--ma--ln03-root 36G 913M 34G 3% / /dev/sda5 236M 19M 206M 9% /boot
Check the current “Maximum mount count” and “Mount Count” values
tune2fs -l /dev/sda2 | grep -E '(Max|Mount)' Mount count: 11 Maximum mount count: 36
Then set the actual “Mount count” to something higher
tune2fs -C 100 /dev/sda2
Check it out
tune2fs -l /dev/sda2 | grep Mount Mount count: 100
Then reboot and wait for the disk check to finish, remember the bigger the volume the longer it takes. Make a cup of $BEVERAGE.
Ever wondered how to identify what partition is mentioned in /etc/fstab with
UUID=a0584727-1c8b-48df-867b-9e3b5a453ff7 / ext3 defaults,errors=remount-ro 0 1
Use tune2fs and you will find the answer
tune2fs -l /dev/sda2 | grep UUID Filesystem UUID: a0584727-1c8b-48df-867b-9e3b5a453ff7
Now how would you apply a new UUID to a partition
tune2fs -U `uuidgen` /dev/sda3
tune2fs -l /dev/sda3 | grep UU
Filesystem UUID: 293512d5-fbb9-4a0a-9d50-ce347a3e0091
So it’s easy then to reference that in /etc/fstab
UUID=293512d5-fbb9-4a0a-9d50-ce347a3e0091 /media/sda3 ...
What is a UUID? It’s a Universally Unique Identifier. Theoretically, the way it’s generated means that you wont get a duplicate anywhere. You see them used a lot where uniqueness is needed (check the Windows Registry).
It is a better system then using labels to identify partitions because a label can be easily duplicated.
If you are old school Redhat then you can use e2label and apply a label to the partition:
e2label /dev/sda3 MYDISK
Then in /etc/fstab you can refer to the volume thusly
LABEL=MYDISK /media/sda3 ext3 defaults 0 2
Note: I had to reboot for the above LABEL= change to take affect. The MYDISK label needs to appear in /dev/disk/by-label/MYDISK for a mount operation to work.
It’s probably better to make the label to be the same as the mount point. For example
e2label /dev/sdb12 /u2
Then add that to /etc/fstab
LABEL=/u2 /u2 ext3 defaults ....
would be mounted at /u2 so you know exactly where the partiton is going.