Om Linux te kunnen opstarten heb je een
bootloader nodig. Een bootloader is het eerste stukje software dat draait als je een computer opstart.
GRUB, de GRand Unified Bootloader, is tegenwoordig de standaard bootloader van de meeste Linux-distributies. Tijdens het installeren van Linux word je stap voor stap geholpen met het configureren van GRUB. Met GRUB kan je ook Windows opstarten en gebruikersvriendelijke menu's maken waarmee je het gewenste besturingssysteem kan selecteren.
Heeft u een multiboot systeem met Linux èn Windows dan komt een gedeelte van GRUB vaak te staan in het master boot record (MBR) van de bootpartitie. Dit is meestal de C:\ partitie die Windows gebruikt. Het nadeel is dat bij een herinstallatie van Windows dit record wordt overschreven door de standaard bootloader van Windows. Het is dan niet meer eenvoudig Linux te starten tenzij u een apart Linux boot floppy heeft aangemaakt voor dit soort situaties. Op dit floppy komt dan GRUB te staan in plaats van op de bootrecord van de bootpartitie van Windows. Uw PC start dan dus automatisch Linux op zodra je met het boot floppy erin opstart en zonder floppy Windows.
De nu volgende stappen leggen uit hoe je stap voor stap een Linux boot floppy voor Fedora 7 kan maken.
1) Maak een leeg floppy
[root@localhost]# fdformat /dev/fd0
[root@localhost]# /sbin/mke2fs /dev/fd0
2) Maak directories op floppy aan en kopieer de stage1 en stage2 files
[root@localhost]# mount -t ext2 /dev/fd0 /mnt/floppy/
[root@localhost]# mkdir -p /mnt/floppy/boot/grub
[root@localhost]# cp /usr/share/grub/i386-redhat/stage* /mnt/floppy/boot/grub/
[root@localhost]# cp /usr/share/grub/i386-redhat/e2fs_stage1_5 /mnt/floppy/boot/grub/
[root@localhost]# umount /mnt/floppy
3) Start GRUB en installeer het op het voorbereide floppy
[root@localhost]# /sbin/grub
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename.]
grub> root (fd0)
Filesystem type is ext2fs, using whole disk
grub> setup (fd0)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (fd0)"... failed (this is not fatal)
Running "embed /boot/grub/e2fs_stage1_5 (fd0)"... failed (this is not fatal)
Running "install /boot/grub/stage1 (fd0) /boot/grub/stage2 p /boot/grub/grub.c
onf "... succeeded
Done.
grub> quit
4) Maak met uw favoriete teksteditor een file grub.conf aan.
#
# Sample boot menu configuration file
#
# By default, boot the first entry.
default=0
# Boot automatically after 10 secs.
timeout=10
# For booting Fedora 7
title Red Hat Linux (2.6.21-1.3194.fc7)
root (hd0,5)
kernel (hd0,5)/vmlinuz-2.6.21-1.3194.fc7 ro root=/dev/sda3
initrd (hd0,5)/initrd-2.6.21-1.3194.fc7.img
Voor nog meer configuratie opties zie:
http://www.gnu.org/software/grub/manual/grub.html#Configuration
Belangrijk: "(hd
x,
x)" is de /boot partitie waar de Linux kernel en het initrd image te vinden is. GRUB maakt hiervoor gebruik van een eigen onafhankelijk benamingssysteem. Het eerste deel "hd0" betekent de eerste harde schijf. Het tweede getal het partitienummer beginnend bij 0. GRUB's benaming "(hd0,5)" staat gelijk aan /dev/sda6 (SCSI) of /dev/hda6 (EIDE). En "(hd1,0)" voor de 1e partitie op de 2e harde schijf (/dev/sdb1 of /dev/hdb1).
5) Kopier de grub.conf file naar de juiste directory op het floppy.
[root@localhost]# mount -t ext2 /dev/fd0 /mnt/floppy/
[root@localhost]# cp grub.conf /mnt/floppy/boot/grub
[root@localhost]# umount /mnt/floppy
6) Klaar! U kan uw PC proberen op te starten via het floppy.
Komt u na het opstarten niet terecht in het bootmenu maar in de GRUB prompt dan staat er waarschijnlijk nog een fout in uw grub.conf file.