[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Netboot: kernel panic no init found



On Tue, 2004-10-12 at 12:36, Graham Leggett wrote:
> Hi all,
> 
> I have followed the instructions for configuring a diskless client using 
> system-config-netboot, and at the point where the diskless client is 
> supposed to boot up, it dies saying:
> 
> Kernel panic: No init found
> 
> Finding nothing in the docs about troubleshooting (the docs just assume 
> everything will just work), I try the following:
> 
> - I try to mount the initrd.img file to see if the init program (which 
> is apparently a script called disklessrc) using the following command line:
> 
> mount /tftpboot/linux-install/Fedora_Core_2/initrd.img /mnt/root -o loop 
> -t ramfs
> 
> This shows the ramdisk to be empty, even though the ramdisk file is 
> 2.2MB in size.
> 
> I have no idea whether the ramdisk is in fact empty, or whether I am 
> mounting the ramdisk incorrectly: the absence of any kind of error 
> message when I mount the ramdisk suggests I am doing it correctly, but 
> then why would the ramdisk be empty when it is 2.2MB in size?

I think you mis-understand the initrd.img file. From the initrd man
page:

BOOT-UP OPERATION
       When booting up with initrd, the system boots as follows:

         1.  The  boot  loader  loads  the  kernel  program   and
         /dev/initrd's contents into memory.

         2. On kernel startup, the kernel uncompresses and copies
         the contents  of  the  device  /dev/initrd  onto  device
         /dev/ram0 and then frees the memory used by /dev/initrd.

It continues from there, but the point is that when you mount a ram
disk, it doesn't associate a pre-existing filesystem with it. The mount
gives you a brand new empty memory filesystem. The procedure as
described above adds the steps of uncompressing the initrd image, then
copying it onto the newly created ram disk.

You can verify its contents by doing something similar:

1. Copy your initrd to /tmp.
2. Rename it to include the .gz extension.
3. gunzip it.
4. mount it:  mount <unzipped img file> <some mount point> -o loop

-- 
C. Linus Hicks <lhicks nc rr com>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]