Welcome, Guest. Please login or register.
Did you miss your activation email?

Author Topic: [DE] Kernel bauen Script - kernelmake  (Read 12318 times)

Offline ralul

  • User
  • Posts: 1.814
[DE] Kernel bauen Script - kernelmake
« on: 2011/01/07, 18:01:13 »
@agaida, das Script, was Du suchst zum Selberbauen des Kernels:
Code: [Select]
#!/bin/bash

E=mcedit
V="2.6.37"
L="linux-$V"
U="http://www.kernel.org/pub/linux/kernel/v2.6/$L.tar.bz2"
H=~/mysrc
S=~/mysrc/slh-patches

set -x
[ -d "$S" ] || mkdir -p "$S"
cd $H || exit
[ -f "$L.tar.bz2" ] || wget "$U"
[ -f "$L.tar.bz2" ] || exit
[ -d "$L" ]         || tar xjf "$L.tar.bz2"
ln -sTf "$H/$L" "$H/linux"
cd $S || exit
if [ -d debian/.svn ] ; then
  cd debian || exit
  svn update
else
  svn co svn://svn.berlios.de/fullstory/linux-aptosid-2.6/trunk/debian/
fi
ln -sTf "$S/debian/patches" "$H/linux/patches"
# [edit]
# @E "$H/linux/patches/series" || exit
$E "$H/linux/patches/series" || exit
cd "$H/linux" || exit
make mrproper
zcat /proc/config.gz >.config
quilt push -a
make oldconfig
make menuconfig
echo " "
echo "now :  "
echo "make deb-pkg"
echo "after this as root:"
echo "cd .. && dpkg -i linux-image*"

Ich habs eben so aus der Hand geschüttelt und noch nicht getestet, weil ich gerade unter Gentoo bin. Deswegen "set -x" eingeschaltet lassen und schauen wie weit es läuft!

[edit]Towos Hinweis $E statt @E - Script noch ungetestet!
experiencing siduction runs better than my gentoo makes me know I know nothing

Offline agaida

  • User
  • Posts: 1.760
    • http://g-com.eu
Kernel bauen Script - kernelmake
« Reply #1 on: 2011/01/09, 16:22:23 »
Danke für die Scripte, ich hab sie noch nicht probieren können, ich hab noch ein paar kleine andere Großbaustellen.
There's this special biologist word we use for "stable". It's "dead". ~ Jack Cohen

Offline ralul

  • User
  • Posts: 1.814
Kernel bauen Script - kernelmake
« Reply #2 on: 2011/01/09, 22:45:40 »
Towo schrieb gerade
"Kernelbau braucht solch ein Script nicht und ist im Netz zu Hauf dokumentiert"

Ich habe solch eine Doku im ansonsten hervorragenden aptosid Handbuch immer vermisst:
Wie kann ich den 2.6.36 slh Kernel nachbauen, wenn er nicht mehr im Repo vorhanden ist?
« Last Edit: 2013/11/10, 02:40:41 by melmarker »
experiencing siduction runs better than my gentoo makes me know I know nothing

Offline towo

  • Administrator
  • User
  • *****
  • Posts: 2.938
Kernel bauen Script - kernelmake
« Reply #3 on: 2011/01/09, 22:57:06 »
Code: [Select]
@E "$H/linux/patches/series" || exit
Wird nicht funktionieren, muß $E heissen.

Die patches lassen sich nicht ohne Weiteres auf eine vanilla Source anwenden, weil beim aptosid-kernel die .orig-source schon von unfreiem blob befreit ist.

Ein unbedarfter User wird am Editiren der series und der Kernel-Konfig scheitern, weil er nicht weiss, was er tut.

Code: [Select]
make deb-pkg  was soll das werden?
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

Offline agaida

  • User
  • Posts: 1.760
    • http://g-com.eu
Kernel bauen Script - kernelmake
« Reply #4 on: 2011/01/09, 22:57:42 »
Im Endeffekt hat Towo nicht ganz unrecht, es wurde in den letzten Jahren viel darüber geschrieben. Da ich mir die Konfiguration vom slh-Kernel ja notgedrungen angeschaut habe, muss ich aber gestehen, dass so was dann aber auch nicht unbedingt meinen Vorstellungen eines idealen Scriptings entspricht.

Einen towo-Kernel kann man sich ja schon längere Zeit nicht mehr laden, also fehlt mir da der Vergleich.

