summaryrefslogtreecommitdiff
path: root/grub
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@schwinge.name>2010-12-13 17:11:51 +0100
committerThomas Schwinge <thomas@schwinge.name>2010-12-13 17:11:51 +0100
commit2d75167da62e3486836e5f1773e5f1ab06e43fe8 (patch)
treee44fc83e0b1419836d1b21652ad1d38b8d0af2c4 /grub
parent217998d56f5b6424a685f8c87f2c0e924d1c89da (diff)
parent5c5c16e265d8ef56b71f319885f32bf144bdea23 (diff)
Merge branch 'master' into external_pager_mechanism
Conflicts: microkernel/mach/external_pager_mechanism.mdwn
Diffstat (limited to 'grub')
-rw-r--r--grub/tftp_boot.mdwn42
1 files changed, 42 insertions, 0 deletions
diff --git a/grub/tftp_boot.mdwn b/grub/tftp_boot.mdwn
new file mode 100644
index 00000000..8e307b4f
--- /dev/null
+++ b/grub/tftp_boot.mdwn
@@ -0,0 +1,42 @@
+## <a name="Advanced_Grub"> Advanced Grub </a>
+
+[Grub](http://www.gnu.org/software/grub/) is a capable boot loader. This document is intended to capture some of its most interesting features and try to explain them a bit better than the texinfo documentation.
+
+### <a name="Debian_Grub"> Debian Grub </a>
+
+The Debian grub packages do not have networking enabled, so you have to apt-get the source, modify the debian/rules file to include --enable-network-card and dpkg-buildpackage to get a .deb of grub that supports TFTP.
+
+1. cd /usr/src/debian
+2. apt-get source grub
+3. cd grub-\_VERSION\_
+4. Add `--enable-tulip` or similar for your NIC to the `./configure` line of the `configure-stamp` target in the `debian/rules` file.
+5. `dpkg-buildpackage` (as `root`)
+6. `cd ..`
+7. `dpkg -i grub*.deb`
+8. cp /lib/grub/\_ARCH\_/\* /boot/grub/, e.g., _ARCH_ is `i386-pc`
+9. Edit your `/boot/grub/menu.lst` (see below)
+10. If your boot disk is `/dev/hda` ==&gt; `grub-install (hd0)`
+
+### <a name="TFTP_Boot"> </a> TFTP Boot
+
+Using trivial ftp to load a kernel is one of the best features of Grub. Here is how it is done.
+
+The `menu.lst` can look something like this:
+
+ ifconfig --address=192.168.1.2 --server=192.168.1.1
+ root (nd)
+ kernel /gnu/boot/oskit-mach.gz root=device:hd0s2 --
+ root (hd0,1)
+ module /hurd/ext2fs.static \
+ --multiboot-command-line=${kernel-command-line} \
+ --host-priv-port=${host-port} \
+ --device-master-port=${device-port} \
+ --exec-server-task=${exec-task} \
+ -T typed ${root} $(task-create) $(task-resume)
+ module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
+
+**Note: Make sure there are NO spaces after the trailing backslases (\\)!!**
+
+For more information on GNUmach modules lines and installation setup, see [[Hurd/InstallNotes]]
+
+-- [[Main/JoachimNilsson]] - 13 Apr 2005