[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

initrd trouble with underlying /dev



I've got a machine that has been running Debian for a long time.  Its
root partition is software raid0.  It uses a custom kernel, 2.4.22,
which does not use initrd.  Instead all necessary modules for booting
are built into the kernel: hardware drivers, md, etc.  The kernel is
configured to mounts devfs at boot time.  I would like to upgrade the
machine to a stock Debian kernel package.  This almost works: the
stock 2.6.6 kernel and its configured initrd detects the hardware
properly, seems to have the right hardware and md modules in the
initrd image, etc.  Things are set up to mount devfs (see below).  The
problem seems to be that as the system boots, at some point before
devfs is mounted but after the root partition is, /dev, which will
ultimately be shadowed by devfs, is missing something important.  In
particular, it would seem to be missing /dev/console.  Obviously I
could mknod it, and maybe look in the initrd image and mknod any other
device nodes hanging out in there.  But I can't figure out any way to
get my fingers on the "real" /dev, since it is shadowed by devfs and
devfs won't unmount!

The fact that the machine is in Albuquerque and I am in Ireland, and
the machine is used as a server for a number of projects, doesn't
help.  I can ask someone in Albuquerque to do stuff on the console,
but I'd rather have it be minimal and foolproof rather than
exploratory and risky.

Any thoughts or suggestions?
--
Barak A. Pearlmutter <barak@cs.may.ie>
 Hamilton Institute, NUI Maynooth, Co. Kildare, Ireland
 http://www-bcl.cs.may.ie/~barak/

----------------------------------------------------------------

OTHER INFO

    $ uname --kernel-name --kernel-release
    Linux 2.4.22

    $ cat /etc/default/devfsd
    # mount point for devfs
    MOUNTPOINT=/dev
    # mount on boot?
    MOUNT=yes

    $ df /
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/md/0            113424288  99712476   7950112  93% /

    $ cat /proc/mounts
    rootfs / rootfs rw 0 0
    /dev/root / ext3 rw 0 0
    none /dev devfs rw 0 0
    proc /proc proc rw 0 0
    devpts /dev/pts devpts rw 0 0
    tmpfs /dev/shm tmpfs rw 0 0
    /dev/hda3 /boot ext3 rw 0 0
    usbfs /proc/bus/usb usbfs rw 0 0

    $ egrep -i DEVFS /boot/config-2.4.22
    CONFIG_DEVFS_FS=y
    CONFIG_DEVFS_MOUNT=y
    # CONFIG_DEVFS_DEBUG is not set



Reply to: