I noticed that the /etc/init.d/modules scripts tries to read from: /proc/sys/osrelease [CODE] ... if [ -f /etc/modules.autoload -a ! -L /etc/modules.autoload ] then einfo "Using /etc/modules.autoload:" # Loop over every line in /etc/modules.autoload. load_modules /etc/modules.autoload else local KV="$(</proc/sys/kernel/osrelease)" local KV_MAJOR="`KV_major "${KV}"`" local KV_MINOR="`KV_minor "${KV}"`" # New support for /etc/modules.autoload/kernel-$KV if [ "$(get_KV)" -ge "$(KV_to_int '2.5.0')" ] && \ [ -f /etc/modules.autoload.d/kernel-"${KV_MAJOR}.${KV_MINOR}" ] then einfo "Using /etc/modules.autoload.d/kernel-${KV_MAJOR}.${KV_MINOR}:" load_modules /etc/modules.autoload.d/kernel-"${KV_MAJOR}.${KV_MINOR}" else einfo "Using /etc/modules.autoload.d/kernel-2.4:" load_modules /etc/modules.autoload.d/kernel-2.4 fi fi ... [/CODE] So if you don't have modules.autoload you are required to have /proc/sys/osrelease However, the /proc/sys directory only exist if you compiled your kernel with "sysctl" support. I talked with Gentoo developer: Sven Vermeulen about this. He said that it wasn't a good idea to be too depended on the kernel. He proposed two possible solutions: - Make the use of modules.autoload obligated (i.e. include it in baselayout) - Edit /etc/init.d/modules so that it doens't require sysctl support. This bug came out of a forum discussion: http://forums.gentoo.org/viewtopic.php?t=64807
Also, the install-doc doesn't mension including the sysctl option.
Fixed in CVS. New baselayout in a bit. Side note: I do not know if anybody these days do not use sysctl support, but sure, especially for porting to non linux systems, it will be better to use 'uname -r'. ---------------------------------- Index: init.d/modules =================================================================== RCS file: /home/cvsroot/gentoo-src/rc-scripts/init.d/modules,v retrieving revision 1.24 diff -u -r1.24 modules --- init.d/modules 15 Jul 2003 20:36:32 -0000 1.24 +++ init.d/modules 17 Jul 2003 19:12:01 -0000 @@ -50,7 +50,7 @@ # Loop over every line in /etc/modules.autoload. load_modules /etc/modules.autoload else - local KV="$(</proc/sys/kernel/osrelease)" + local KV="$(uname -r)" local KV_MAJOR="`KV_major "${KV}"`" local KV_MINOR="`KV_minor "${KV}"`"