Bug 97173 - Automatically add /initrd if missing during boot
Automatically add /initrd if missing during boot
Status: CLOSED WONTFIX
Product: Red Hat Linux
Classification: Retired
Component: kernel (Show other bugs)
9
All Linux
medium Severity medium
: ---
: ---
Assigned To: Arjan van de Ven
Brian Brock
:
: 97174 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2003-06-11 02:57 EDT by Craig Lawson
Modified: 2007-04-18 12:54 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2004-09-30 11:41:07 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Craig Lawson 2003-06-11 02:57:03 EDT
Description of problem:
  The boot process depends on the existence of the /initrd directory. If this 
directory is missing, the kernel panics and booting fails. For various reasons, 
this directory was missing from some systems and they were stuck with an 
unbootable system (see bug 54945 and bug 79982). This bug bit me yesterday.
  The design seems fragile to me, and several ideas occurred to me that would 
strengthen the system design.
  1. The responsibility for creating /initrd is with the filesystem package, 
however each kernel requires it. The kernel RPMs could verify the existence of 
the directory. Yes, I know this breaks the RPM package encapsulation, but that 
/initrd cannot be put into each kernel's RPM is, in my opinion, a design flaw 
in RPM itself, since the kernel is the only module that uses this directory. I 
digress. Anyway, I suggest putting it into each kernel's RPM because in 
diagnosing my system's boot problem I thought to verify each kernel's 
installation but not the (in my opinion more obscure) filesystem package.
  2. Add a hint to the kernel diagnostics so that before it calls pivot_root, it 
checks for the existence of /initrd, complains if it is not present, and 
suggests that it be created. The current hint, "Kernel panic: no init found. Try 
passing init= option to kernel." is misleading.
  3. My favorite: if /initrd is missing, the kernel creates it. A missing 
/initrd directory serves no purpose except to block booting, and who wants that? 
Just create the directory and get on with the boot. (If the directory is created 
on demand, it can be deleted later because its continued presence really doesn
't add value.

Version-Release number of selected component (if applicable):
kernels 2.4.20-9, 2.4.20-13.9, 2.4.20-18.9 (and probably others)
Comment 1 Alan Cox 2003-06-22 14:16:12 EDT
*** Bug 97174 has been marked as a duplicate of this bug. ***
Comment 2 Craig Lawson 2003-10-28 16:07:31 EST
I changed this from enhancement to bug.

After getting burned by this one, I described the problem and fix on my web 
site. Several people contacted me to express their appreciate for my description 
because they were burned by the same problem and were at their wits end. This is 
the only information on my modest web site that encourages people to write to 
me, so I figured, the enhancement classification is incorrect and really had to 
upgraded to something more severe.
Comment 3 Bugzilla owner 2004-09-30 11:41:07 EDT
Thanks for the bug report. However, Red Hat no longer maintains this version of
the product. Please upgrade to the latest version and open a new bug if the problem
persists.

The Fedora Legacy project (http://fedoralegacy.org/) maintains some older releases, 
and if you believe this bug is interesting to them, please report the problem in
the bug tracker at: http://bugzilla.fedora.us/
Comment 4 Duncan Innes 2005-04-13 08:50:48 EDT
This issue actually exists for the RHEL 3 AS software.

Probably worth fixing it, as this product is still very much in use and is
supported for a few more year.

Note You need to log in before you can comment on or make changes to this bug.