Dec 27

Installing RHEL3 on a Soekris 4801

Category: How-To Guides

I’ve been running m0n0wall on my Soekris 4801 for awhile now. I’ve decided that I want to get a little more control over my firewall and move back to Linux. So, I installed WhiteBox Linux on the 4801 and built a set of IPtables firewall rules.

Requirements

Instructions

  1. Configure whitebox linux for a PXE based installation
    1. export the installation tree via NFS or HTTP from a server on your LAN
    2. copy vmlinuz and initrd.img from the images/pxeboot/ directory to /tftpboot/ on your DHCP/PXE server
    3. append this entry into your pxelinux config file:
      label install-wb3
      kernel vmlinuz
      append initrd=/initrd root=/dev/ram0 console=ttyS0,9600n8
  2. Install the 1GB CF card into the Net4801’s CF slot. This will appear as an IDE drive “hdb” to the OS. The RHEL3 install consumes about 570MB, so 1GB is the minimum card size that can be used for this.
  3. Connect the soekris’ eth0 port to your LAN
  4. Connect the null modem between the soekris and a PC with a terminal emulator
  5. Open the terminal emulator and configure it for 9600/N/8/1, no flow control
  6. Apply power to the Soekris
  7. When prompted, hit CTRL-P to enter the soekris’ boot menu
  8. To PXE boot, type boot F0 and hit ENTER
  9. If your syslinux environment is properly configured, you should see a pxelinux prompt
  10. At the pxelinux prompt, type install-wb3 to begin the RHEL3 installation
  11. proceed through the RHEL3 installation…
    1. you must use GRUB, not LILO
    2. configure the partitions by hand, with one 1GB / partition
    3. do not create a swap partition, it’s bad to swap to flashdisk
    4. select a “custom” installation
    5. unselect all the package groups to get down to a 570MB installation
  12. when the system reboots, you’ll notice that the grub bootloader is pretty messy on the soekris’ serial console. to fix this:
    1. edit /boot/grub/grub.conf using your favorite editor
    2. change the ‘terminal’ line to look like this:
      terminal –timeout=10 –dumb serial
  13. use chkconfig to disable any unneccesary services to conserve memory
  14. reboot to test your new config
Comments are off for this post

Comments are closed.