bootloader und kernel auf einer Festplatte (Betriebssystem Tutorial)

the snake II

Erfahrenes Mitglied
Guten Abend,

ich habe gerade das Tutorial Ein Betriebssystem mit C entwickeln von FreakyPenguin erfolgreich beendet.
Man erhält am Ende eine Datei "kernel" und einen Ordner "grub". Beides kommt in ein RAW-Floppy-Image (1,44MB, FAT), welches man dann auf eine Diskette schreiben kann um von der zu booten.
Ich möchte jetzt allerdings diesen Kernel von einer Festplatte booten. Aus dem Tutorial und anderen Quellen geht hervor, dass die ersten 512 Byte den Bootsektor darstellen und dem BIOS den Weg zum Bootloader weisen, der dann den kernel startet.

Meine Frage ist, wie schreibe ich den Bootloader (Grub) so auf die Festplatte, dass er vom BIOS erkannt wird?


Vielen Dank im Vorraus!
 
Entweder mit der Grub Shell die du unter den meisten Linux Distributionen hast oder der Super Grub Disk, die ich persönlich bevorzuge, da man nicht zwingend ein laufendes System benötigt.

Erstelle eine leere Partition mit Fat32 oder ext2 bzw. 3 als Dateisystem. Anschließend startest du die SGDoder die Grub-Shell eines Live-Systems (einfach grub in ein Terminal eingeben). Grub greift auf die Festplatten folgendermaßen zu:

Code:
hd0 - erste Festplatte
hd1 - zweite Festplatte etc.

hd0,1 - erste Platte zweite Partition etc.

Wenn du dich nun in der Grub-Shell befindest gibst du folgendes ein (unter der annahme deine Fat-Partition befindet sich auf der ersten Festplatte des Controllers und ist dort die zweite Partition:

Code:
root (hd0,1) # festlegen auf welcher Partition grub mit den Konfiguratonsdateien installiert werden soll
setup (hd0) # Festplatte in deren MBRgrub geschrieben wird

Nun musst du nur noch im Ordner grub auf der Partition die menu.lst anpassen.
Folgenden Eintrag hinzufügen:

Code:
title <such dir was aus>
root (hd0,1) # Partition auf der der Kernel liegt
kernel /kernel/image # Pfad zum Kernel

Am besten schaust du in der menu.lst oder der grub.conf der Foppy nach ob du noch irgendwelche weiteren Parameter angeben musst.
Ich würde dir empfehlen das mit ner LiveCD zu machen und ansonsten die Konfigurationsdatei vorher im Ordner grub anzulegen.
 
Vielen Dank für deine Hilfe!
Ich werde das gleich ausprobieren, wenn ich zu Hause bin!

Edit: Einwandfrei! LiveCD rein, installiern, die menu.lst anpassen => läuft
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück