Hacking the FC boot.iso

Steve Manuel smanuel at fanbuzz.com
Wed Feb 23 15:53:31 UTC 2005


On Wed, Feb 23, 2005 at 08:45:55AM +0000, Paul Howarth wrote:
> I've rebuilt a boot.iso with an additional module for the standard
> kernel and that worked OK. How did you build the modules.cgz file?

1. mount boot.iso
2. uncompresss mount initrd.img
3. cd to modules dir
4. unzip and un-cpio modules.cgz in new directory.
5. cd into that dir then into the 2.6.5-1.358 dir then into the i585 dir
6. add/remove modules.
7. reverse process.

What I did was make a list of all modules that where included in
default boot.iso. I then recompiled the kernel/modules (I always kept them
together) then used that list to move the new modules over for my new
modules.cgz. I then do this to recreate the modules.cgz file:

    find 2.6.5-1.358 | cpio -ov -H crc | gzip -c9 > modules.cgz

This is done within the directory that I uncompressed the modules.cgz
file into so the directory structure is the same.

As I said in my original post, no matter which kernel/modules I use, the
modules can't be found. Is it enough to recreate the modules.cgz as I
described above? How does the kernel (anaconda) know where the modules
are? I am given a list of probed HW and the modules needed for said HW
so I *could* just compile those into the kernel but I want to understand
how this is working for the next time I do this. 

> 
> Given a list of files to include in the moduleball (modules-list, one
> filename per line), I do it like this:
> 
> $ cpio -o --format=crc < modules-list | gzip -c -9 > modules.cgz

Yep, pretty much what I did.

> 
> If you get it working, please do write up a HOWTO because the question
> of how to update the kernel in the installer is asked quite often.

If I figure this out I'd love to...

-- 
Steve Manuel
System Administrator
FanBuzz Inc.




More information about the fedora-list mailing list