fsck exits with error status, even though no errors are found

Rick Stevens ricks at nerd.com
Mon Sep 26 20:49:05 UTC 2011


On 09/26/2011 01:25 PM, JD wrote:
> On 09/26/2011 12:09 PM, Rick Stevens wrote:
>> On 09/26/2011 11:59 AM, JD wrote:
>>> kernel-2.6.35.14-96.fc14.i686
>>>
>>> During boot, when the time comes for fsck'ing
>>> the file systems, whatever script is doing that,
>>> is exiting with an error status, even though no
>>> errors are displayed, and I am prompted to either
>>> enter the root password, or type Contrl-D to continue.
>>> Cntrl-D simply reboots. Entering the root password,
>>> and running fsck manually to check all filesystems in fstab,
>>> yields that all is well, no errors are found, and the exit
>>> status is 0.
>>>
>>> Would appreciate some info on identifying the script that
>>> does the fsck during boot.
>> /etc/rc.d/rc.sysinit is the guy and it'll force an fsck if it sees
>> a file called "/forcefsck" or "/.autofsck" in the root of the
>> filesystem or if there's a "forcefsck" on the command line of the kernel
>> (check your /etc/grub/grub.conf file).
> 
> Thanks Rick.
> 
> I checked /etc/rc.d/rc.sysinit
> and I see that it does check for the presence of files like:
> 
> if [ -f /fsckoptions ]
> 
> 
> if [ -f /forcefsck ]
> 
> 
> elif [ -f /.autofsck ]

Remember you need the "-a" option to ls to see files that begin with a
dot, e.g. "ls -a /.autofsck".  Just making sure.

> [ -f /etc/sysconfig/autofsck ]
> 
> and I have none of these files.
> 
> I checked /boot/grub/grub.conf and I see
> no presence of any string like fsck or force
> or auto in it.
> 
> The only script I found that invokes /etc/rc.d/rc.sysinit is
> /etc/init/rcS.conf, and it is not passing any args to it.
> 
> I wounder if this maybe a bash problem?

Do you have other filesystems on other partitions that might be
triggering this?  Check your /etc/fstab file and see if any entries
have stuff other than "0" as the last field.  Generally, "/" should
have a "1" as the last field, "/boot" should have a "2", the rest (if
any) should have "0".

Also note that the system may force an fsck if you've exceeded the
"mounts between fsck runs" or "interval-between-checks" set on ext2/3/4
filesystems (and others, I think) via the "tune2fs -c" or "tune2fs -i"
commands.  You could run "tune2fs -l" on the block device holding your
root filesystem to see what values are set currently.

Just an idea.
----------------------------------------------------------------------
- Rick Stevens, Systems Engineer, C2 Hosting          ricks at nerd.com -
- AIM/Skype: therps2        ICQ: 22643734            Yahoo: origrps2 -
-                                                                    -
-    First Law of Work:                                              -
-    If you can't get it done in the first 24 hours, work nights.    -
----------------------------------------------------------------------


More information about the users mailing list