Ubuntu RAIDbox: Part 2

With the hardware assembled, the next step is to install Ubuntu Server 7.10. I did not want to use an optical drive, but if you want to hook up an optical drive and install from the CD, you can just insert Ubuntu Server 7.10, configure the BIOS to boot from the optical drive, reboot, and go to Part 3.

For the adventurous, here’s how to PXE boot Ubuntu Server 7.10 on your RAIDbox (or any PXE-capable machine, for that matter) from another Linux server on your LAN.

Pick a Linux machine on your LAN to act as the PXE server for the PXE boot process on your RAIDbox. I chose a server running 64-bit Ubuntu Server 7.04, but I anticipate any recent version of Ubuntu would have the same setup process. Here’s everything you need to do on the PXE server:

Download (or copy from another machine) the .iso file for Ubuntu Server 7.10.

Install dnsmasq and prepare the tftpboot directory:

sudo apt-get update
sudo apt-get install dnsmasq
sudo mkdir /tftpboot
sudo chmod 755 /tftpboot
sudo chown nobody: /tftpboot

Run these commands to extract needed files from the Ubuntu Server 7.10 image:

sudo mount -o loop /location/of/your/ubuntu-7.10-server-i386.iso /mnt
sudo cp -a -r /mnt/install/netboot/ubuntu-installer /tftpboot
sudo cp -a  /mnt/install/netboot/pexlinux.0 /tftpboot
sudo cp -a -r  /mnt/install/netboot/pexlinux.cfg /tftpboot

Edit /etc/dnsmasq.conf. The lines you add will look something like this. You need to provide an IP address that you want your RAIDbox to have, you need to specify the IP address of the PXE server you’re configuring, and you need to provide the IP address of the gateway you use to get to the internet, which is usually your LAN’s regular DHCP server. You must also list the MAC address of the network device you’ll use on the RAIDbox when PXE booting. (This makes sure no other devices on your LAN connect to the PXE server.) If your PXE server also has a human-readable name on your LAN, you can list it here. Otherwise, leave it blank.

dhcp-range=IPADDRESS.FOR.YOUR.RAIDBOX,IPADDRESS.FOR.YOUR.RAIDBOX,12h
dhcp-host=MAC:ADDRESS:OF:YOUR:RAID:BOX,IPADDRESS.FOR.YOUR.RAIDBOX
dhcp-boot=pxelinux.0,HUMAN_READABLE_NAME_OF_YOUR_SERVER,IPADDRESS.OF.YOUR.SERVER
dhcp-option=3,IPADDRESS.OF.YOUR.GATEWAY
enable-tftp
tftp-root=/tftpboot

Here’s how it might look:

dhcp-range=192.168.0.240,192.168.0.240,12h
dhcp-host=aa:bb:cc:dd:ee:ff,192.168.0.240
dhcp-boot=pxelinux.0,presence2,192.168.0.34
dhcp-option=3,192.168.0.10
enable-tftp
tftp-root=/tftpboot

(Re-)launch dnsmasq:

sudo /etc/init.d/dnsmasq restart

Leave a Reply

Your email address will not be published.