bedingt durch erhebliche Schwierigkeiten einen neuen
Kernel zu booten benötige ich einiges zum Verständnis.
Zur Zeit boote ich mein System über die boot.ini der
Primären Partition (Windows).
Debian läuft auf der erweiterten Partition (hda5).
Nachdem der Kernel compiliert und installiert wurde
rufe ich noch die lilo.conf auf, mache benötige Änderungen
und rufe anschließend lilo noch mal auf.
Danach mounte ich mir mein Diskettenlaufwerk und schreibe
den Bootblock mittels
Code: Alles auswählen
dd if=/dev/hda5 of=/mnt/disk/bootsect.lin bs=512 count=1
Was genau wird in dieser Datei (bootsect.lin) abgelegt ?
Meinem bisherigen Verständnis nach der bootloader (lilo)
mit den benötigten Informationen "wo ist das root fs",
"wo ist der Kernel" usw.
In Zusammenhang mit Fehlern beim booten wie
cannot open root fs
cannot mount root fs
frage ich mich wie er ohne Zugriff auf das root fs den Kernel
überhaupt booten konnte bzw. tut er das überhaupt ? .
Mir kommt es so vor als wenn er das tut,
ich sehe ja nach der Auswahl im Bootmanager
von Windows das er meine neue Kernelversion anzeigt und grundsätzlich
diesen auch auspackt und startet. Auch ist noch zu sehen das
er z.B. hdc oder hde erkennt.
Hier habe ich mit meinem bisherigen Verständis einen Konflikt.
Um es noch mal mit meinem Worten bzw. meinem bisherigen Verständnis
zu sagen.
Nachdem ich im bootloader Debian ausgewählt habe findet er anhand
der im bootlader befindlichen Parameter (z.B. root fs auf hda5)
den Kernel, packt diesen aus bzw. startet ihn.
Er bootet also meiner Meinung nach den Kernel von hda5 und behauptet
kurze Zeit später er findet das root fs nicht bzw. kann dieses
nicht mounten !?
Vielleicht gibt es jemand der den Vorgang wie ich ihn beschrieben
habe erklären kann. Also, was passiert genau ab dem Zeitpunkt
der os Auswahl im bootmanager -> Kernel auspacken -> starten -> Module laden usw.
Eine Erklärung kann auch auf Technische ebene runtergebrochen werden.
Thx