Ich habe keineinitrd.img nach dem kompilieren des Kernel

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
HennR
Beiträge: 72
Registriert: 13.08.2003 09:36:27
Lizenz eigener Beiträge: MIT Lizenz

Ich habe keineinitrd.img nach dem kompilieren des Kernel

Beitrag von HennR » 28.01.2005 20:35:25

Hi Leute,
ich habe gerade(nach stunden!) einen Kernel 2.6.10 kompiliert.

Danach habe ich in /boot/grub/menu.lst den Kernel etc eingetragen.
Leider konnte ich die initrd.img.2.6.10 nicht eintragen da ich keine habe.


Wo bekomm ich die denn jetzt her?
Muß ich die irgendie per make oder sowas bauen?

thx
HennR
Zuletzt geändert von HennR am 27.06.2005 00:00:27, insgesamt 1-mal geändert.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 28.01.2005 20:42:49

Code: Alles auswählen

mkinitrd -o /boot/initrd.img-<kernelversion> <kernelversion>

Benutzeravatar
HennR
Beiträge: 72
Registriert: 13.08.2003 09:36:27
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von HennR » 29.01.2005 12:12:20

Hi, das habe ich mal gemacht.
Danach bootet die Kiste zwar, hört damit aber auch ziemlich schnell wieder auf, und zeigt einen schwarzen Bildschirm mit einem blinkendem "_" unten links ;)

Hat jmd ne Idee?

init 0
Beiträge: 673
Registriert: 21.10.2003 19:40:28

Beitrag von init 0 » 29.01.2005 12:38:03

Hi,

warum benötigst du eine initrd wenn du deinen Kernel selbst compilierst? Lass die initrd gleich weg und konfigurier deinen Kernel so dass er alleine läuft.

Benutzeravatar
HennR
Beiträge: 72
Registriert: 13.08.2003 09:36:27
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von HennR » 29.01.2005 13:29:03

Aber wie?

Das ist mein erster selbst kompilierter Kernel.
Ich habe doch keine Ahnung von sowas ;)

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 29.01.2005 13:42:36

Versuchs mal erst mal ohne initrd. Wenn der Rechner nicht allzusehr vom Stanrd abweicht sollte das hier funktionieren.

make defconfig

make-kpkg kernel-image.

Dieses kannst du dann mit dpkg -i paketname installieren.

Und wenn das funktioniert kannst du auf dieser Konfig aufbauen.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

readymaker
Beiträge: 4
Registriert: 10.05.2004 12:55:13
Kontaktdaten:

Beitrag von readymaker » 29.01.2005 18:14:58

wann braucht mann denn eigentlich eine initrd?
wenn man das fs als modul kompiliert hat?

hab da noch keine wirklich gute erklärung gefunden.

//edit: in einem howto stehts mal mit make-dpkg --initrd und mal ohne --initrd
lesen gefährdet die dummheit

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 29.01.2005 19:15:11

make-kpkg meinste wohl.

Ne Initrd macht eigentlich nur Sinn bei einem Kernel der auf möglichst vielen Computer out-of-the-box funktionieren soll. Als Installationskernel
oder ein ein Kernel-image vom Debian Server . Man stelle sich mal vor es müte für jeden SCSI Hostadapter ein eigener Kernel gebaut. werden. Da bräuchte man alleine für die Kernel-images eine eigene DVD.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
HennR
Beiträge: 72
Registriert: 13.08.2003 09:36:27
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von HennR » 30.01.2005 00:39:14

Also ich habe den kernel so gebaut:
make menuconfig
make install

Doch alles was passiert ist der blinkende "_" auf dem Bildschirm.

Ich habe die initrd.img erstellt, und in die Grub menu.lst eingetragen, doch das bringt genauso wenig wie sie einfach weg zu lassen.

Wahrscheinlich hab ich den Kernel versaut, oder?

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 30.01.2005 12:27:23

Wieso soll man da was versauen können?

Wenn du aber Kernelsourcen im Ausliefrungszustand haben willst. Dann mach mal

Code: Alles auswählen

make distclean 
Dann wird alles wegräumt was so von der Kompilierung übrig geblieben ist, inklusive der .config.

Wie gesagt

Dann würde ich mit

Code: Alles auswählen

_________________________________________________________________________________________________________________________________________________
make  allmodconfig
Wenn das passiert ist dann müssen wir noch die Konfig nachbearbeiten.

make menuconfig

Bei den Device_Drivern Block_Devices
muß die initrd mit einkompiliert werden.

Code: Alles auswählen

  │ │          <*> RAM disk support                                                          │ │
  │ │          (16)  Default number of RAM disks                                             │ │
  │ │          (8192) Default RAM disk size (kbytes)                                         │ │
  │ │          [*]   Initial RAM disk (initrd) support                                       │ │
Filessytems Miscellaneous filesystems

muß cramsfs lmit einkompiliert werden

Code: Alles auswählen

│ │            <*> Compressed ROM file system support (cramfs)                             │ │
Jetzt müssen wir den Debugkrempel rausschmeißen

unter "Kernel hacking" alles abwählen.

Und bei Processor type and features können wir noch den Prozessortyp einstellen.

jetzt kann der Kernel kompiliert werden. Beispielsweise

Code: Alles auswählen

make-kpkg --initrd --append-to-version=-1-k7 --revision 2.6.10-5 kernel-image
Wenn man mit make-kpkg kompiliert sollt man make-kpkg clean nicht vergessen.

Und das Debianpaket mit dpkg -i installieren.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
HennR
Beiträge: 72
Registriert: 13.08.2003 09:36:27
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von HennR » 30.01.2005 16:54:57

Naja, muß ich wirklich alles neu machen?

Ich hab doch schon
make menuconfig
make install

ausgeführt.
Das einizige was nervt ist, dass er nicht bootet...

Ich werd wohl erstmal zur LUG gehen, und da nochmal diskutieren ;)

Vielen Dank soweit für deine Mühe.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 30.01.2005 17:22:52

make modules
make modules_install

oder gleich make all

Wenn unbedingt nach der tradionellen Methode

Die Debian Methode hat den Vorteil man braucht sich um nichts mehr kümmern. Außer die richtige Konfiguration.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Antworten