eigenen Kernel kompilieren

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
mofd
Beiträge: 73
Registriert: 21.12.2005 17:25:05
Kontaktdaten:

eigenen Kernel kompilieren

Beitrag von mofd » 23.05.2006 23:01:25

Hi, ich wollt mich am Wochenedne mal dran machen meinen ersten eigenen Kernel zu kompilieren.
Dabei will ich nach dieser Anleitung vorgehen:

http://www.stud.uni-karlsruhe.de/~usge/ ... mpile.html

Allerdings habe ich davor noch ein paar Fragen.

1) Ich bin mir noch nicht so ganz im klaren darüber welchen Kernel ich berwenden muss für mein System:

Code: Alles auswählen

processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 6
model           : 8
model name      : AMD Athlon(tm) XP 2400+
stepping        : 1
cpu MHz         : 2000.103
cache size      : 256 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow
bogomips        : 3973.12
Zur Zeit läuft

Code: Alles auswählen

Linux spit 2.6.8-2-386 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux
Ist es ok wenn ich einfach die stable Version von kernel.org benutze, in diesem Fall also 2.6.16.18?

2) im letzten Schritt wird das Konfigurieren von LILO angesprochen. Da ich nur Debian auf dem PC habe, exisitiert LILO/ etc/lilo.conf nicht. Kann ich diesen Schritt einfach weglassen oder muss ich da noch irgendwas beachten.

MfG

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 » 23.05.2006 23:06:30

Sollte kein Problem geben. Ich würde ein Debianpaket bauen, Debian bringt ja alles mit. Debian benutzt Grub. Entweder mußt du dich selbst drum kümmern (update-grub) oder das passiert bei der Installation des Debianpakets.

Die ANleitung ist für einen Kernel 2.4.xx also nicht gerade brauchbar für Kernel 2.6.xx . Die Konfiguration des Kernels unterscheidet sich doch erhelblich. Auch der Kompiliervorgang. Hast du aber nichts mit tun wenn du mit make-kpkg ein DEB baust.

Howto -- Kernel für Debian kompilieren
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.

mofd
Beiträge: 73
Registriert: 21.12.2005 17:25:05
Kontaktdaten:

Beitrag von mofd » 23.05.2006 23:20:55

Oje ich sehe schon das wird nicht einfach :roll:

Wenn ich die beiden Anleitungen jetzt miteinander vergleiche dann fallen mir da eigentlich keine konkreten Unterschiede auf, in der Konfiguration will ich ja eigentlich nur die schon bestehende (/boot/config...) modifizieren.

Da ich davon sowieso noch nicht wirklich Ahnung habe, wollte ich das im "laufenden Betrieb" machen, also make menuconfig aufrufen und dann Google/Debianforum quälen um das Ding zu konfigurieren

Benutzeravatar
meandtheshell
Beiträge: 4054
Registriert: 14.01.2005 17:51:30

Beitrag von meandtheshell » 23.05.2006 23:25:44

Hier noch ein paar Links zum Thema Kernel kompilieren http://loll.sourceforge.net/linux/links/Kernel/

Irgendwo ist ein Link der es "The Debian Way like" erklärt.

markus

/edit
Den meine ich http://newbiedoc.sourceforge.net/system/kernel-pkg.html

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 » 23.05.2006 23:31:51

mofd hat geschrieben:Oje ich sehe schon das wird nicht einfach :roll:

Wenn ich die beiden Anleitungen jetzt miteinander vergleiche dann fallen mir da eigentlich keine konkreten Unterschiede auf, in der Konfiguration will ich ja eigentlich nur die schon bestehende (/boot/config...) modifizieren.

Da ich davon sowieso noch nicht wirklich Ahnung habe, wollte ich das im "laufenden Betrieb" machen, also make menuconfig aufrufen und dann Google/Debianforum quälen um das Ding zu konfigurieren
Wenn du einen Kernel 2.4.xx laufen hast kannst du die Konfig für den Kernel 2.6.xx nicht übernehmen. Weil sich die Konfigurationsoptionen in wichtigen Punkten unterscheiden.
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.

mofd
Beiträge: 73
Registriert: 21.12.2005 17:25:05
Kontaktdaten:

Beitrag von mofd » 24.05.2006 09:56:04

achso meinst du das, dann hast du mich falsch verstanden. Wie oben erwähnt läuft zur Zeit ein 2.6.8-2.

