Annotated edit history of
SoekrisPXEBootHowto version 3, including all changes.
View license author blame.
Rev |
Author |
# |
Line |
1 |
AristotlePagaltzis |
1 |
[CRCnet] uses a lot of [Soekris | http://www.soekris.com] BiscuitPCs and I wanted a nice fast way to install and configure them. |
|
|
2 |
|
|
|
3 |
Each Soekris has a CompactFlash slot into which we insert a 64MB CompactFlash card. This is the system disk. It is mounted read-only during normal operation and we use a custom built LinuxDistribution. The Soekris [BIOS] supports [PXE] booting. The solution that I came up with PXE-boots the Soekris, copies a basic system onto the flash card, reboots the biscuit [PC] and configures it automatically. Minimal user interaction is required. |
|
|
4 |
|
|
|
5 |
You need two components to get [PXE] to boot successfully: |
|
|
6 |
|
|
|
7 |
# A [DHCP] server to pass basic network configuration to the client |
|
|
8 |
# A [TFTP] server to serve up PXELINUX and your [Kernel]. |
|
|
9 |
|
|
|
10 |
!! Configuring [DHCP] |
|
|
11 |
|
|
|
12 |
You'll need the following options in your [DHCP] configuration such that the machine you want to [PXE]-boot is passed them. |
|
|
13 |
|
|
|
14 |
<verbatim> |
|
|
15 |
# Address of the tftp server |
|
|
16 |
next-server 10.1.224.254; |
|
|
17 |
# Filename to load off the tftp server |
|
|
18 |
filename "pxelinux.0"; |
|
|
19 |
</verbatim> |
|
|
20 |
|
|
|
21 |
!! Configuring [TFTP] |
|
|
22 |
|
|
|
23 |
If you are running [Debian], make sure you are using the <tt>tftpd-hpa</tt> package. Set <tt>tftproot</tt> to <tt>/tftproot</tt>. Inside <tt>tftproot</tt> you need to put the <tt>pxelinux.0</tt> image and create a <tt>pxelinux.cfg</tt> directory. Inside this directory place a configuation file called <tt>default</tt>. It should contain the following:'''' |
|
|
24 |
|
|
|
25 |
<verbatim> |
|
|
26 |
SERIAL 0,19200 |
|
|
27 |
DEFAULT soekris |
|
|
28 |
TIMEOUT 30 |
|
|
29 |
PROMPT 1 |
|
|
30 |
IPAPPEND 1 |
|
|
31 |
|
|
|
32 |
label soekris |
|
|
33 |
kernel bzImage-2.4.26-bpc-pxe |
|
|
34 |
append root=/dev/nfs nfsroot=10.1.224.254:/exports/soekris ip=:::::eth0:dhcp panic=10 ramdisk_size=32768 console=ttyS0,19200n8 |
|
|
35 |
</verbatim> |
|
|
36 |
|
|
|
37 |
You also need to ensure the kernel image referenced above (in the <tt>kernel</tt> line) is in your <tt>tftproot</tt>. |
|
|
38 |
|
|
|
39 |
!! Installing the Flash Card |
|
|
40 |
|
|
|
41 |
Once you have the system [PXE]-booting successfully and loading the [NFS] FileSystem you are almost home and hosed. To achieve the configuration of the machine and install the flash card I simply editted the inittab(5) file on the [NFS] root to load a [Shell] script rather than spawning a getty. This script mounts the flash card read-only and copies a base image across on to it. This step is likely to be very user specific. Once the installation and configuration is complete the biscuit PC can be rebooted and it's up and running. |
2 |
AristotlePagaltzis |
42 |
|
|
|
43 |
---- |
3 |
AristotlePagaltzis |
44 |
Part of CategoryHowto, CategoryNetworking |