Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

18.11.2008, 09:32

Kernel backen bzw "überbacken"

Tja nachdem das Gentoowiki down ist und ich vergeblich versucht habe einen vernünftigen Kernel zu bauen, wende ich mich mal mit meinen Fragen an euch:

1) Wenn ich einen Kernel kompiliere, der das eine oder andere noch nicht kann, wie kompiliere ich den Kernel erneut mit möglichst wenig Arbeitsaufwand. Ich habs bisher immer so gemacht

Quellcode

1
2
3
4
5
cd usr/src/linux-2.6.25-gentoo-r9/
cp .config /home/********/kernellala/
make distclean
cp /home/********/kernellala/.config .
make menuconfig && make && make modules_install && cp -f arch/boot/bzImage /boot/kernel-2.6.25-gentoo-r9


es existiert dabei /boot/kernel-2.6.25-gentoo-r9 schon vorher. Welche Schritte davon kann ich weglassen? reicht ein make clean (bei dem die .config ja erhalten bleibt) vorher auch? Muß ich überhaupt cleanen?????

2) Wenn ich im geänderten .config nur ein paar neue Module zuschalte, reicht es dann wenn ich nur make modules_install mache?

3) wieso entstehen eigentlich immer arch/i386 und arch/x86 bzImages? hab ich da was schlampig gemacht oder ist das einfach so?

2

18.11.2008, 09:45

1: Eigentlich reicht nur die Zeile 5.

2: Ja. + "depmod -a"

3: Die Datei unter i386 ist ein Symlink auf die Datei unter x86. Muss wohl so sein.
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

3

18.11.2008, 10:49

Tja nachdem das Gentoowiki down ist

Die Jungs sind wohl aber fleißig beim Wiederaufbau
http://de.gentoo-wiki.com/wiki/Kernel/Manuell_kompilieren

Zitat

Dieser Artikel ist in Bearbeitung
Dieser Artikel wird zur Zeit von Misterjack bearbeitet.
Ziel der Bearbeitung: Gerade am Wikifizieren etc


MfG

4

18.11.2008, 11:07

Wow, das is aber auch erst seit kurzem wieder da...

zu 3) hätt ich da noch eine Ergänzungsfrage: wenns ein symlink is, dann ist es eigentlich auch egal ob ich jetzt von i386 oder x86 das bzImage kopiere, oder gibts da noch irgendeinen Unterschied?

edit: ahja und wenn ich eine Option als Modul verwirkliche, wie bekomme ich eigentlich den Namen des Moduls raus. Wenn man sich mit "?" die help ansieht, steht da nämlich oft nichts dabei....

5

18.11.2008, 13:17

das konnte mir auch nie jemand sagen *G*
Ich bin dann in die Kernel menuconfig zu dem jeweiligen Punkt gegangen. In der zugehörigen Helpabteilung steht meist der der Modulname ;)
System:
i7 P2600 @ 3,4GHz
jabber: poedel@jabber.ccc.de

6

18.11.2008, 13:54

Zu 3: Wenn ich nachträglich ein Modul auswähle, sehe ich ja beim Kompilieren, welche .ko Dateien er erstellt. ;)
An sonsten gibt es ja noch /usr/src/linux/Documentation
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

7

18.11.2008, 14:48

reicht ein make clean (bei dem die .config ja erhalten bleibt) vorher auch? Muß ich überhaupt cleanen?????

Grundsätzlich ist ein "make mrproper" oder "make distclean" vor dem Kernel Konfigurieren/Kompilieren zu empfehlen, besonders wenn Treiber/Module entfernt werden. Zusätzlich lösche/Verschiebe ich vorher noch das Module Verzeichnis "/lib/modules/kernel-Version" da das Modul sonst weiterhin im Verzeichnis bleibt, aber eben nicht mehr in der Module-Datenbank vorhanden ist.
Wenn aber "nur" ein Treiber-Modul hinzugefügt werden soll ist das Cleanen vorher wohl nicht zwingend notwendig.

Zitat

cp .config /home/********/kernellala/
Ich kopiere mir die .config meist mit nach /boot ,

Quellcode

1
cp .config /boot/config-2.6.25-gentoo-r9
dort liegt sie gut und sicher ;)

MfG

8

18.11.2008, 15:33

Ein Cleanup (mrproper etc.) schadet eigentlich nie. Bei Kernel Sources jedoch habe ich bisher die Erfahrung gemacht, dass das Make sehr gut ermitteln kann, was rekompiliert werden muss und was nicht. Selbst wenn man vorher irgendwelche Patches in den Quellcode einspielt, funktioniert es meistens ohne ein cleanup. Daher mache ich erst dann ein "make clean", wenn ich auf Probleme beim kompilieren stoße.

Zitat

...da das Modul sonst weiterhin im Verzeichnis bleibt, aber eben nicht mehr in der Module-Datenbank vorhanden ist.

Diese Vermutung hatte ich auch, daher schon mehrmals überprüft. "make modules_install" löscht die abgewählten Module aus /lib/modules.

PS: Warum wird immer von "cp bzImage /boot" gesprochen, aber nie von "make install"? Was ist verkehrt an "make install"?
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

9

19.11.2008, 01:33

"make modules_install" löscht die abgewählten Module aus /lib/modules.
Hehe, danke für die Info :thumbup:

Warum wird immer von "cp bzImage /boot" gesprochen, aber nie von "make install"? Was ist verkehrt an "make install"?
Ich bin es einfach so gewohnt, ich bin mir auch nicht ganz sicher was ein "make install" genau alles macht, wird da nicht auch versucht im /boot ein symlink von vmlinus auf das neue bzImage zu legen? Ich nutze kein vmlinus unter /boot

Ah, habe greade hierzu etwas im Wiki gefunden

Zitat

Alternativ kann man auch mit

make install

den neu erstellten Kernel in das gemountete /boot installieren. Dabei werden der Kernel und die zugehörigen Dateien (System.map und Konfiguration) unter einem sinnvollen Namen dorthin kopiert und die Symlinks (System.map, vmlinuz, config, sowie alle mit .old) auf die neue bzw. letzte Version gelegt. Dem Bootloader kann man den Symlink dann entsprechend angeben.
Ich persönlich bleibe lieber bei cp bzImage ... ;)

@cuculcan
Hier ist noch ein Link vom Wiki Backup
http://root.stefreak.de/gentoo-wiki/de.g…ompilieren.html

MfG