On Mon, Dec 24, 2007 at 09:21:05PM +0530, Shourya Sarcar wrote:
>  I had a few related questions on initramfs/initrd. If someone could provide 
>  me some help and/or point to places where I can go and look, that would be 
>  very nice.
> 
>  Is there a difference between initramfs and initrd ? If not, what's the 
>  difference between doing a "mkinitrd" and "update-initramfs -cv"

Initrd is usually an image of a filesystem (cramfs, ext2fs, etc.).
Initramfs is a series of cpio archives (compressed or not).

mkinitrd on current RedHat, Fedora, etc., really create initramfs
archives, not the old, filesystem image version.

>  When the kernel boots up, does it mandatorily require that the initramfs  be 
>  of the same version ?

Well, no. The initramfs is a linux system per se, with a init program
that does the real bootstrap it self.

So, in order to mount the real root, it loads a pre-compiled list of
modules (done with mkinitrd/mkinitramfs). Those *do* depend on the
kernel version.

> When I try to bootup on vmlinuz-2.6.24-rc6, and my 
>  initrd is initrd.img-2.6.24-rc5, then my boot hangs. I am using Ubuntu 7.10 
>  as my base distro and the hang is at "Waiting for root filesystem".

It depends on your hardware and details of the kernel compilation, so
this is just a guess, but it may had failed due to wrong version of
modules:
* ext3 and jbd, for ext3;
* dm_mod, dm_mirror, dm_zero, dm_snapshot, ..., for LVM, EVMS, LUKS partitions, 
etc.;
* scsi_mod, sd_mod, for scsi disk devices;
* the driver for your disk controller.

So, after a kernel upgrade, the kernel package creates a new
initrd/initramfs. If you're upgrading manually, create one yourself.

Usually, it's just:
mkinitrd -v /boot/initrd-<kernel_version>.img <kernel_version>

-- 
Luciano Rocha <[EMAIL PROTECTED]>
Eurotux Informática, S.A. <http://www.eurotux.com/>

Attachment: pgpOOBzmUFmnZ.pgp
Description: PGP signature

Reply via email to