# kernel panic - not syncing ... diskless node x86_64

## Tzuriel

I think these two issues may be related in some way so I've put them in the same post. I'm following the gentoo diskless howto and it went pretty smooth when I did this in 32bit mode. Now I've built a system (master & slave) as x86_64 and my problem is when booting the slave node, I get the following error. 

```

Failed to execute /linuxrc. Attempting defaults... 

Kernel panic - not syncing: No init found. Try passing init= option to kernel. 

```

I have found init (/sbin/init on master and nodes) and placed the path in the init= option of the pxelinux.cfg/default file. 

```

DEFAULT /bzImage 

APPEND ip=dhcp root=/dev/nfs init=/sbin/init nfsroot=192.168.xx.xxx:/diskless/192.168.xx.xxx 

```

But this doesn't fix the problem. So I'm wondering about the libs I've got installed (since this seems to be the difference from the working system). 

I'm wondering if I did this correctly. In section 6.1 of the gentoo diskless howto where the /lib files get copied to the diskless/a.b.c.d/lib (note a.b.c.d is ip) dir like ... 

```

rsync -avz /lib /diskless/192.168.1.21 

```

I created a /lib64 dir on the nodes file system and ran the same 'rsync' command which gave me something like ... (/ of nodes filesystem) 

```

# ps -ef 

... 

lrwxrwxrwx 1 root root 5 Nov 20 15:38 lib -> lib64 

drwxr-xr-x 2 root root 6 Nov 20 15:35 lib64 

... 

```

Is this correct and do I need to do the same for lib32 or might this be giving me the problem I'm having with the kernel panic?

Any help much appreciated.

----------

## BradN

Have you verified that the root filesystem is actually being mounted with NFS?  Make sure you have the root-over-nfs option enabled in the kernel config as well.

----------

## Tzuriel

Yes, I'm not at the machine now, but I will post more of the boot logs in about 10 hrs. Root is being mounted over NFS which is enabled in the kernel.

----------

## BradN

You might consider putting a statically compiled busybox or bash on the nfs root and using that as the init= just for debugging.  If that runs, you can experiment running other commands and finding why they fail.

----------

## Tzuriel

 *BradN wrote:*   

> Have you verified that the root filesystem is actually being mounted with NFS?  Make sure you have the root-over-nfs option enabled in the kernel config as well.

 

Ok, here's the last part of the output from the node boot that I typed over which shows root mounted. Let me know if there are any other ideas to try.

```

...

Sending DHCP requests .<6>bnx2: eth1 NIC Link is Up, 100 Mbps full duplex.., OK

IP-Config: Got DHCP answer from 192.168.2.10, my address is 192.168.2.101

IP-Config: Complete:

   device="eth1, addr=192.168.2.101, mask=255.255.255.0, gw=192.168.2.1, host=192.168.2.101, domain=mydomain, nis-domain=(none), bootserver=192.168.2.10, rootserver=192.168.2.10, rootpath=

Looking up port of RPC 100003/2 on 192.168.2.10

Looking up port of RPC 100005/1 on 192.168.2.10

VFS: Mounted root (nfs filesystem) readonly.

Freeing unused kernel memory: 184k freed

Failed to execute /sbin/init. Attempting defaults ...

Kernel panic - not syncing: No init found. Try passing init= option to kernel.

```

----------

