[rhelv6-list] Getting kernel panic using custom initrd image

kelvin maxnn kmaxnn at gmail.com
Tue Feb 1 08:04:46 UTC 2011


Hi all,
sorry for my bad English, in advance.


Since long time,  I have been making custom initrd files for rhel versions
like RHEL4.X , RHEL5.X and now trying the same for RHEL6.
Using the original vmlinuz (that comes with RHEL iso) and my custom initrd,
I used to do pxe booting.

My custom initrd I used to create something like this, pseudo steps:-
1. Create all the necessary / directory hierarchy like /etc, /usr, etc.etc.
and copy necessary files in that.
2. /bin/dd if=/dev/zero of=/tmp/initrd.img bs=1k count=165888 (the value of
count is based on some custom calculations)
3. sbin/mke2fs -b 1024 -q -m0 -F -O none /tmp/initrd.img
4. /bin/mount -o loop /tmp/initrd.img /mycustominitrd
5. Using /bin/cp --recursive --preserve , I used to copy the custom
directory hierarchy to /mycustominitrd.
6. unmount /mycustominitrd.
7. Using "gzip --force" , I used to create initrd image (without using
mkinitrd or dracut).

This customized initrd image along with original vmlinuz , I use to so pxe
booting my machines.

Up to RHEL5.X, it worked perfectly. But now, it seems that vmlinuz of RHEL6
expects something  different than RHEL5 vmlinuz.
When I do pxe booting the machine using RHEL6's vmlinuz and my initrd, it
takes vmlinuz and initrd through tftp successfully, but after extracting
initrd, it gives me error as follows:-

RAMDISK: gzip image found at block 0
List of all partitions:
No filesystem could mount root, tried:  iso9660
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(9,1)
 Pid: 1, comm: swapper Not tainted 2.6.32-71.el6.x86_64 #1
 Call Trace:
............ (please see the screenshot for full details....)


More surprisingly, if I try to use the same initrd with RHEL5 or RHEL4
vmlinuz it works perfectly.


This is the some of the contents of pxelinux.cfg file:
KERNEL feb1/vmlinuz
APPEND ramdisk_blocksize=1024 ramdisk_size=165888 initrd=feb1/initrd.img
IPAPPEND 3


Also, if I replace my initrd with initramfs of RHEL6 , i get following
error:-

dracut: FATAL: No or empty root= argument
dracut: Refusing to continue
dracut: FATAL: No or empty root= argument
dracut: Refusing to continue


Signal caught!

Boot has failed, sleeping forever.


Am I missing something in pxe.cfg ?
Does vmlinuz of RHEL6 expects something more than RHEL5 vmlinuz?

Can anybody please guide me on this issue?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/rhelv6-list/attachments/20110201/bdf0abe5/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rhel6_kernel_panic.PNG
Type: image/png
Size: 435503 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/rhelv6-list/attachments/20110201/bdf0abe5/attachment.png>


More information about the rhelv6-list mailing list