Bug 135863
Summary: | Using reiserfs as / results in failure during init | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Emerson House <ehbase-linux> |
Component: | initscripts | Assignee: | Jeff Garzik <jgarzik> |
Status: | CLOSED NOTABUG | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 3 | CC: | notting, peterm |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i686 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2005-06-14 15:24:43 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Emerson House
2004-10-15 15:06:42 UTC
Any filesystem used should be able to support fsck being called on it; if reiserfsck is erroring here, that's a bug in reiserfsck. Sure, I should probably point out that the error message indicates that fsck.ext2 is called at this point not fsck.resierfs. Calling fsck.resierfs when dumped into the shell does not result in an error. I'm not sure why fsck.ext2 is used by the system, but I suspect a problem in initscripts, not resierfs-utils. What actually *is* the error message? The only fsck called is /sbin/fsck, which parcels it out to the appropriate one for the FS type. What's your /etc/fstab look like? Well that is part of what has me confused. The problem occurs right after line 377 in rc.sysinit which why I made the change I did. You are correct that the lines in rc.sysinit appear to simply call fsck. However when init runs and it gets to that point fsck.ext2 complains and returns a rc >= 2 which results in the dump to the console prompt. That code is a couple of if statements later. Since I've gotten it fixed I no longer get the messages so I can't copy them out of dmesg any longer. Fsck.ext2 makes some complaint about invalid filesystem - no surprise since it is a reiserfs filesystem - but does not actually seem to run. If you immedately run fsck.reiserfs it doesn't have any problem. Normally if you run fsck it calls fsck.reiserfs, /etc/fstab correctly identifies / as reiserfs. However, if I correctly understand the boot process at this point / is being checked so the file system the operating system knows about is loaded from /boot and initrd. Fsck is looking at /initrd/dev/root. Although when you get to the console prompt the raid 0 reiserfs is mounted at /. Rc.sysinit is looking at a lot of files that don't seem to exist (/.autofsck , etc.) so I don't really know what is going on. Initrd is created by the installation process and has not been modified. The kernel is the kernel distributed with FC3T3, it has not been recompiled or modified. Now my fix works because the $ROOTFSTYPE variable in rc.sysinit is correctly set with reiserfs, one of the reasons I made that modification was to check that. I haven't done anything to force it to resierfs. I'm not sure that reiserfs really wants to be fsck'ed when mounted RO because it complains and says it is skipping journal replay. I should probably also add that the reiserfs for / was not created by the installation process. I understand you can pass use "linux reiserfs" when making a new install. What I did at some point with an earlier FC installation was to do a ext3 partition and then tarball the whole root partition from a rescue boot, create a new partition and format it reiserfs and then untar the tarball. It seemed to work at the time. UPDATE - FC4 Problem did not occur in upgrade to FC4. Problem may be fixed in FC4. Also I specified reiserfs with the linux command starting upgrade. That may be required for correct initscripts. |