PXES logo

PXES HOWTO: Using SYSLINUX to boot PXES from HD, easily

by Pål Røtnes (pal@zc.no)
Copyright © 2003. All rights reserved.
This software is free software under the GNU General Public License.

Author

Pål Røtnes
Original HOWTO can be found [here]

What it is and what it isn't

This how-to explains how you can use SYSLINUX to boot PXES from the hard drive of the "thin" client. This is ideal for all those old PC with small HD's and old NIC's with no PXE or ROM-chips.

This how-to also provides you with an install floppy and how to create your own PXES floppy set to use with the install floppy, which is handy because we can't rely on old CD-ROM's, and we probably don't want CD-ROM's on your thin clients.

This how-to only explains how to install SYSLINUX and PXES on a client. You should know how to build your own PXES image. If you don't already go see the Quick Start Guide or the how-to's.

Why and why not

While there are advantages of booting from the HD, there are also disadvantages. Think about if this setup suits your needs, maybe you should go with a network boot instead.

Why:

Why not:

Prerequisites and preparations

You'll need:

Creating the PXES floppy set

For details see the Quick Start Guide.

You only need to know that the only two files you need to get this to work is the kernel and initial ramdisk image. Rename them respectivly vmlinuz and pxes.rd, as this will make the install script actually work.

When you have configured and created PXES, copy the two files onto a windows machine for zipping, or if you're a linux user you can probably zip them in Linux, but remember that it has to be on FAT16 disks.
Insert a floppy and create a new zip archive on the disk that contains the two files vmlinuz and pxes.rd. This should end up with a set of about five disks if you used X 3.3.6.
Remember to label the disks with numbers and what configuration of PXES they contain.

Repeat this step and create more PXES floppy sets if you need different configurations, it is also a good idea to back up the disk set and/or the two files.

Creating the install floppy

Downloaded and install Winimage, run it, then drag-and-drop the bootdisk.imz-file into the Winimage window. Put a floppy in you drive and click on the menu item Disk->Write Disk. This will create a bootable DR-DOS floppy with the neede SYSLINUX files (v2.06) and an install script to make things even easier for you.

Now you should have one SYSLINUX/PXES install floppy and at least one set of disks with the PXES files zipped.

Installing

Creating a partition

Boot up the "thin" client with the bootable install floppy you created and run fdisk. This will start the fdisk program that will create a new partition on your HD and erase all data.

Create a partition that is about 20MB, it will to with plenty room to spare, at least for most PXES installations.

Installing

Boot the computer again, this time run the install script by typing install and follow the on-screen instructions.

If you made the partition and disks correctly, and followed the on-screen instructions you should now have a bootable SYSLINUX/PXES computer!

Notes on the installation

All the files on the HD have the hidden, read only and system bits set so the HD would appear empty and small. This will probably not stop many snooping around, but it might be enough to turn away inquisitive students from mangeling the installation. (This was originally created for use in schools.)

But remember: Obscurity is not security! If you have problems with mangled installations, just remove the floppy drive (and CD-ROM) or turn off booting from floppy in the BIOS and password protect it (as you should do anyway).

Rescue

During the installation you may have noticed that there was made a backup of the system files. This is in case on of the files get corrupted or the disk is made unbootable (which shouldn't really happen).

Instead of bringing your PXES install disk set around and installing it again you can try to boot the computer with a boot disk, like the one you created here, and run the rescue script.

This script attempts to restore the SYSLINUX and PXES files and recreate the bootsector. If you're lucky your installation should now work again.

Resources