akonstam@xxxxxxxxxxx wrote:
I am getting a familiar message when booting my FC2 system but for the life of me I can't remember what to do to fix it.
It is the well known: kernel panic : no init found Try passing init= option to kernel.
Well the initrd file is there. /initrd exists.
Could someone job my memory? Getting old is hell.
What might the init= option look like?
the initrd has almost nothing to do with the init= parameter.
The initrd is a file, which contains a small filesystem, with very basic funcionality. This basic system is mounted as the rootpartition. If it has done it's job, it mounts the real filesystem and changes the systemroot to this new mount point (this is done with the command pivot_root).
In this recently mounted root filesystem (which is the same filesystem you can see while working with your distro) the kernel searches for the command init, the root of all processes. It has to know where init is, if it can't guess successfully. If init is on /dev/hda2 try passing init/dev/hda2
If you're interested in the contents of your initrd and what's executed during the short period in the very beginning when the initrd is mounted, try this:
cp /boot/initrd-2.6.6-1.435.2.3.img ~
gunzip -S .img initrd-2.6.6-1.435.2.3.img
su
(enter password for root)
mount -o
mount -o loop initrd-2.6.6-1.435.2.3 /mnt/tmp/ (/mnt/tmp mus exist of course !)
cd /mnt/tmp
Here are the contents of your initrd. The skript linuxrc in this directory is what's executed. At the bottom, you can see that the root filesystem is changed.
greets boris