PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kernel ohne initrd



samy-delux
29.07.05, 14:01
Hi,

Ich wuerde gerne von der initrd, welche bei Ubuntu Standart ist wegkommen. Ich hab einen Centrino (Sonoma) Laptop und mein /boot/ ist ext2 formatiert.
Die ext2 Treiber muessen also fest in den Kernel, aber was noch?

mfg, samy

hp_tux
29.07.05, 14:07
Hallo,


Standart
guckst Du hier (http://de.wikipedia.org/wiki/Spezial:Search?search=Standart&fulltext=Suche).

*SCNR* :ugly:

Gruß

hp_tux

Max Power
29.07.05, 14:56
Oder noch besser hier http://www.ubuntu-de.org/wiki/kernel:kernel_bauen

*Zitat
Allerdings ist eine initrd in keinster weise notwendig, wenn man seine Hardware kennt (das tut man meist wenn man seinen eigenen Kernel kompiliert).

Columbo0815
29.07.05, 14:57
Das reicht nicht aus. Es müssen alle Treiber, die zum lesen der Festplatte benötigt werden fest eingebunden werden. Dazu gehört ext2 und auch zB der Chipsatztreiber usw.

hp_tux
29.07.05, 15:11
Hallo,


mein /boot/ ist ext2 formatiert
also, "/boot" ist hier nicht maßgebend, sondern einzig und allein "/". AFAIK wird "/boot" beim Booten nicht sofort gemountet, sondern erst einige Zeit nach "/".

Gruß

hp_tux

quinte17
29.07.05, 15:33
also um ansich den kernel in den ram zu bekommen, muss zuallererst einmal der bootloader das dateisystem checken... (oder wissen wo sich der kernel befindet)

dann bootet der kernel schon und ist funktionsfähig...
dass der dann noch die init-scripts findet.. des ist ja dann doch wieder eine andere sache ;)

und /boot könnte somit auch komplett leer sein. dieser ordner existiert nur um den kernel irgendwie aufzuräumen... die bootloader configs kannst auch woanders hintun (vorrausgesetzt man baut den aus sourcen oder kennt sich gut genug damit aus)

aber genug mit der spammerei

wie columbo schon gesagt hat, wichtig ist, dass zumindest dein festplatencontroller da ist und dass der kernel deine verwendeten dateisystem kennt. den rest kannst auch ein wenig durch rumprobieren rausfinden.. (und nachlesen)

schönen nachmittag noch!

hp_tux
29.07.05, 15:54
Hallo,


also um ansich den kernel in den ram zu bekommen, muss zuallererst einmal der bootloader das dateisystem checken
hmm, das gilt aber AFAIK nicht für LiLo, der "weiß" nichts über Dateisysteme - bei GRUB ist das anders.

Allerdings muß der Kernel (ohne initrd) mit dem Dateisystem der root-Partition ("/") umgehen können, sonst kann er nämlich "init" nicht finden und starten.

Gruß

hp_tux

quinte17
29.07.05, 16:00
Hallo,


hmm, das gilt aber AFAIK nicht für LiLo, der "weiß" nichts über Dateisysteme - bei GRUB ist das anders.


lilo merkt sich aber beim schreiben in den mbr wo der kernel liegt (auf welchen sektoren der festplatte) somit funktioniert der boot trotzdem, aber leider nicht mehr wenn man den kernel verschiebt oder ähnliches...

ich habe bewusst hinter meiner behauptung mit dem bootloader noch ein kommentar in klammern gesetzt gehabt :P

greetz

hp_tux
29.07.05, 16:12
Hallo,

also, um weitere Verwirrung zu vermeiden: wie der Bootloader beim Booten den Kernel findet, hat nichts, aber auch absolut garnichts damit zu tun, ob der Kernel nachher auch die Kontrolle an "init" abgeben kann.

Gruß

hp_tux

samy-delux
30.07.05, 14:00
Ich bau mir jetzt grad nen neuen Kernel.
Nachdem ich endlich diesen (http://mail.dir.bg/~sergos/piix.patch) Patch gefunden habe, der die ICH6M Southbridge mit dem PIIX Treiber im Kernel funktionieren laesst.
Jetzt hab ich den ext2/3 Treiber und den piix Treiber im Kernel, also gleich ;)
Ich werds einfach mal testen, aber DMA fuer meine HDD und CD Laufwerke waere schon ne tolle Sache ;)

EDIT: Geil, es geht :D

mfg, samy