@towo: Wenn ein unbedarfter User anfängt, Kernel zu bauen, ist er im Erfolgsfall kein ganz so unbedarfter User mehr. Im Falle des sehr wahrscheinlichen Misserfolgs trennt sich dann die Spreu vom Weizen. Die drei Möglichkeiten sind dann Lernen, fertiges Zeug nehmen oder zurück zu Windows.

Ich würde sogar so weit gehen, dass jemand, der ohne Probleme und ohne Buchstabe für Buchstabe eine Buidumgebung aufsetzen kann, nicht mehr ganz unbedarft ist. Bevor man das richtig kann, vergeht aber einiges an Zeit. Das Wissen über Linux und Werkzeuge wird in dieser Zeit aber nicht geringer. Gimp, Scribus oder gar OO zu bauen, ist schwieriger.
There's this special biologist word we use for "stable". It's "dead". ~ Jack Cohen

Offline towo

  • Administrator
  • User
  • *****
  • Posts: 2.938
Kernel bauen Script - kernelmake
« Reply #5 on: 2011/01/09, 22:58:24 »
Quote
Wie kann ich den 2.6.36 slh Kernel nachbauen, wenn er nicht mehr im Repo vorhanden ist?

Den entspr. Branch aus dem SVN auschecken, und rules lesen und verstehen.
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

Offline ralul

  • User
  • Posts: 1.814
Kernel bauen Script - kernelmake
« Reply #6 on: 2011/01/10, 00:13:21 »
Quote from: "towo"
Die patches lassen sich nicht ohne Weiteres auf eine vanilla Source anwenden, weil beim aptosid-kernel die .orig-source schon von unfreiem blob befreit ist.
Dafür ist im svn das Script debian/scripts/dfsg-prune. Aber ich meine, es reicht die linux/.config Option "Do not build binary blobs". Und im Grunde reichen die vanilla .3 patches, weil die meisten patches/upstream das Point-Release nur vorwegnehmen.

Quote
Code: [Select]
make deb-pkgwas soll das werden?
Wie man auch am Changelog von slh sehen kann
Quote
linux-aptosid-2.6 (2.6.36-19) unstable; urgency=low
...
    - recommend use of 'make deb-pkg' to build custom kernel packages
Die Debian Entwickler haben ganze Arbeit gemacht und schon länger ein Debian spezifisches Target im linux/Makefile durchgesetzt - upstream !

Insofern kann man sich den debian/rules Teil sparen mit einem einfachen make deb-pkg - das habe ich auch schon erfolgreich ausprobiert - sagte ich nicht irgendwo, es ist einfacher als man denkt!

Am obigen kernelmake Script fehlt nur noch ein allgemeinerer Teil, mit dem man einen Patchbaum des ausgesuchten Backports auschecken kann, zb
Code: [Select]
svn co svn://svn.berlios.de/fullstory/linux-aptosid-2.6/tags/2.6.36-19/debian/
experiencing siduction runs better than my gentoo makes me know I know nothing

Offline towo

  • Administrator
  • User
  • *****
  • Posts: 2.938
Kernel bauen Script - kernelmake
« Reply #7 on: 2011/01/10, 07:59:40 »
Quote
Dafür ist im svn das Script debian/scripts/dfsg-prune. Aber ich meine, es reicht die linux/.config Option "Do not build binary blobs.

Nicht ganz! Dieses Script wird beim Erzeugen der orig-Source angewendet.

Es mag ja für Dich einfach klingen, aber trotzdem kann der User mit deinem Script nicht viel anfangen!

1. Aufruf von debian/patches/series im Editor ==> der User weiss nicht, was er damit machen soll.
2. make oldconfig / make menuconfig ==> wer noch nie einen Kernel gebaut hat, kann damit absolut Nix anfangen.

Meiner Meinung nach ist dieses Script ungeignet, einen aptosid-nahen, Costum-Kernel zu bauen. Sicherlich benötigen die Wenigsten User die spezifischen Patches, welche slh benutzt, auch bei mir würde ein Stock-Vanilla-Kernel problemlos laufen.
aptosid hatte schon immer das Bestreben, neueste Entwicklungen zu berücksichtigen, BKL zu deaktivieren ist hier deshalb auch nur konsequent, zumal es, wieder einmal, nur propritären Kram betrifft, welcher damit nicht funktioniert.

Wer Kernel selber bauen will, soll das ruhig tun aber etwas verstehen, was er da macht, sollte $User schon. Wenn der Kernel durch falsche Konfiguration nicht funktioniert, ist das Geschrei dann nämlich groß und Support fast nicht möglich.
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

Offline agaida

  • User
  • Posts: 1.760
    • http://g-com.eu
