Visit Jeremy's Blog.
Go Back > Forums > Linux Forums > Linux - Software > Linux - Kernel
User Name
Linux - Kernel This forum is for all discussion relating to the Linux kernel.


  Search this Thread
Old 08-11-2008, 07:04 PM   #1
LQ Newbie
Registered: Aug 2008
Posts: 1

Rep: Reputation: 0
help placing driver module in initrd.img for remote tftp/nfs/pxeboot

Hi all,

I'm setting up a small debian lenny based cluster at home for as a 3d renderfarm.

I'm booting some bare MB+CPU+RAM over pxe from my new debian lenny fileserver. (kernel: 2.6.25-2-686)

I'm new to linux, i've been using mainly solaris and freebsd for the last decade.

My nodes are asus motherboards with a atheros 1e gigabit network card onboard.
I had to compile the driver module for these nics and it got installed as a kernel module. (on the server) (the driver source does'nt support compilation into kernel itself.)

I copied these to the my pxe nfs root.

The boot works, the node get's it's IP via dhcp after a pxe boot is started, and the kernel and initrd.img are loaded via tftp, however it gets stuck when trying to mount my root via nfs as the nic is not working,
since the driver is missing.

I guess i need to place my nic driver module in the initrd.img which i serve to the pxe clients, so it gets loaded.

I rebuilt my initrd.img using a 'update-initramfs -c -k 2.6.25-2-686
' but it's still not in there, i checked on the client in busybox and degziped/cpio'ed the new initrd.img on the server and it's not inside.

Can't seem to find any doco's on this, can anyone tell me how to place it inside and force the kernel to load it ?

Old 08-13-2008, 02:07 PM   #2
Registered: Aug 2008
Distribution: opensuse, RHEL
Posts: 374
Blog Entries: 1

Rep: Reputation: 32

From some researching, I don't think 'update-initramfs' changes your initrd image. An initramfs image and initrd image are two ways of booting Linux. You either use one or the other. You can check by going into /boot and looking for files like initrd-x.x.img. If you have files in there with 'initrd' pre-fixed to them, you probably use initrd's.

So, assuming your using initrd's, you need the 'mkinitrd' command with '--preload=<module>' option. Here's what it may look like for you:

mkinitrd --preload=<network module> <nameUchoose>.img 2.6.25-2-686
You may even have to preload the NFS modules. the man page for mkinitrd may be useful to you as well.

Good Luck and let us know of your outcome!

Last edited by CRC123; 08-13-2008 at 02:08 PM.


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
How to create new initrd.gz (or initrd.img) file? kkpal Programming 2 12-10-2007 09:38 AM
Add new cciss driver module to initrd.img ,stage2.img kunalroy2002 Linux - Software 4 09-25-2007 01:09 AM
Failed to symbolic-link boot/initrd.img-2.6.18-4-486 to initrd.img Scotteh Linux - Software 8 06-02-2007 12:24 AM
does initrd need the driver in kernel made as a module aus9 Linux - Kernel 4 05-04-2007 09:55 AM
PXEboot for slackware 11 - cannot mount NFS root +Yan Linux - Server 0 04-11-2007 10:05 AM > Forums > Linux Forums > Linux - Software > Linux - Kernel

All times are GMT -5. The time now is 04:13 PM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration