Neuer Kernel

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Dragon2000
Beiträge: 62
Registriert: 06.09.2004 17:20:16
Wohnort: Darmstadt
Kontaktdaten:

Neuer Kernel

Beitrag von Dragon2000 » 28.11.2004 21:53:53

Hallo Forum,

ich habe mir heute meinen ersten Kernel kompiliert. Und dabei wohl einiges falsch gemacht:

Ich hab mir den Kernel 2.6.8 herunter geladen, und ihn zum laufen gebracht.
Soweit so gut...

1) Der Kernel bootet bis zu einem bestimmten Punkt. Danach erscheinen auf dem Bildschirm vertikale weiße Striche, mit einem Abstand von ca. 1cm. Dazwischen rote Punkte.
Drückt man die Tastenkombination STRG-ALT-ENTF bootet er weiter.

2.a) Mit dem Kernel 2.6.8-1-686 (dem vorkompiliertem) ist kein Netzwerkzugriff möglich, mit meinem eigenem öeider auch nicht.

2.b) Ich hatte gehofft mit dem neuen Kernel direkt ALSA einbinden zu können. Aber es erscheint trotzdem die Meldung: "Can't open /dev/dsp0". Mit dem Vorkompiliertem gibt es die Meldung nicht, naja, Sound funktioniert dort auch nicht.

Könnt Ihr mir helfen, was ich da falsch gemacht habe?
Bzw. was ich zu Punkt 2 vergessen habe?
(Sorry, ich habe vergessen, wie man die einkompilierten Module auflistet, sonst würde ich sie mitposten)

Gruß
Dragon

Dragon2000
Beiträge: 62
Registriert: 06.09.2004 17:20:16
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von Dragon2000 » 28.11.2004 23:39:09

Nanü? Weg ist die vorige Antwort?
Ich wollte gerade drauf antworten.


Die Antwort war u.a. Was habe ich da Falsch gemacht? -> Alles...
Das grenzt den Fehler zumindest ein... :wink:
Aber trotzdem danke.

Gibt es ein Tool, mit dem man die eingebetteten Module auflisten kann?
Das würde mir ja schon weiterhelfen, in dem ich die einzelnen Kernel vergleichen kann.

Gruß
Dragon

Capsad
Beiträge: 280
Registriert: 27.09.2004 16:19:54

Beitrag von Capsad » 29.11.2004 01:18:08

Hi,
also du kannst dir die aktuell geladenen Module mit lsmod ansehen. Mein Kernel legt auch die aktuelle Config unter /proc/config.gz ab, du könntest die dann vom Kernel übernehmen, der geht und in deinem, den du kompilieren willst laden. Glaub aber, es hängt von ner Einstellung im Kernel ab, ob er die Datei /proc... anlegt, weiß aber nicht mehr welche ;-)
Ah, seh grade, dass bei den *.deb Paleten die .config Datei unter /usr/src/kernel-headers-2.6.X/ liegt, dann lad doch einfach mal die .config z.B. unter make xconfig und lass pass die Eisntellungen ggf.an,
Gruß
Capsad

PS.: Kann dir nur make-kpkg empfehlen, hab das letzte Woche auch zum ersten mal gemacht, ist wesentlich einfacher als alles per Hand machen zu müssen, hab mir selbst ein kleines Howto geschrieben, dass ich bis zu meinem nöchsten Kernel-Update nicht alles vergesse ;-( Vielleicht kannst du ja damit was anfangen:
Mit make-kpkg
Date /etc/kernel-pkg.conf so anpassen:
# This file is used by kernel-package (>2.0) to provide a means of the site
# admin to over-ride settings in the distributed debian/rules. Typically
# thus is used to set maintainer information, as well as the priority
# field. However, one may hack a full makefile in here (you should
# really know what you are doing here if you do that, though)

# Please change the maintainer information, as well as the Debian version
# below, (and maybe the priority as well, especially if you are uploading
# an official package)

# The maintainer information.
maintainer := Capsad
email := Capsad@gmx.net

# Priority of this version (or urgency, as dchanges would call it)
priority := Low

# This is the Debian revision number (defaulted to 1.0 in debian/rules)
# You may leave it commented out if you use the wrapper script, or
# if you create just one kernel-image package per Linux kernel revision
# debian := 1.0

image_in_boot := TRUE
config_target := xconfig
do_clean := NO

kernel sourcen entpacken nach /usr/src/ --> ins Verzeichnis wechseln
make-kpkg --revision=X buildpackage
(revision bei jedem neuen Build erhöhen).
Warten ;-) dann in /usr/src/ mit dpkg -i alle *.deb Pakete mit dem neuen Kernel installieren, /boot/grub/menu.lst anpassen, reboot

Dragon2000
Beiträge: 62
Registriert: 06.09.2004 17:20:16
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von Dragon2000 » 03.12.2004 15:33:30

Jo, danke für den Tipp,


es hat etwas länger gedauert, bis ich wieder geantwortet habe,
denn ich hab das Netz nach weiteren Infos durchsucht.
Aber leider habe ich Nichts dazu gefunden.

Den make-kpkg Befehl hatte ich schon benutzt, nachdem ich den ersten Versuch von Hand ausprobiert habe, und dann über diesen Befehl gestolpert bin, war ich sehr zufrieden mit dieser Abkürzung. Diesen Befehl kann ich nur empfehlen. (natürlich nur an Debianbenutzern, die anderen haben das ja nicht...)

Zweit Tipps aus dem Netz bin ich mal nachgegangen:

Ich habe die dmesg-Meldungen miteinander verglichen, um zu sehen, welche Module die Kernel laden, un bin dann an Hand der Liste der Module , die mein Kernel 2.6.8 nicht läd, das Konfigurationsprogramm durchgegangen. Ich habe also von Hand versucht, den alten Kernel 2.2.20 in den neuen 2.6.8 zu spiegeln.

Das Ergebnis war interessant: Sehr viele Optionen, die man anwählen "könnte" waren in 'xconfig' oder 'menuconfig' grau dargestellt, also nicht anwählbar.

Ein ähnliches Problem ergab sich, als ich die .config-Datei des alten Kernles als Basiskonfiguration des neuen Kernels eingeladen hatte. Es kam zwar raus, das die Notwendigen Einträge jetzt nicht mehr grau waren, aber der neue Kernel nun keine initrd - Datei mehr erzeugt, die er aber leider unbedingt zum booten braucht. Es kommt also zum unvermeidlichen Fehler: Kernel-Panic unable to mount...

Da ich so langsam mit meinem Latein am Ende bin, hab ich vielleicht mal ne ungewöhnliche Bitte:

Beützt einer den Kernel 2.6.8 in einem LAN und mit der Verwendung von ALSA?
Wenn ja, mag er mir seine .config -Datei schicken? Damit kann ich vergleichen, welche Pakete ich falsch/garnicht angewählt habe


Gruß
Dragon

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

Beitrag von gms » 03.12.2004 17:57:00

Hi

du kannst auch die config von deinem debian standard kernel verwenden, die auf /boot herumkugelt

[edit]

wenn du die in dein /usr/src/linux directory reinkopierst, solltest du nachher zuerst den befehl

Code: Alles auswählen

make oldconfig
aufrufen

[edit]

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 » 03.12.2004 18:24:11

Kernel 2.6.xx kann per make auch mittlerweiler RPMs und ach DEBs basteln..
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