Der Bootloader Grub hat lilo verdrängt. Er bietet mehr Möglichkeiten und ist einfacher in der Handhabung.
Grub_installieren
Er wird mit aptitude install grub in das System geholt, oder kann auch von Knoppix koppiert werden. Unter Knoppix befinden sich die relevanten Dateien unter:
/KNOPPIX/sbin/grub das ausführbare Programm /KNOPPIX/usr/lib/grub Die Installationsdateien /KNOPPIX/usr/share/doc/grub hier finden Sie im Subverzeichnis /i386/exaples/menu.list eine Beispieldatei.
Beipiel für Rechner caro mit 250GB Platte
caro:/boot/grub# fdisk -l Disk /dev/hda: 251.0 GB, 251000193024 bytes 255 heads, 63 sectors/track, 30515 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 780 6265318+ 7 HPFS/NTFS /dev/hda2 781 789 72292+ 83 Linux /dev/hda3 790 1569 6265350 83 Linux /dev/hda4 1570 30515 232508745 f W95 Ext'd (LBA) /dev/hda5 1570 2349 6265318+ 83 Linux /dev/hda6 2350 6429 32772568+ b W95 FAT32 /dev/hda7 6430 30515 193470763+ 83 Linux caro:/boot/grub#
Grub spricht die Platten wie folgt an:
IDE Platten
/dev/hda => (hd0,
/dev/hdb => (hd1,
SCSI Platten
/dev/sda => (sd0,
Floppy
/dev/fd0 (fd0,
Die Partition wird dann dahinter gesetzt, dabei beginnt grub die Numerierung mit 0.
/dev/hda1 => (hd0,0) spricht also die 1. Partition der IDE-Platte an
Falls /boot/grub noch nicht exitiert, muss es angelegt werden.
- Das Programm, die Installationsdateien und die menu.lst werden nach /boot/grub kopiert
- menu.lst wird editiert und an die eigenen Bedürfnisse angepasst.
D.h. evtl fast alle Einträge löschen (nur Windows und 1 Linux bleibt)
jetzt soll grub in den MBR installiert werden.
Da im MBR auch die Partitiontabelle liegt, ist dort nicht so viel Platz.
Aus diesem Grund wird grub in 2 Teilen installiert. stage1 hat eigentlich nur die Aufgabe stage2 ins Memory zu bringen.
Bootloader_in_MBR_installieren
cd /mnt/hda1/grub da /boot auf mnt/hda1 gemounted wurde ./grub grub aufrufen grub> Prompt von grub grub> install (hd0,0)/grub/stage1 (hd0,0) (hd0,0)/grub/stage2 (hd0,0)/grub/menu.lst grub> Jetzt können Sie mit CTRL-C abbrechen Erläuterung der Parameter install Ok, der Grubloader soll installiet werden. (hd0,0)/grub/stage1 Wo findet das Programm, den stage1-Teil (hd0,0) Wohin soll stage1 installiert werden (hd0,0==MBR (hd0,0)/grub/stage2 Wo findet das Programm den Stage2-Teil (hd0,0)/grub/menu.lst Wo liegt die Steuerungsdatei für das Menu
Nachdem der bootloader installiert ist, können durch Änderung in menu.lst andere Betriebssysteme hinzugefügt werden.
Die Reihenfolge der Parameter ist bindend. Natürlich könnten auch andere Verzeichnise und Partitions gewählt werden.
Für den Anfang sollte man sich aber eine feste Form angewöhnen.
Die_Datei_menu.lst
/boot/grub/menu.lst
# menu.lst - See: grub(8), info grub, update-grub(8) # grub-install(8), grub-floppy(8), # grub-md5-crypt, /usr/share/doc/grub # and /usr/share/doc/grub-doc/. ## default num # Set the default entry to the entry number NUM. Numbering starts from 0, and # the entry number 0 is the default if the command is not used. # # You can specify 'saved' instead of a number. In this case, the default entry # is the entry saved with the command 'savedefault'. default 0 ## timeout sec # Set a timeout, in SEC seconds, before automatically booting the default entry # (normally the first entry defined). # Nach der in timeout angegebenen Sekunden, wird das Defaultsystem bebooted timeout 25 # Pretty colours color cyan/blue white/blue # # # #splashimage anzeigen splashimage=(hd0,1)/grub/splashimage.xpm.gz # die folgenden Einträge beschreiben die bootbaren Systeme (hier 3) # Wie man sieht, liegen 2 Linux-kernel auf /dev/hda2 (hd0,1) # und ein XP auf /dev/hda1 (hd0,0) title Debian GNU/Linux, kernel 2.6.14.2-p4-s26-8 root (hd0,1) kernel /vmlinuz-2.6.14.2-p4-s26-8 root=/dev/hda3 ro title Debian GNU/Linux, kernel 2.6.14.2-p4-s26-5 root (hd0,1) kernel /vmlinuz-2.6.14.2-p4-s26-5 root=/dev/hda3 ro # This entry automatically added by the Debian installer for a non-linux OS # on /dev/hda1 title Microsoft Windows XP Professional root (hd0,0) savedefault makeactive chainloader +1
Falls Sie einen neuen Kernel kompilieren, so muss nur noch in der menu.lst ein weiterer Eintrag hinzukommen.
Splashimage
Grub kann bei der Menuauswahl ein Hintergrundbild (splashimage) zeigen. Allerdings muss Grub für das splashimage vorbereitet sein/werden.
caro:# apt-get install grub-splashimages
Weiterhin benötigen wir:
- Gimp (convert) für das Convertieren
- gzip zum Packen
Das Splashimage muss folgende Vorgaben erfüllen:
- Dateityp : xpm.gz 2.
- maximale Imagegrösse : 640x480
- maximale Anzahl Farben : 14 colors only
Wir benötigen ein Bild ( PNG oder JPG z.B ) und bringen dieses auf die Grösse 640x480 caro:/data/images# convert filename.png -resize 640x480 -colors 14 filename.xpm Das Ergebnis packen wir: caro:/data/images# gzip filename.xpm Danach kopieren wir das xpm.gz File noch in das Verzeichnis /boot/grub. caro:/data/images# cp filename.xpm.gz /boot/grub/splashimage.xpm.gz
Der Name kann natürlich auch anders sein, muss nur dann in menu.lst analog geändert werden. Wenn Sie aber den Namen so lassen, könnten Sie dasHintergrundbild austauschen, indem Sie einfach das neue .xpm.gz Bild nach /boot/grub/splashimage.xpm.gz kopieren. In Grub wäre keine weitere Änderung erforderlich.