-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On
Behalf Of Laura Conrad
Sent: Monday, July 23, 2001 9:13 AM
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: [expert] Where does it find what modules to load?
>>>>> "Jose" == Jose M Sanchez <[EMAIL PROTECTED]> writes:
Jose> The files are in /lib/modules/2.x.x
Jose> You should make sure that the entries in /boot all point to
Jose> the right place, especially the softlinks.
Jose> In addition, because you have a SCSI adaptor you will need
Jose> to use the mkinitrd utility to build a special bootable
Jose> kernel image with the appropriate SCSI module included.
Shouldn't HardDrake have done that for me?
---
Hardrake only manages device modules to deal with hardware. It doesn't
do anything about the boot kernel image itself. This is handled
initially during the installation.
Normally Linux does not use the initrd image UNLESS you happen to have a
SCSI device.
The installer makes a pretty good estimate of your SCSI devices then
creates an INITRD image which contains the appropriate modules.
On some systems Linux may be booting from a SCSI device. If the SCSI
driver is not loaded immediately it will fail to find the hard drives.
Hence the initrd image has the SCSI driver "rolled" into it.
Harddrake does not re-install the kernel for you, as would be required
to modify the initrd image.
---
Jose> "it still tries to load the old modules"
Jose> Eh, what's wrong with this?
The fact that I removed them from modules.conf.
Jose> It's loading the "old" modules because your configuration
Jose> loads an existing kernel.
I thought the point of modules was that you didn't have to rebuild the
kernel to load different ones?
---
This isn't a module issue, rather a boot image problem. You've changed
things since the installer first generated the initrd image, but the old
initrd image is still being used.
(at least that is my guess...)
No you don't have to rebuild the kernel, merely the initrd image with
the correct SCSI modules for your adaptors. You can specify this with
the command line.
---
Jose> If you built new modules you should have rebuilt your kernel
Jose> as well so that everything is consistent, and also copied
Jose> over map files, etc.
I didn't build anything. I put in a new SCSI card, and wanted it to
load the module for the new one instead of the module for the old one.
On Mandrake 6.x, you achieved this by editing conf.modules to
load the new one instead of the old one. There's obviously something
different in Mandrake 8. It looks to me like a bug in HardDrake that
the configuration doesn't get saved.
---
This is not different in 8.0. Both 6.0 and 8.0 used the initrd image to
preload scsi modules so that they would be found during first stage
boot. Once the kernel could talk to the drives, Linux then utilizes the
information found in conf.modules.
The initrd image makes sure that it can get that far... Without it,
Linux would fail to boot or find the hard drives on systems that boot up
from a hard disk.
If yours is not booting from a SCSI drive or has a SCSI hard disk, you
could omit the initrd entry in /etc/lilo.conf, run lilo and be done. But
if the system needs to find a SCSI hard drive initially (so it can FSCK,
etc. or boot from it) you need a new initrd image that has the module
for your new scsi card.
---
Jose> Make sure the boot is loading what you think it is, and run
Jose> lilo just to be sure!
The boot isn't managing to load the old stuff, because the hardware
isn't there any more, but it is definitely not loading the new stuff, or
I would have my SCSI hard drive when I boot.
Alexander> So sprach >Laura Conrad< am 2001-07-22 um 23:56:38 -0400
:
>> I have. It doesn't say anything at all about either tulip or
>> ncr53c8xx. But the boot sequence is definitely trying to load
>> both of them, and not loading advansys, which is the current
>> scsi card.
Alexander> Hmm, maybe create a new initrd. See mkinitrd
I want to get this off before I try rebooting. I've run:
cd /boot
mkinitrd /boot/initrd-2.4.3.later 2.4.3-20mdk
rm initrd.img
ln -s initrd-2.4.3.later initrd.img
So you're betting that it will now load the right stuff? Or do I still
have to do something with the map files Jose alludes to?
Even better would be if after loading the advansys module, it detected
all the devices connected to it and configured them, but that might be
another message.
---
Eh, you also have to specify WHICH SCSI modules it has too preload on
the mkinitrd command line.
-JMS