Configure Grub4dos


All grub4dos functions are contained within the file grldr (or grub.exe if loading grub4dos from pxelinux). I have only tested Grub4dos version 0.4.4 Final (build 2009-03-31), unfortunately using this build resulted in errors when attempting a RIS install of Windows XP - see screenshot below.

A workaround for installing XP via RIS is included here.

PLEASE NOTE - this section is not intended to be a grub4dos guide. If you are not familar with Grub4dos then refer to README_GRUB4DOS.txt included in the Grub4dos download (or check out my Grub4dos guide here).

To automate all steps in this section, download/copy grub4dos-0.4.4.zip to C:\PXE\tools\ directory and run 2b_grub4dos.cmd. If using a different version of grub4dos, copy grub4dos-*.zip instead and edit the text in _parameters.cmd - replacing set grub4dos=grub4dos-0.4.4.zip with the grub4dos version being used/tested. E.g. for grub4dos-0.4.4-2009-06-20.zip - set grub4dos=grub4dos-0.4.4-2009-06-20.zip.

Download the grub4dos package and extract the contents to a tempory location - e.g. C:\Temp.

You can delete the temporary directory once the above files have been copied.

Creating A Grub4dos Configuration File

As stated here, a unique configuration file can be loaded by using a filename based on the client PCs MAC address or IP address. We will however be using the default file throughout the guide. To create the default file open notepad and copy the following text, then save as C:\PXE\tftpboot\menu.lst\default (do not use a file extention) -

DEFAULT 0

We will be adding to the grub4dos configuration file (C:\PXE\tftpboot\menu.lst\default) throughout the guide.

A brief note on the syntax used in C:\PXE\tftpboot\menu.lst\default - the majority of entries in this guide use the following format -

title WinPE 3.0
pxe keep
chainloader --raw (pd)/boot/pxeboot.0

The following information has been taken from the README_GRUB4DOS.txt file included with the Grub4dos build 2009-02-05 download -


Grub4dos Command Line

See here for a more detailed explanation of command line usage.

To drop into a command shell press [c] if a boot menu is displayed this is useful for debugging configuration entries. As stated earlier, if the configuration file is not found a command shell is loaded by default.

Any menu options can be entered from the grub4dos command line. Using the command line will display more detailed feedback than using configuration file entries and can be useful when problem solving.

The following command line entries can be used to boot a floppy disk image -

This results in the following output -

grub> map --mem (pd)/disks/odin1440.img (fd0)
FAT12 BPB found with 0xEB (jmp) leading the boot sector.

probed C/H/S =80/2/18, probed total sectors = 2880
.

grub> map --hook

grub> root (fd0)
 Filesystem type is fat, using whole disk

grub> chainloader +1

grub> boot_

Load Pxelinux

It is possible to load/return to pxelinux from grub4dos. Copy pxelinux.0 to the tftp root directory (e.g. C:\PXE\tftpboot\) and add the following entry to C:\PXE\tftpboot\menu.lst\default

title PXELinux
pxe keep
chainloader --raw (pd)/pxelinux.0