Bug 145400 - boot.localfs: Tries to check r/w mounted systems
Summary: boot.localfs: Tries to check r/w mounted systems
Status: RESOLVED FIXED
: 145620 146469 146776 (view as bug list)
Alias: None
Product: SUSE Linux 10.1
Classification: openSUSE
Component: Basesystem (show other bugs)
Version: Beta 2
Hardware: Other Other
: P5 - None : Blocker (vote)
Target Milestone: ---
Assignee: Ruediger Oertel
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-01-25 07:58 UTC by Andreas Jaeger
Modified: 2006-02-02 11:25 UTC (History)
5 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Jaeger 2006-01-25 07:58:36 UTC
since udev mounts and fscks the filesystems, boot.localfs should not do it itself.

Otherwise boot.localfs will check the r/w mounted filesystems, fsck will return an error value and boot stops.

This just happened with three beta2 test installations.

I have a quick hack in aaa_base:
--- etc/init.d/boot.localfs
+++ etc/init.d/boot.localfs
@@ -63,6 +63,8 @@
                # A return code of 2 or larger indicates failure.
                FSCK_RETURN=$?
                test $FSCK_RETURN -lt 4
+                # XXX: 16 is returned if filesystem is r/w mounted
+               test $FSCK_RETURN -eq 16 && FSCK_RETURN=0
                rc_status -v1 -r
                if test $FSCK_RETURN -gt 1 -a $FSCK_RETURN -lt 4 ; then
                    # if appropriate, switch bootsplash to verbose

This worked in my limited tested and should let us ship beta2.  But we need a proper solution.
Comment 1 Olaf Hering 2006-01-25 09:15:08 UTC
insserv is kaputt. your patch is likely wrong.
Comment 2 Ruediger Oertel 2006-01-25 11:30:44 UTC
no, insserv is correct. boot.localfs has "Required-Start: boot.udev".

the problem is fsck, it needs a new option to ignore mounted filesystems
(like what is possible with "-R" for "/", but implemented better ...)

hare is looking at the issue right now.
Comment 3 Raymund Will 2006-01-25 13:08:55 UTC
Please consider to move the house-keeping stuff from 'boot.localfs' (e.g.
after '# clean up') to some place *before* 'boot.udev'...
Comment 4 Ruediger Oertel 2006-01-25 13:39:21 UTC
no, most of this needs to run _after_ the filesystems are mounted.
Comment 5 Raymund Will 2006-01-26 22:02:03 UTC
*** Bug 145620 has been marked as a duplicate of this bug. ***
Comment 6 Hannes Reinecke 2006-01-27 15:03:45 UTC
I've added a new option '-m' to fsck which causes fsck to ignore any mounted devices and to return no error if the filesystem is mounted.

Rudi, boot.localfs should be adapted to take advantage of this flag.
Comment 7 Andreas Jaeger 2006-01-27 15:15:28 UTC
Rudi, remember to remove the hack in aaa_base as well!
Comment 8 Christian Zoz 2006-01-27 15:48:26 UTC
The hack was added between 'test' and 'rc_status' which made boot.localfs wrongly report failed.

The trigger for this problem was /lib/udev/mount.sh. It should deal only with devices that have mount option 'hotplug' in fstab. This is now fixed and submitted.
Comment 9 Dr. Werner Fink 2006-01-30 10:40:53 UTC
*** Bug 146469 has been marked as a duplicate of this bug. ***
Comment 10 Ruediger Oertel 2006-01-30 10:42:37 UTC
boot.localfs will call fsck with an added "-m" option now.
the hack was removed.
Comment 11 Thomas Fehr 2006-02-02 11:25:46 UTC
*** Bug 146776 has been marked as a duplicate of this bug. ***