Question about forcing fsck at boottime
Doug Hardie
bc979 at lafn.org
Mon Apr 6 13:46:51 PDT 2009
On Apr 6, 2009, at 11:12, Chris Rees wrote:
> Can
> no-one can come up with a reply either quoting a mailing list or
> giving the circumstances when:
>
> a) Background fsck caused data CORRUPTION
>
> _and_
>
> b) A foreground fsck would not have done the same
>
> ?
Yes. When background FSCK first became standard I let it go that way
on my production servers. The first time we had a power issue that
resulted in a shutdown of a server it tried to come back up when the
power was restored. I have a large number of daemons that rely on
configure files and other information that is reasonably frequently
updated. Some of those files were in the process of being updated
when it shut down. As a result background FSCK did not get around to
those files till much after the daemons were up and running (or trying
to run). Most of them worked ok at the beginning. However after FSCK
resolved the problems, the underlying files changed. The daemons
couldn't function at that point.
While a simple reboot at that point fixed everything, that caused yet
another outage for users. Hence, I disabled background FSCK. There
have been a few power issues since then and there have been no
recovery issues with foreground FSCK other than the restart takes a
bit longer. This is reproducible since it happened on several
different servers. However, I am not about to go back and subject
users to additional downtime when a viable workaround that avoids the
problem exists.
I doubt that the concept of background FSCK is broken and I suspect
that the implementation is good too. The issue is that some services
really should not be started till after FSCK (either variety) has
completed. I didn't see an easy way to do that using rc.
More information about the freebsd-questions
mailing list