GRUB
From Codtech
Contents |
Introduction
GNU GRUB is a Multiboot boot loader. It was derived
from GRUB, GRand Unified Bootloader, which was originally designed and
implemented by Erich Stefan Boleyn.
PXES 1.0 includes GRUB 0.93 also known as GRUB Legacy.
Network Boot
Although GRUB is a disk-based boot loader, it does provide network support. To use the network support, at least one network driver must be enabled in the GRUB build process.
Network Drivers
Some drivers have been enabled in the PXES build process and thus
are supported by the two provided GRUB second stage images,
nbgrub and pxegrub.
This is the complete list of NICs supported:
- 3Com900-TPO
- 3Com900-Combo
- 3Com905-TX
- 3Com905-T4
- 3Com900B-TPO
- 3Com900B-Combo
- 3Com900B-2/T
- 3Com900B-FL
- 3Com905B-TX
- 3Com905B-T4
- 3Com905B-FL
- 3Com905C-TXM
- 3Com980-Cyclone
- 3Com9805
- 3CSOHO100-TX
- 3Com590
- 3Com595
- Intel EtherExpressPro100
- AMD Lance/PCI
- AMD Lance/HomePNA
- VIA 6102
- VIA 3043
- VIA 86C100A
- 3C595
- 3C90X
- EEPRO100
- LANCE/PCI
- VIA 86C100
- Intel EtherExpressPro100 82559ER
- Intel EtherExpressPro100 ID1029
- Intel Corporation 82559 InBusiness 10/100
- Intel EtherExpressPro100 82562EM
- LANCE 7990
- PCnet/ISA 79C960
- PCnet/ISA+ 79C961
- PCnet/PCI 79C970
- PCnet32
- PCnet/PCI-II 79C970A
- PCnet-FAST III 79C973
- PCnet/HomePNA 79C978
Although you can compile GRUB and add support for the NIC card you are
using.
For more information please see
netboot/README.netboot in GRUB source
distribution.
pxegrub
This is the second stage GRUB image you need if you are using PXE. Specific network drivers should be compiled in GRUB to support this network boot option.
nbgrub
This is the second stage GRUB image you need if you are using Etherboot. Specific network drivers should be compiled in GRUB to support this network boot option.
Configuration file
Can be specified on DHCP option 150 or its default value is (nd)/boot/grub/grub.conf.
| Note: If the option 150 cannot be set in the DHCP server the default value of (nd)/boot/grub/grub.conf can be used. |
DHCP Configuration
This is an excerpt from a dhcpd.conf supporting
GRUB.
ddns-update-style interim;
ignore client-updates;
option nbgrub-menu code 150 = text;
subnet 10.1.2.0 netmask 255.255.255.0 {
# --- default gateway
option routers 10.1.2.1;
option subnet-mask 255.255.255.0;
option nis-domain "example.com";
option domain-name-servers 10.1.2.1;
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 10.1.2.100 10.1.2.105;
default-lease-time 21600;
max-lease-time 43200;
next-server 10.1.2.1;
host pxes {
hardware ethernet 00:50:56:40:00:66;
fixed-address 10.1.2.106;
option tftp-server-name "10.1.2.1";
log(debug, substring(option vendor-class-identifier, 0, 9));
if substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
filename "/pxes/grub/pxegrub";
}
elsif substring (option vendor-class-identifier, 0, 9) = "Etherboot" {
filename "/pxes/grub/nbgrub";
}
option nbgrub-menu "(nd)/pxes/grub/menu.lst";
}
}
Password protected options
Menu entries can also be locked and prevents its selection unless the password is provided.
To see the editing features and how to use it check Editing a GRUB menu entry.
Plain text password
password mypass ... title CODTECH Universal Linux Thinclient (generic) lock kernel /boot/vmlinuz ro console=null root=/dev/ram ramdisk_size=24578 initrd /boot/pxes.squash
MD5 encrypted password
Obtain the encrypted password with
$ grub-md5-crypt
Then
password --md5 $1mypass ... title CODTECH Universal Linux Thinclient (generic) lock kernel /boot/vmlinuz ro console=null root=/dev/ram ramdisk_size=24578 initrd /boot/cult.initrd
Resources
Categories: PXES | CULT | Linux | Boot loader

