• Trond Myklebust's avatar
    From: <martin@meltin.net> · 63864c3c
    Trond Myklebust authored
     
    Forward-port from 2.4:
     
    The following patch pulls an NFS server IP address off root_server_path
    (handed out via the DHCP root-path option), if it is present.  For example,
    you can do this sort of thing in dhcpd.conf:
     
      root-path = 192.168.1.33:/tftpboot/yip.zImage
     
    This lets you mount your root filesystem off a different machine than you
    booted from, without needing to use kernel command-line parameters.
     
    The patch appears to be backwards compatible.
     
    RFC2132 says this about the root-path option:
     
       This option specifies the path-name that contains the client's root
       disk.  The path is formatted as a character string consisting of
       characters from the NVT ASCII character set.
     
    This is sufficiently vague to allow the path-name to include an IP-address.
    Also, I found some documentation for FreeBSD saying it does this too, so it
    must be right, because those FreeBSD guys are really smart...  :-)
     
    The only downside of the patch is that the summary that ipconfig prints can
    be a little odd when the kernel command line overrides whatever ipconfig gets
    from (say) DHCP.  The address from the kernel command line seems to get
    stripped off early, so ipconfig reports it, but it doesn't report the kernel
    command line NFS path, since that's handled a bit later...  This small
    cosmetic problem looks difficult to "fix" without rewriting quite a bit of
    stuff...
    63864c3c
nfsroot.c 12.8 KB