I'm trying to modify the initrd (arm_root.img) for the QEMU ARM test image (http://wiki.qemu.org/Testing#QEMU_disk_images
). I am able to extract it using gunzip and cpio, but I can't recreate the archive so that the VM will boot properly (I get a kernel panic). I believe my problem is with how I am invoking cpio: if I simply gunzip/zip the existing initrd cpio archive the VM boots properly, but if I extract and re-create the cpio archive (without modification) the boot fails. So, I was wondering: could you tell me what cpio options you used to create the arm_root.img archive?
Pardon for any obvious issues I might be overlooking. I've never delved into initrd before; I am actually just trying to set up automated testing for some ARM code that was contributed to one of my open source projects. I am a bit far down the rabbit hole, I'm afraid. I've googled and searched the mailing lists but wasn't able to find a solution to my problem.
Thanks for all the great work regardless,
Here is how I am extracting the archive, after gunzip:
$ cpio -i -vd -H newc < ../arm_root
Here is how I am creating it, before gzipping it:
$ rm ../arm_root
$ find . -depth -print | cpio -o --format=newc > ../arm_root
Here is a snippet from the console when the kernel panic occurs:
802.1Q VLAN Support v1.8 Ben Greear <address@hidden
All bugs added by David S. Miller <address@hidden
VFP support v0.3: implementor 41 architecture 1 part 10 variant 9 rev 0
Root-NFS: No NFS server available, giving up.
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "<NULL>" or unknown-block(2,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)