Hello! I'm using TFTP, NFS and DHCP to boot a diskless node using PXELinux.
Each node has a basic root filesystem which resides in
/diskless/ip_address on the server
Right now, my node acquires an IP from my DHCP server, which instructs the bootrom to download a file called pxelinux.0, and the default pxelinux config file (/diskless/pxelinux.conf/default ) is shown below:
Code:
DEFAULT /bzImage
APPEND ip=dhcp root=/dev/nfs nfsroot=192.168.1.1:/diskless/192.168.1.21
The node downloads the bzImage via tftp (INTFTPD_PATH="/diskless") and boots the kernel. It goes through its hardware detection and all that fun stuff, and then the message:
Quote:
VFS: cannot open root device "nfs" or unknown block(2,0)
|
The root device that it is refering to "nfs" is that which is defined in the pxelinux default config as root = /dev/nfs
[NOTE: Modern kernels recognize root=/dev/nfs as a command-line argument] Which leads me to think that I am possibly missing something in the kernel (bzImage) that the client node is booting. Here is a grep NFS of the kernel .config file:
Code:
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFS_V4=y
# CONFIG_NFS_V4_1 is not set
CONFIG_ROOT_NFS=y
# CONFIG_NFS_USE_LEGACY_DNS is not set
CONFIG_NFS_USE_KERNEL_DNS=y
# CONFIG_NFS_USE_NEW_IDMAPPER is not set
CONFIG_NFSD=y
CONFIG_NFSD_DEPRECATED=y
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
# CONFIG_NFSD_V4 is not set
CONFIG_NFS_ACL_SUPPORT=y
CONFIG_NFS_COMMON=y
From what I can see, everything is enabled that needs to be enabled. Maybe a missing kernel option isn't the answer.
ANY suggestions would be awesome!