Kernel bauen Script - kernelmake
« Reply #8 on: 2011/01/10, 08:35:19 »
Das ist doch mal eine Aussage. Aptosid ist der Kernelentwicklung weit und konsequent voraus und der blöde User muss sehen, wo er bleibt.  :lol: Find ich irgendwie ein wenig elitär, aber man muss auch Opfer bringen. Damit Dürfte Aptosid die einzige Distro sein, die auf den BKL teilweise verzichtet.

Macht aber nichts, da BKL an den entscheidenden Stellen per Script eingeschaltet wird. Oder hab ich in den vergangenen Tagen was verpasst?  Nicht übelnehmen, aber auf Wunsch such ich die Stellen, die nicht proprietär sind, raus. (Duck und weg!)
There's this special biologist word we use for "stable". It's "dead". ~ Jack Cohen

Offline towo

  • Administrator
  • User
  • *****
  • Posts: 2.938
Kernel bauen Script - kernelmake
« Reply #9 on: 2011/01/10, 09:44:56 »
Man kann BKL nicht teilweise deaktivieren.
Entweder der Kernel hat BKL oder eben nicht und im aptosid Kernel ist :
Code: [Select]

towo:Defiant> grep -i bkl config
# CONFIG_BKL is not set

Und ja, auch nicht propritäre Treiber benötig(t)en BKL, als da zum Beispiel wären, cifs, nfs und udf.
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

Offline dieres

  • User
  • Posts: 786
Kernel bauen Script - kernelmake
« Reply #10 on: 2011/01/10, 19:17:51 »
heißt das, das cifs, nfs und udf derzeit nicht mit 2.6.37 in aptosid funktionieren ? Oder war das "benötig(t)en" so zu verstehen das diese 3 bkl jetzt nicht mehr brauchen?

Offline agaida

  • User
  • Posts: 1.760
    • http://g-com.eu
Kernel bauen Script - kernelmake
« Reply #11 on: 2011/01/10, 19:30:05 »
Quote from: "towo"
Man kann BKL nicht teilweise deaktivieren.
Entweder der Kernel hat BKL oder eben nicht und im aptosid Kernel ist :
Code: [Select]

towo:Defiant> grep -i bkl config
# CONFIG_BKL is not set

Und ja, auch nicht propritäre Treiber benötig(t)en BKL, als da zum Beispiel wären, cifs, nfs und udf.

Jau, Du hast recht, hab das noch mal nachgelesen. In beidem. Aber wer benutzt schon cifs, nfs und udf (Ich geb zu udf benutze ich wirklich kaum)
There's this special biologist word we use for "stable". It's "dead". ~ Jack Cohen

Offline towo

  • Administrator
  • User
  • *****
  • Posts: 2.938
Kernel bauen Script - kernelmake
« Reply #12 on: 2011/01/10, 20:57:58 »
Quote from: "dieres"
heißt das, das cifs, nfs und udf derzeit nicht mit 2.6.37 in aptosid funktionieren ? Oder war das "benötig(t)en" so zu verstehen das diese 3 bkl jetzt nicht mehr brauchen?

cifs und udf funktioniert sicher, da ich nfs nicht einsetze, kann ich dazu nix sagen. Es gäbe aber mit Sicherheit schon Beschwerden, wenn  nfs nicht funktionieren sollte.
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

Offline agaida

  • User
  • Posts: 1.760
    • http://g-com.eu
Kernel bauen Script - kernelmake
« Reply #13 on: 2011/01/10, 21:04:32 »
Ich hab mir das jetzt noch nicht angeschaut, aber eine Sache, die ich nachher mal testen werde: Das Bereitstellen der nfs-Dienste. Obwohl das im Desktop-Bereich ja eher selten ist.
There's this special biologist word we use for "stable". It's "dead". ~ Jack Cohen

Offline agaida

  • User
  • Posts: 1.760
    • http://g-com.eu
Kernel bauen Script - kernelmake
« Reply #14 on: 2011/01/11, 15:36:15 »
Nachdem ich jetzt durch das meiste von dem begriffen habe, was ich grad tue, hab ich nur noch eine entscheidende Frage: Das Paket von SLH bau vom Feinsten, Konfiguration etc ist kein Problem. das Kompilat funktioniert wie gewünscht. Nur so Kleinigkeiten wie .dsc .changes fehlen. Und wie baue ich ein Source-Paket per Hand? Irgendwie ist der Ablauf doch anders als bei debuild bei einfachen Paketen.
There's this special biologist word we use for "stable". It's "dead". ~ Jack Cohen