| 1 | 1 |
new file mode 100755 |
| ... | ... |
@@ -0,0 +1,66 @@ |
| 0 |
+#!/bin/bash |
|
| 1 |
+# make_pxe.sh - Create a PXE boot environment |
|
| 2 |
+# |
|
| 3 |
+# make_pxe.sh destdir |
|
| 4 |
+# |
|
| 5 |
+# Assumes syslinux is installed |
|
| 6 |
+# Configues PXE for Ubuntu Natty and FreeDOS |
|
| 7 |
+ |
|
| 8 |
+UBUNTU_MIRROR=http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64 |
|
| 9 |
+ |
|
| 10 |
+DEST_DIR=${1:-/tmp/tftpboot}
|
|
| 11 |
+OPWD=`pwd` |
|
| 12 |
+ |
|
| 13 |
+DEFAULT=$DEST_DIR/pxelinux.cfg/default |
|
| 14 |
+cat >$DEFAULT <<EOF |
|
| 15 |
+default menu.c32 |
|
| 16 |
+#display pxelinux.cfg/menu.txt |
|
| 17 |
+prompt 0 |
|
| 18 |
+#timeout 0 |
|
| 19 |
+ |
|
| 20 |
+MENU TITLE PXE Boot Menu |
|
| 21 |
+ |
|
| 22 |
+EOF |
|
| 23 |
+ |
|
| 24 |
+MENU=$DEST_DIR/pxelinux.cfg/menu.txt |
|
| 25 |
+cat >$MENU <<EOF |
|
| 26 |
+PXE Boot Menu |
|
| 27 |
+ |
|
| 28 |
+EOF |
|
| 29 |
+ |
|
| 30 |
+mkdir -p $DEST_DIR/pxelinux.cfg |
|
| 31 |
+cd $DEST_DIR |
|
| 32 |
+cp -p /usr/lib/syslinux/memdisk $DEST_DIR |
|
| 33 |
+cp -p /usr/lib/syslinux/pxelinux.0 $DEST_DIR |
|
| 34 |
+ |
|
| 35 |
+# Get Ubuntu netboot |
|
| 36 |
+mkdir -p $DEST_DIR/ubuntu |
|
| 37 |
+cd $DEST_DIR/ubuntu |
|
| 38 |
+wget -N --quiet $UBUNTU_MIRROR/linux |
|
| 39 |
+wget -N --quiet $UBUNTU_MIRROR/initrd.gz |
|
| 40 |
+cat >>$DEFAULT <<EOF |
|
| 41 |
+ |
|
| 42 |
+LABEL ubuntu |
|
| 43 |
+ MENU LABEL Ubuntu Natty |
|
| 44 |
+ KERNEL ubuntu/linux |
|
| 45 |
+ APPEND initrd=ubuntu/initrd.gz |
|
| 46 |
+EOF |
|
| 47 |
+cat >>$MENU <<EOF |
|
| 48 |
+ubuntu - Ubuntu Natty |
|
| 49 |
+EOF |
|
| 50 |
+ |
|
| 51 |
+# Get FreeDOS |
|
| 52 |
+mkdir -p $DEST_DIR/freedos |
|
| 53 |
+cd $DEST_DIR/freedos |
|
| 54 |
+wget -N --quiet http://www.fdos.org/bootdisks/autogen/FDSTD.288.gz |
|
| 55 |
+gunzip -f FDSTD.288.gz |
|
| 56 |
+cat >>$DEFAULT <<EOF |
|
| 57 |
+ |
|
| 58 |
+LABEL freedos |
|
| 59 |
+ MENU LABEL ^FreeDOS bootdisk |
|
| 60 |
+ KERNEL memdisk |
|
| 61 |
+ APPEND initrd=freedos/FDSTD.288 |
|
| 62 |
+EOF |
|
| 63 |
+cat >>$MENU <<EOF |
|
| 64 |
+freedos - FreeDOS |
|
| 65 |
+EOF |