In meinem Fall muss ich in dem Tutorial aus jeden 2.4... ein 2.6... machen

mofd
Beiträge: 73
Registriert: 21.12.2005 17:25:05
Kontaktdaten:

Beitrag von mofd » 24.05.2006 22:23:49

so, und schon gehen die probleme los :roll:

hab mir jetzt einen eigenen Kernel (2.6.16.18) kompiliert. Bis auf einige Warnungen ging soweit auch alles gut. Nun kommt aber beim Neustarten mit dem neuen Kernel folgende fehlermeldung:

Code: Alles auswählen

VFS: Cannot open root device "hda1" or unknown-block(0,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
ich kann mit dieser meldung jetzt mal so gar nichts anfangen. Vielleicht könnte mir nochmal jemand helfen, der mehr Ahnung hat als ich :D

MfG

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 24.05.2006 22:54:15

Hast du den Kernel mit Initramdisk kompiliert ?

Code: Alles auswählen

make-kpkg --initrd kernel_image
Wenn nicht musst du die Treiber für die Festplatte auf der / liegt, sowie das Dateisystem von / fest in den Kernel einbinden.

mofd
Beiträge: 73
Registriert: 21.12.2005 17:25:05
Kontaktdaten:

Beitrag von mofd » 24.05.2006 22:57:00

nein, ich habe den kernel folgendermaßen kompiliert:

Code: Alles auswählen

make-kpkg kernel_image --revision-NAME
könntest du das ein wenig genauer erklären, wie gesagt, ich hab das gerade zum ersten Mal gemacht :oops:

Benutzeravatar
utkin
Beiträge: 1157
Registriert: 23.08.2005 22:42:22
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Erfurt

Beitrag von utkin » 24.05.2006 23:01:32

Benutze einfach folgenden make-Befehl

Code: Alles auswählen

make-kpkg kernel_image modules_image --initrd --revision deinkernelname.01
Debian GNU/Linux SID

mofd
Beiträge: 73
Registriert: 21.12.2005 17:25:05
Kontaktdaten:

Beitrag von mofd » 24.05.2006 23:06:48

ok, das werd ich versuchen. Muss ich dafür den alten Kernel deinstallieren?? Ein dpkg -r kernel-image-xxx funktioniert nicht.

Code: Alles auswählen

spit:/usr/src# dpkg -r kernel-image-2.6.16.18_dri.0_i386.deb
dpkg: Sie müssen Pakete mit ihrem eigenen Namen angeben, nicht durch Angabe von Dateien, in denen sie geliefert wurden

Nutzen Sie dpkg --help für Hilfe zur Inst. und Deinst. von Paketen [*];
Benutzen Sie dselect für ein benutzerfreundliches Paketmanagement;
Nutzen Sie dpkg -Dhelp für eine Liste von Debug-Optionen von dpkg;
Nutzen Sie dpkg --force-help für eine Liste von Optionen zum Erzwingen;
Nutzen Sie dpkg-deb --help für Hilfe zum Manipulieren von *.deb-Dateien;
Nutzen Sie dpkg --licence für Lizenz und Haftungsausschluss (GNU GPL) [*].

Optionen mit [*] geben viel aus - schicken Sie es durch »less« oder »more«!

Benutzeravatar
utkin
Beiträge: 1157
Registriert: 23.08.2005 22:42:22
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Erfurt

Beitrag von utkin » 24.05.2006 23:15:55

Ließ mal genau, was dpkg dir für eine Fehlerausgabe liefert. :wink:
Debian GNU/Linux SID

mofd
Beiträge: 73
Registriert: 21.12.2005 17:25:05
Kontaktdaten:

Beitrag von mofd » 24.05.2006 23:20:35

ups, das .deb muss natürlich weggelassen werden, aber deinstallieren kann ich es trotzdem nicht:

Code: Alles auswählen

spit:/usr/src# dpkg -r kernel-image-2.6.16.18_dri.0_i386
dpkg - Warnung: Ignoriere den Wunsch, kernel-image-2.6.16.18_dri.0_i386 zu entfernen; es ist nicht installiert.
Ich habe diese .deb Datei doch vor ca. 30 min installiert.

Code: Alles auswählen

spit:/usr/src# ls
kernel-image-2.6.16.18_dri.0_i386.deb  linux  linux-2.6.16.18

Antworten