Wednesday, February 6, 2008

PXEboot

I spent Mardi Gras playing with PXEboot ("pixieboot").

The goal was to be able to turn on a box from the factory, plugged into the LAN, and have it automatically install a pre-set, Linux configuration onto itself. The stuff needed to do this is wired into the BIOS of modern computers: just like the ability to boot off of a CDROM or, when I'm lucky, a USB key.

The steps, approximately are this:
  1. adjust the bios setting to permit a pxeboot, plug it into the network and turn it on.
  2. as the box comes up, it asks an appropriately-configured dhcp server for the location of a bootable image.
  3. the dhcp server points the box at a tftp server that has all the necessary stuff.
  4. the box pulls a kernel from the tftp server, and then boots, with the specified boot parameters. Linux is now running in memory.
  5. the boot parameters tell the now-running box where to find a kickstart file with instructions for a full installation.
  6. the kickstart file tells the box where the kernel and all the RPMs are for packages, what packages to install, what users to add, and so on.
  7. after all these steps are executed, the box is running, its hard disk is populated, and it's ready for a reboot.
So, once the servers are configured creating a new box with a standard configuration looks like this:

Unbox the machine, set the bios, plug in the ethernet cable, cycle the power, and come back in ten minutes or so.

Ethan McCallum's O'Reilly "book," Managing RPM-Based Systems with Kickstart and Yum, saved me a lot of time, even though the details have changed since it was written. It comes as a 47-page pdf (only!) and costs $10: plenty of book, and not much money.

Pretty nifty: push-button Linux installation from a network server.

Once this was up and limping, I gave blood at Belle Bonfils, went to my caucus, threw a Mardi Gras party, ate too much king cake, drank too much champagne, and stayed up late. Now I'm bloated, hung over, and haven't had any sleep.

If I were Catholic, it'd motivate me to give up stuff for Lent. I know: I won't go to any more political caucusses until Easter.

Except I think my precinct made me some kind of delegate to something. Oooh, my head.

No comments: