Pantek Library
Hosting Provided By
CybrHost
High Speed Hosting

d-i nfsroot

From: Joey Hess <joeyh(at)debian.org>
Date: Wed Jul 25 2007 - 03:37:49 EDT


I thought some today about how to make d-i support installing nfsroot systems, as I set one up manually.

While there are plenty of other tools (LTSP, lessdisks, etc) I think there's still a use case here for d-i. Sometimes you want to customise an NFS root setup for one system, or don't want to learn a lot of new stuff, and the easiest way would be to boot d-i on that system and install over NFS.

There seem to be two peices:

First, partman would need to support NFS mounts. This is probably not very hard, and seems straightforward enough.

Secondly, we'd need some kind of nfsroot bootloader installer. This is the tricky part, but it's getting better.

Two things would need to be done in base-installer: It's easy to create an initramfs for NFS booting, just edit initramfs.conf and set MODULES=netboot, BOOT=nfs. I found it was also useful to edit /etc/kernel-img.conf and set link_in_boot = yes. This way the /boot directory can be used as the tftp boot directory, with vmlinuz and initrd.img pointing to the most recent kernel. (IMHO link_in_boot = yes would be a nice default in general..)

Other things the nfsroot bootloader installer would need to do include setting up a file in /boot/pxelinux.cfg/, either "default" or a file tuned to the NFS client's MAC address (better), and maybe installing syslinux so that pxelinux.0 is available.

Finally, it would need to probably display a big nasty message to the user, since there are some things they'll have to set up on their server:

  • tftp server setup
  • next-server setup in the dhcp server
  • /etc/exports
  • copy or bind mount (symlink won't usually work) the newly installed system's /boot into /var/lib/tftpboot/. Note that the location it's put in needs to match what d-i writes to the pxelinux.cfg file.
  • Copy /var/lib/tftpboot/pxelinux.0 into place.
  • symlink or otherwise setup /var/lib/tftpboot/pxelinux.cfg/
Do you need help?X

It seems like it would suck to put all this detail on a debconf screen, especially since you can't even test it properly w/o rebooting. (Unless we wanted to put a tftp client in d-i. ;-) Best thing would probably be to give a simple url to a web page somewhere that explains the server-side setup in detail.

-- 
see shy jo

-- To UNSUBSCRIBE, email to debian-boot-REQUEST@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

Received on Wed Jul 25 03:38:11 2007

This archive was generated by hypermail 2.1.8 : Thu Aug 09 2007 - 18:03:15 EDT


Contact Us  Legal Notices  Order Services Online 
Pantek Home  Privacy Policy  IT news  Site Map  Pantek Library