• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst]Wie kriege ich einen Kernel auf einen "jungfräu

Hallo Leute,

ich habe nun Linux from Scratch gelesen, größere Mengen Google - Links (auch englischsprachige) gewälzt und kann mir nun bildlich vorstellen, wie man wo welche Module zu einem Kernel zusammenbasteln kann.

Ich bin aber noch um Längen zu blöd, das auf einem Rechner zu schaffen, den ich hier zusammengesteckt habe, um dann mal einen selbstgebastelten Kernel laufen zu lassen.

Konkret scheitert das daran, das ich ja immer so etwas wie eine Linux-Distribution (Aktuell verwende ich für das Vorbereiten eine Knoppix-CD und für das Kernel-Kompilieren ein SuSE Linux 9.3) brauche, um die Festplatten zu formatieren und die Partitionen einzurichten.

Wie macht man das denn, wenn man kein Knoppix, oder ein anderes OS zur Verfügung hat, das diese Aufgaben erfüllt?

Linus Torvalds hat ja auch mit Minix angefangen und da seinen Kernel drauf geschrieben. Nur musste davor ja Andrew Tannenbaum sein Minix schreiben, usw.

Wie kriegt man denn dann überhaupt ein Filesystem auf die Festplatten, das den Kernel bootet ?

Versteht mich nicht falsch, ich will das Rad nicht neu erfinden, aber wenn das so klappt, wie ich mir das vorstelle, dann habe ich es geschafft, einen 2.2.x Kernel (monolitisch(?), weil keine Module mehr dazugeladen werden können und alle schon drin sind.) zu kompilieren, der auf meinem 486er PC rund läuft.

Ausserdem will ich dieses Experiment dazu verwenden, besser zu verstehen, wie man z.B. für embedded Hardware Kernel und Linux-Distributionen erstellt und diese dann von der Pike auf aufbaut.

Ich hoffe, mir kann da mal einer einen Hinweis geben, wo ich da weiter suchen sollte.

Danke schon mal.

Gruß

Michael
 

Tuxer@23

Member
Probiers mal mit einem Boot fähigen Partition-Magic. Danach installierst du Grub oder nen anderen Bootloader und lässt ihn direkt auf deinen Kernel verweisen. Wenn du dann den Kernel richtig eingerichtet hast und auch sonst alles stimmt solltest du dann mit dem Verweis im Bootloader auf deinen Kernel starten können
 
Die ersten Versionen wurden von Diskette geladen. Es war alles noch
so schön klein das erst ein Kernel und dann das Rootfilesystem von
Diskette genutzt wurde.
Minix Disketten für 68000 könnte ich noch irgendwo finden ...

Haveaniceday

Edit: Bei den Linux Sourcen gibt es immer ein "make zdisk" mit dem
man Bootdisketten erzeugen kann.
Der Kernel muss nur klein genug für die Diskette sein.
In der Regel sollte immer ein Bootloader vorhanden sein oder
ein entsprechendes Interface ( z.B. JTAG bei manchen embedded Devices..)
zum Laden eine Bootloaders vorhanden sein.
 
Hallo,

nun bin ich aus dem Urlaub zurück (14 Tage USA) und kann mein Projekt langsam wieder angehen.

Das mit dem make zdisk war die Lösung...!

Nun habe ich den Rechner von der Diskette gebootet und die der Kernel läuft. (zumindest habe ich ein Prompt, an dem ich etwas eingeben kann.)

Ich werde mal weiter basteln und schauen, wie weit ich noch komme.

Muss aber auch noch ein wenig für die Schule arbeiten, kann also etwas dauern.

Gruß

Michael
 
Linux_Beginner schrieb:
Wie macht man das denn, wenn man kein Knoppix, oder ein anderes OS zur Verfügung hat, das diese Aufgaben erfüllt?
Das erste was passiert, wenn man heutzutage einen neuen Prozessor entwickelt (wo zu es noch keine Tools gibt), ist mithilfe eines bereits bestehenden Systems den Kernel, etc. zu cross-compilen und alles vorzubereiten. Früher hat man halt nicht C code kompiliert, sondern das Programm direkt als Maschineninstruktionen verdrahtet. Damit konnte man dann von mir aus einen Compiler schreiben, mit dem man sich vorwärts entwickeln kann.
Wie kriegt man denn dann überhaupt ein Filesystem auf die Festplatten, das den Kernel bootet ?
Man bootet halt nicht per Festplatte :)
Versteht mich nicht falsch, ich will das Rad nicht neu erfinden, aber wenn das so klappt, wie ich mir das vorstelle, dann habe ich es geschafft, einen 2.2.x Kernel (monolitisch(?), weil keine Module mehr dazugeladen werden können und alle schon drin sind.) zu kompilieren, der auf meinem 486er PC rund läuft.
"Lass gut sein Großer Bruder, dass mach ich schon lange."
 
@jengelh

Das jeder hier im Forum das mit dem 2.2er Kernel schon lange macht, glaube ich Dir gerne. Ich wollte ja nicht angeben damit.

Mein Problem war eben nur, das dieser 486er so groß ist wie eine Europa-Karte (100x160 mm), eine Netzwerkkarte mit RT8019 Chip on Board hat, 64 MB RAM, einen IDE-Controller, der nur 545 MB große Festplatten akzeptiert und einen Floppy-Controller, an den ich nur eine(!) 1,44 MB Floppy drankriege. Ausserdem noch Anschlüsse für Tastatur und eine VGA Schnittstelle mit ET4000 Chip.

Deshalb war ich "stolz" das diese "Platine" nun in einem 19 Zoll Rack mit Linux läuft.

Danke an dieser Stelle an alle für die Tipps.

Michael
 
@Linux_Beginner,

ich finde du kannst wirklich stolz auf deinen Erfolg sein !
Gerade bei den kleinen oder zickigen Rechnern lernt
man am meisten.

Schau dir auch mal "man rdev" für deine Bootdisk an.

Haveaniceday
 
Oben