Gentoo Server Error: Superblock mount time is in the future
I was working on a Gentoo server today and had another time stamp issue. This may have been related to the one I wrote about yesterday because in addition to that error now I was getting a “Superblock mount time is in the future” error which was saying that the mount time of my drives was in the future. The server would not boot and I had to run a manual fsck every time to get it to boot. Clearly this was not normal behavior so I decided to dig into the problem. I rarely reboot the servers so I never noticed this behavior.
I tried various fix’s like:
- Messing with my ntp timeserver client settings which didn’t do any good.
- I made sure the BIOS clock was correct
- I made sure my server time was correct and even tried to change it
Despite all of this every time I rebooted my files and discs the timestamps were a few hours in the future which prevented my system from booting. At this point I was a little anoyed. Finally I decided to have a look at the clock conf file.
In Gentoo this file is located at /etc/conf.d/clock
- # /etc/conf.d/clock
- # Set CLOCK to "UTC" if your system clock is set to UTC (also known as
- # Greenwich Mean Time). If your clock is set to the local time, then
- # set CLOCK to "local". Note that if you dual boot with Windows, then
- # you should set it to "local".
- # Select the proper timezone. For valid values, peek inside of the
- # /usr/share/zoneinfo/ directory. For example, some common values are
- # "America/New_York" or "EST5EDT" or "Europe/Berlin". If you want to
- # manage /etc/localtime yourself, set this to "".
- # If you wish to pass any other arguments to hwclock during bootup,
- # you may do so here.
- # If you want to set the Hardware Clock to the current System Time
- # during shutdown, then say "yes" here.
- ### ALPHA SPECIFIC OPTIONS ###
- # If your alpha uses the SRM console, set this to "yes".
- # If your alpha uses the ARC console, set this to "yes".
What I ended up doing was changing the CLOCK_SYSTOHC variable to yes. It was no by default. What that does it set the hardware clock in the BIOS to the current system time. I figured if my system time was correct then maybe this would help. I have never had to mess with this variable before that I can remember but as soon as I set it to yes my machine booted perfectly and no more errors.