Bug#295651: marked as done (Better support for essential third-party modules during installation)
Your message dated Sat, 08 Jan 2011 12:06:52 +0000
with message-id <1294488412.2463.20.camel@eeepc.Belkin>
and subject line
has caused the Debian Bug report #295651,
regarding Better support for essential third-party modules during installation
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact firstname.lastname@example.org
Debian Bug Tracking System
Contact email@example.com with problems
--- Begin Message ---
I recently had to install a system that had a RAID controller whose
corresponding module isn't included in the default kernel, so it has to
be compiled manually. I am amazed at how hard this was to do.
First, I had to compile the module for the kernel d-i uses,
2.6.8-1-386. However, the corresponding kernel-headers package appears
to have been removed from the archive. I'll not even touch on any
possible GPL issues, but it is at the very least very unpractial for
those who would like to compile third-party modules matching the ABI of
the kernel installed by default. I gather this is a rather common
thing to do, so I'd really like to see the kernel-headers package of
the d-i kernel stick around in the archive even if newer kernel images
are uploaded. Fortunately, I found the necessary packages at
<http://snapshot.debian.net>, and was able to compile the module.
Having copied the module to a floopy disk, I started the installation.
I soon found that d-i unfortunately does not have a "Preload essential
modules from floppy" like b-f had, so I figured I'd do it manually.
Inserting the module worked just fine, and I got block devices I could
continue installing to. Which didn't work so well; after installing
the base system the installation as a whole failed due to mkinitrd's
inability to find my custom module in /target/lib/modules/2.6.8-1-386.
"Well duh!" I thought, and mkfs'ed the partition once more, and after
remounting it I created the /target/lib/modules/2.6.8-1-386/local
directory and copied the module from the floppy there, before
restarting the installation of the base system. However, this for some
bizarre reason made the kernel-image's preinst (I think) fail. I
wonder if that is a genuine bug in the kernel-images, as they certainly
do not ship any /lib/modules/2.6.8-1-386/local subdir so there was no
file conflict, but I do not remember the exact error message. In any
case, the installation was aborted.
After some more thinking, I finally figured out how to make it work.
Before starting yet another base system install, I started the
following command sequence on the second terminal:
until test -d /target/lib/modules/2.6.8-1-386; do :; done; \
mkdir /target/lib/modules/2.6.8-1-386/local; \
cp /floppy/mod.ko /target/lib/modules/2.6.8-1-386/local
..thus exploiting the delay between unpacking and the mkinitrd
invocation from the postinst to copy the module in place. This worked
just fine, and allowed me to finish the installation and end up with a
system booting and functioning perfectly.
However, the process was annoyingly clunky, and even if I was able to
make it work, I do not think the average user will be very happy about
this procedure - and it'll probably grow more and more useful during
as new hardware is released during the lifespan of Sarge. So it'd be
really great if you could add support for loading third-party modules
directly from the installer, like b-f had.
--- End Message ---
--- Begin Message ---
Since Debian 5.0 the installer has support to load external firmware or
packages providing such firmware from removable media.
This capability is described in the installation manual .
Any issues against current debian installer release (Squeeze Beta2)
please send us an install report.
1 - http://d-i.alioth.debian.org/manual/en.amd64/ch02s02.html
Melhores cumprimentos/Best regards,
--- End Message ---