Bug 130523

Summary: initrd makes a system unusable by a bogus inclusion of udev
Product: [Fedora] Fedora Reporter: Michal Jaegermann <michal>
Component: mkinitrdAssignee: Jeremy Katz <katzj>
Status: CLOSED RAWHIDE QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 3   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-08-23 14:51:53 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 Michal Jaegermann 2004-08-21 00:14:59 UTC
Description of problem:

A system startup files use the following tests

if [ -f /etc/sysconfig/udev ];then
        . /etc/sysconfig/udev
fi

if [ "$USE_UDEV" = "yes" -a "$UDEV_RAMFS" = "yes" ]; then
        [ -x /sbin/start_udev ] && /sbin/start_udev
fi

But new version of mkinitrd has this:

if [ -f /etc/udev/udev.conf ]; then
    . /etc/udev/udev.conf
    [ "$USE_UDEV" = "yes" -a "$UDEV_INITRD" = "yes" -a -x
/sbin/udevstart ] || USE_UDEV=
    # use ramfs if keep_dev is set
    [ "$UDEV_KEEP_DEV" = "yes" ] && UDEV_RAMFS="yes"
fi

The net result is if 'udev' is installed but not turned on
then after a boot one ends up with system one can barely
log on because most of devices are missing and what is left,
including things like /dev/null and /dev/zero, has 600 permissions.
An attempt to start X, which is a natural thing in a startup,
kills a machine cold with a blank screen.

Recovery is not obvious as '--noudev' flag to mkinitrd is
not documented either in 'mkinitrd --help' nor in 'man mkinitrd'
and also one has to guess that this is mkinitrd screwing up
badly.

Version-Release number of selected component (if applicable):
mkinitrd-4.1.1-1

Comment 1 Jeremy Katz 2004-08-23 14:51:53 UTC
initscripts was the broken one in this case, it's fixed since.