Tim Nelson
2009-May-28 17:17 UTC
[CentOS] Adding a kernel module to the ISO/installer initrd?
Greetings list! Because of the sheer number of box (re)installations we do that have a CentOS base, I've converted our provisioning process to PXE. However, I've found that an alarming number of motherboards are coming with the Realtek RTL8168 ethernet controller onboard. When the system boots, it cannot find an ethernet controller and the installer process hangs. I made a new initrd from a running system that was installed via CD and had the kernel module installed afterwards. However, when using the new initrd to PXE boot a new box, it dies saying something about not being able to use/find /dev. The original initrd from the ISO is 5.1MB whereas the initrd I built from the working system is only 2.4MB. I have a feeling that the initrd I built (using mkinitrd -v --with=r8168 <path to output initrd> <kernel version>) does not include modules required by the installer. So, my question is this: is there a way to (1) create an initrd with ALL available modules or at the very least, (2) take the original ISO initrd and simply add the module I need? This initrd will need to work with all of the other hardware I support and should not be specialized for this single motherboard if possible. I've been up and down Google/CentOS Wiki/etc and cannot seem to find a valid way of doing either of the above. Suggestions, ideas, help? Tim Nelson Systems/Network Support Rockbochs Inc. (218)727-4332 x105
Akemi Yagi
2009-May-28 17:59 UTC
[CentOS] Adding a kernel module to the ISO/installer initrd?
On Thu, May 28, 2009 at 10:17 AM, Tim Nelson <tnelson at rockbochs.com> wrote:> Because of the sheer number of box (re)installations we do that have a CentOS base, I've converted our provisioning process to PXE. However, I've found that an alarming number of motherboards are coming with the Realtek RTL8168 ethernet controller onboard. When the system boots, it cannot find an ethernet controller and the installer process hangs.Sorry, this is not about the mkinitrd stuff, but I just wanted to refer you to this useful forum post by Alan Bartlett because you are dealing with hardware that requires the Realtek 8168 driver: http://www.centos.org/modules/newbb/viewtopic.php?viewmode=thread&topic_id=19428&forum=40&post_id=75910 Hope this helps, Akemi
Tim Nelson
2009-May-29 14:34 UTC
[CentOS] Adding a kernel module to the ISO/installer initrd?
----- "Tim Nelson" <tnelson at rockbochs.com> wrote:> Greetings list! > > Because of the sheer number of box (re)installations we do that have a > CentOS base, I've converted our provisioning process to PXE. However, > I've found that an alarming number of motherboards are coming with the > Realtek RTL8168 ethernet controller onboard. When the system boots, it > cannot find an ethernet controller and the installer process hangs. > > I made a new initrd from a running system that was installed via CD > and had the kernel module installed afterwards. However, when using > the new initrd to PXE boot a new box, it dies saying something about > not being able to use/find /dev. The original initrd from the ISO is > 5.1MB whereas the initrd I built from the working system is only > 2.4MB. I have a feeling that the initrd I built (using mkinitrd -v > --with=r8168 <path to output initrd> <kernel version>) does not > include modules required by the installer. > > So, my question is this: is there a way to (1) create an initrd with > ALL available modules or at the very least, (2) take the original ISO > initrd and simply add the module I need? This initrd will need to work > with all of the other hardware I support and should not be specialized > for this single motherboard if possible. > > I've been up and down Google/CentOS Wiki/etc and cannot seem to find a > valid way of doing either of the above. > > Suggestions, ideas, help? >Surely someone has rebuilt the initrd for the installer ISO? I recall seeing something on the list about it previously in regards to storage controllers but I cannot seem to find it now... Is there somewhere I can look to see the original mkinitrd command used to build the initrd on the ISO? I could then ensure I have all of the modules specified there along with my additional module. --Tim