No relevant 'component' found above... this is pertaining to the gentoo udev guide. The udev guide assumes your /dev directory is "full", or at least that it contains /dev/console and /dev/null. Otherwise the system can't boot with udev. True, in the bottom section they mention the need to create those nodes (however, not that you need to create them on the _disk_ directory and not the filesystem mounted on /dev, and not how you pull that stunt off), but this problem is there no matter what you do. I have an older gentoo installed, with a stage2 tarball I think, and my /dev directory was entirely empty (until I now created the console and null nodes). Most other users seem to have 'full' /dev dirs (for some unknown reason, since they aren't used). Btw, I use gentoo-dev-sources 2.6.5 and baselayout-1.8.6.13-r1. Reproducible: Always Steps to Reproduce: 1. Be unlucky and have an empty /dev dir. 2. Switch to using udev 3. Reboot.. boom! Actual Results: Kernel stops, informing you that it can't open the initial console. Expected Results: It should not stop ;-). Making the two device nodes as in the guide, solves the problem. Accessing the filesystem can be done like this (as root): mkdir test mount --bind / test cd test/dev My emerge info (although hardly relevant): Portage 2.0.50-r5 (default-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.6.5-gentoo) =============================================================== == System uname: 2.6.5-gentoo i686 Celeron (Mendocino) Gentoo Base System version 1.4.3.13p1 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.58-r1 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium2 -O3 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config / usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium2 -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache distcc sandbox" GENTOO_MIRRORS="ftp://ftp.uninett.no/pub/linux/Gentoo http://212.219.247.17/sites/ www.ibiblio.org/gentoo/ http://sunsite.cnlab-switch.ch/mirror/gentoo/ ftp://sunsite.cnlab-switch.ch/ mirror/gentoo/ http://212.219.247.19/sites/www.ibiblio.org/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aalib apache2 apm arts avi berkdb crypt encode foomaticdb gdbm gpm gtk2 imap imlib jpeg libg++ libwww mad maildir mikmod motif mpeg mysql ncurses nls oggvorbis opengl oss pam perl png python quicktime readline ruby ruby18 sasl sdl slang spell ssl svga tcpd x86 xml2 xmms xv zlib"
like you said, older Gentoo installs my 'suffer' from this problem while newer ones dont ... the normal install now leaves /dev populated with a 'sufficient' number of nodes you dont need /dev/console to boot but you do need /dev/null ... although i've made a patch over at Bug 40987 to allow for that ...
You don't need /dev/console? Yes you do.. or _I_ do at least. I get the error: Unable to open initial console. And then the kernel reboots. After adding /dev/console I don't get that error anymore but I get some redirection errors from /sbin/rc due to the also missing /dev/null. I at least needed them both. Do you..or anyone.. know why /dev is stuffed full like that by the way? and I _still_ think the guide should include a note saying that it _might_ be necessary to create those nodes yourself, if you have an older gentoo. It's not like they will get created by _any_ update to the system. I was oblivious to their absence.
before you continue the wrong logic that you 'need' /dev/console, read my reply at Bug 40987 /dev is 'stuffed' because baselayout runs `MAKEDEV generic-<arch>` ... it creates a generic /dev environment that is sufficient to handle the majority of systems out there
*nod* ok. I just don't see the reason... but I guess if you were to boot the system with a different kernel.. hmm... but then it would still use the same boot scripts and bring up either devfs or udev at bootup. I just don't see why it's necessary with a full /dev, is all :-). I amend my "wrong logic" to the following: You need /dev/console if you want to be able to see what goes on duing boot. And now I think we agree :-)... (I still think a notice should be added to the udev guide as per my previous comment, by the way).
I've added this to the "Current Issues" section in CVS.