vanilla kernel zu "groß" wie eigenen kernel machen?

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 04.07.2013 22:51:25

Hallo

Ja endlich hab ich es geschafft. Ich hab dank http://www.freiesmagazin.de/ftp/2012/fr ... 012-01.pdf (ab seite 17) Kernel 3.9.9 kompiliert. Jedoch läuft der meiner Meinung noch langsamer als der Stock Kernel von Debian Wheezy Stable. In jedem Tuturial steht das ein eigener Kernel schneller läuft. Ein Freund von mir der sich auch bisschen mit Linux befasst meinte ich hab im Kernel Treiber dabei die ich eigentlich nicht brauche. Beim Kompilieren sind mir Sachen wie /wifi/intel aufgefallen. Ich hab 1. keinen Intel Prozi oder Chipsatz und 2. kein Wifi. Ich hab keine WIFI Karte oder Stick am PC. Mein PC hängt per Kabel am Internet.

Nun die Frage, was genau muss ich machen damit ich den Kernel für mein System hab. Ohne unnötige Treiber die ich nicht mal brauche. Das Problem ist auch das ich nicht weiß wo ich die Treiber finde. Bei Nvidia finde ich eine .run Datei als Grafikkartentreiber. Passt das?

Hat mein Freund überhaupt Recht mit seiner Theorie? Gibt es sonst was ich beachten sollte?

wanne
Moderator
Beiträge: 7462
Registriert: 24.05.2010 12:39:42

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von wanne » 04.07.2013 23:22:50

Success hat geschrieben:Ein Freund von mir der sich auch bisschen mit Linux befasst meinte ich hab im Kernel Treiber dabei die ich eigentlich nicht brauche.
[…]
Hat mein Freund überhaupt Recht mit seiner Theorie?
Ja, und?
Success hat geschrieben:In jedem Tuturial steht das ein eigener Kernel schneller läuft.
Prinzipiell ja. Ein eigener Kernel kann deutlich schneller laufen, weil man keine Module nutzen muss, und er an die HW angepasst werden kann. Aber seit amd64 hat sich der Unterschied drastisch verringert.
Und natürlcih kann man ihn auch so anpassen, das er langsamer wird, oder exakt den gleichen wie den aus den Quellen bauen. (Die haben den auch gebaut :-))
rot: Moderator wanne spricht, default: User wanne spricht.

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 04.07.2013 23:42:48

ja das doofe ist ja ich hab noch einen i686 Prozi. zumindest gibt das arch an und auch beim alten Kernel steht 686-pae. Ich hab den glaub ich aus den Quellen exakt gebaut. Ich hab wie in der Anleitung aus der /boot Partition die config vom alten Kernel ins home Verzeichnis zum gedownloadeten neuen Kernel kopiert. Dann hab ich make oldconfig eingegeben. Dann Laut der Anleitung sooft Enter gedrückt bis ich wieder beim mario@debian$ war. Danach habe ich make menuconfig eingegeben und dann make -j8 bzImage modules. Nach 2 Stunden habe ich make modules_install install eingegeben und noch mit update-grub den Bootloader aktualisiert.

Ich will das ganze deshalb noch schneller machen damit er wirklich nur lädt was er braucht.

Benutzeravatar
cirrussc
Beiträge: 6582
Registriert: 26.04.2007 19:47:06
Lizenz eigener Beiträge: MIT Lizenz

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cirrussc » 05.07.2013 00:13:15

Success hat geschrieben:Nun die Frage, was genau muss ich machen damit ich den Kernel für mein System hab. Ohne unnötige Treiber die ich nicht mal brauche. Das Problem ist auch das ich nicht weiß wo ich die Treiber finde. Bei Nvidia finde ich eine .run Datei als Grafikkartentreiber. Passt das?
Unnötige, also nicht benötigte Treiber, werden auch so nicht geladen, sie belegen einfach nur Platz und machen das Image größer.
Success hat geschrieben:Ich will das ganze deshalb noch schneller machen damit er wirklich nur lädt was er braucht.
Das ist keine so einfache Sache. Dazu braucht man etwas Erfahrung und vor allem sehr viel Zeit! Zudem muss man seine Hardware sehr genau kennen, oder zumindest wissen, um welche es sich handelt.
Man kann schon im "General Setup" und "Processor type and features" jede menge richtig und richtig falsch einstellen.
Die neuen 3er Kernel sind zusätzlich gegenüber den älteren aufgebläht durch allerlei neue Techniken für versch. Architekturen und Unmengen an Gerätetreibern.
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl

wanne
Moderator
Beiträge: 7462
Registriert: 24.05.2010 12:39:42

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von wanne » 05.07.2013 00:17:10

Success hat geschrieben:Zumindest gibt das arch an und auch beim alten Kernel steht 686-pae.
Nur weil du nen i686er Kernel hast hast du nicht unbedingt so nen Prozessor. Das liegt eher an der Installationscd, wo der Kernel herkommt. Die verhändern beim kopieren nicht auf Wundersame Weise ihre Architektur.
Success hat geschrieben:Ich hab den glaub ich aus den Quellen exakt gebaut. Ich hab wie in der Anleitung aus der /boot Partition die config vom alten Kernel ins home Verzeichnis zum gedownloadeten neuen Kernel kopiert. Dann hab ich make oldconfig eingegeben.
Gratuliere: Du hast den Debian-kernel mehr oder weniger exakt gleich nachgebaut. (Nur in neuerer Version.)Hättest du dir auch runterladen können.
Success hat geschrieben:Ich will das ganze deshalb noch schneller machen damit er wirklich nur lädt was er braucht.
Das macht der Debian Kernel und genau das macht ihn langsam. Ein schnellerer Kernel würde von anfang an genua aus dem bestehen was er braucht.
rot: Moderator wanne spricht, default: User wanne spricht.

pferdefreund
Beiträge: 3791
Registriert: 26.02.2009 14:35:56

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von pferdefreund » 08.07.2013 11:42:26

Bei make oldconfig sollte man aber nicht einfach nur enter drücken sondern auch mal lesen, was da gefragt wird. Wer sagt denn, daß da ein Feature default-mäßig den Kernel nicht ausbremsen kann (Accounting usw...) ?
Durch so was hab ich mal, weil sich was geändert hat, meinen Netzwerkkarten-Treiber verloren und durfte noch mal neu kompilieren. MIt der damaligen 200 Mhz-Kiste ein quasi tagelanges Vergnügen.

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 11.07.2013 16:53:44

also Heute ist komischerweise alles verschwunden was mit 3.9.9 zu tun hat. In /boot ist keine config mehr von 3.9.9 und in /lib/modules auch nicht mehr.

Also wollte ich 3.9.9 neu kompilieren. Ich bin wieder nach der Anleitung vorgegangen aber heute kompiliert der PC vielleicht ne Viertel Stunde. Dann ist er fertig. Beim Installieren findet er jedoch hunderte von Dateien nicht. Mein Terminal hat zwar nicht alles drauf aber in jedem Fehler was ich sehe steht was von INSTALL arch/x86 cp Aufruf von stat für "ach/x86 usw nicht möglich. Datei oder Verzeichnis nicht gefunden. Am Schluss steht noch

DEPMOD 3.9.9
sh /home/mario/Kernel/arch/x86/boot/install.sh 3.9.9 arch/x86/boot/bzImage \System.map "/boot"

*** Missing file: arch/x86/boot/bzImage
*** You need to run "make" before "make install".

make[1]: *** [install] Fehler 1
make: *** [install] Fehler 2

Heißt das ich kann mein System neu aufsetzen? Hab schon paar mal den Kernelordner gelöscht. Den Kernel neu runtergeladen. Nachher /lib/modules/3.9.9 gelöscht. autoremove gemacht und update-grub gemacht. Trotzdem kann ich den Kernel nicht nochmal kompilieren.

Ich versteh das nicht. Entweder man hat nen Uraltkernel und 100 Sicherheitslücken und dafür ein System das man nur alle 2 Monate neu aufsetzen muss oder man ist wie es sich gehört Up to Date, keine oder noch nicht bekannte Sicherheitslücken, den aktuellsten Kernel und dafür muss man das System dann nach 1 Woche gleich neu aufsetzen. Wieso kann der den Kernel nicht neu kompilieren?

Wenn ich später einen kleinen Server mal haben will, muss er ja auch uptodate sein

Benutzeravatar
cirrussc
Beiträge: 6582
Registriert: 26.04.2007 19:47:06
Lizenz eigener Beiträge: MIT Lizenz

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cirrussc » 11.07.2013 17:47:19

Die Frage ist nun, wie genau du jetzt den Bau anstößt? Mit make-kpkg, make deb, make ohne Packeterzeugung?
Bei den Install-Fehlern wurde mit Rootrechten gearbeitet?
Vor dem Neubau, der neuen Konfiguration wurde ein make clean durchgeführt?

Die genauen Fehlermeldungen und Aufrufe, Pfade wären hier hilfreich.
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 11.07.2013 23:39:36

also ich hab von /boot die config-3.2.irgendwas in meinen Ordner Kernel im Homeverzeichnis kopiert und in .config geändert

Dann hab ich make oldconfig eingegeben. In der Anleitung ich soll Die Entertaste immer drücken oder was eingeben was die Enterdrückerei simuliert.

Dann hab ich make menuconfig eingegeben. Dann kam so ein Menü ähnlich wie bei tasksel. Da hab ich gleich auf save navigiert und die Datei als .config abgespeichert wie es vorgeschlagen wurde vom Programm. Danach habe ich make -j2 bzImage modules eingegeben. Das sollte normal einige Stunden dauern. Bei mir hats vielleicht 15 Minuten gedauert obwohl es beim 1. mal fast 3 Stunden dauerte. Danach hab ich make modules_install install eingegeben, wo auch der besagte Fehler aufgetreten ist. Hätte alles funktioniert hätte ich nur noch update-grub eintippen müssen und der Kernel wäre im Bootloader und startfähig.

Ich arbeite generell nur mit rootrechten. Ich habe daher auch bei dieser Operation mit Rootrechten gearbeitet da alles andere nur unsauber oder gar nicht gehen würde. Sogar unscheinbare Dinge wie eine ROM auf ein Handy zu flashen gehen nur mit Rootrechte.

Wann muss ich make clean eingeben und welche genauen Pfade und Fehlermeldungen meinst du? Soll ich das ganze Terminal kopieren und hier einfügen? Nicht mal im Terminal hat alles platz.

Ich find ja komisch warum die x86 Architektur überhaupt benötigt wird. Hab ja i686 Architektur. Zumindestens sagt das arch im Terminal

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 15.07.2013 16:18:03

jetzt braucht er nur noch 5 Minuten und er findet keine Regel mehr um modules-install zu erstellen. Schluss. Hält meine CPU nicht so lang durch oder wieso bricht der immer nach 5-15 Minuten ab? Oder liegt es daran das der Kernel mit Gnome verankert ist. Mit mate dauert das kompilieren 15 Minuten und gibt dann wenigstens 200 Fehlermeldungen oder so wieder das er das und das nicht findet. Ohne Gui Dauert das kompilieren 5 Minuten und gibt nur an das keine Regel da ist.

Benutzeravatar
cirrussc
Beiträge: 6582
Registriert: 26.04.2007 19:47:06
Lizenz eigener Beiträge: MIT Lizenz

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cirrussc » 15.07.2013 16:31:55

Success hat geschrieben:Dann hab ich make menuconfig eingegeben. Dann kam so ein Menü ähnlich wie bei tasksel. Da hab ich gleich auf save navigiert und die Datei als .config abgespeichert wie es vorgeschlagen wurde vom Programm.
Was du hier überspringst, ist normaler Weise der aufwändigste Teil des Prozesses. Aber wenn er die Konfig so übernimmt, dass sollte es stimmen (oldconfig habe ich noch nie verwenden müssen).
Success hat geschrieben:Wann muss ich make clean eingeben und welche genauen Pfade und Fehlermeldungen meinst du? Soll ich das ganze Terminal kopieren und hier einfügen? Nicht mal im Terminal hat alles platz.
Wie ich es schrieb: vor dem erneuten Anstoßen von make. Denn make baut nichts neu, was schon vorhanden ist, deswegen sicher auch die vorzeitigen Abbrüche.
Success hat geschrieben:Ich find ja komisch warum die x86 Architektur überhaupt benötigt wird. Hab ja i686 Architektur. Zumindestens sagt das arch im Terminal
Fällt dir da nix auf? Ok: ein i686 Kompatibler gehört zur 6. Generation eines x86 (dafür steht das x nämlich) -fähigen Prozessors.

Am besten ist, das Quellverzeichnis komplett zu löschen (die Konfig ev. retten) und neu zu entpacken.
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: AW: vanilla kernel zu

Beitrag von Success » 15.07.2013 16:37:15

Ich mach jetzt rm -rf /* und installier debian neu. Dann kann ich von vorne anfangen ohne Fehler

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 16.07.2013 16:14:23

So, hab die Konfiguration von /boot in ein Nopaste kopiert. Hoffe man kann es sehen. Nach ca. 10 Minuten wieder abbruch. Glaub die Kernel sind nicht mit Debian kompatibel oder so. [np]http://debianforum.de/forum/pastebin.ph ... ew&s=37288[/np]

Benutzeravatar
cirrussc
Beiträge: 6582
Registriert: 26.04.2007 19:47:06
Lizenz eigener Beiträge: MIT Lizenz

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cirrussc » 16.07.2013 17:11:43

Success hat geschrieben:So, hab die Konfiguration von /boot in ein Nopaste kopiert.
Das scheint die Konfig vom Debian Stock Kernel zu sein?
Success hat geschrieben:Hoffe man kann es sehen. Nach ca. 10 Minuten wieder abbruch. Glaub die Kernel sind nicht mit Debian kompatibel oder so.
Den 3.9.er hatte ich erfolgreich gebaut, jetzt sogar den 3.10.1 (selbst mit propr. nvidia Treiber), also daran sollte es nicht liegen. Allerdings habe ich das eigentlich veralteten make-kpkg verwendet.
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 16.07.2013 18:09:45

glaub schon dass das der Kernel von Debian ist. Was muss ich machen damit ich dem Fehler auf die Spur komme? Wie gesagt, ich kopier den in das entpackte Kernelverzeichnis von 3.10.1 und nenne die Datei dann .config. Dann gib ich make oldconfig ein. Nachher gib ich noch make menuconfig ein wobei in der Anleitung steht das menuconfig nur zum Kontrollieren ist vor der Kompilation. Da ich aber nichts verändert habe habe ich Save gemacht und vor paar Tagen ohne Save exit gedrückt. Ich bin auch ratlos welche Infos benötigt werden und wie ich vorgehen muss um diese Informationen zu bekommen :(

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cosmac » 16.07.2013 18:28:04

hi,

NoPaste-Eintrag37288 ist identisch mit dem Debian-Original config-3.2.0-4-686-pae. Mit der solltest du den 3.10er Kernel nicht übersetzen. Entweder hast du die falsche .config nach nopaste kopiert oder "make oldconfig" hat nicht funktioniert. Aber ob "make oldconfig" durchläuft oder nicht merkt man doch an den vielen Fragen? Was genau meldet das make denn (nur die letzten paar Zeilen)?

Eine gute .config funktioniert mit den Kernel-Quellen von Debian genauso wie mit denen direkt von kernel.org.
Beware of programmers who carry screwdrivers.

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: AW: vanilla kernel zu

Beitrag von Success » 16.07.2013 19:18:49

Hier ein Foto von den letzten Zeilen von make oldconfig. http://androidflash.eu/fotos/debian.jpg

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cosmac » 16.07.2013 19:57:20

soweit so gut, jetzt müsste der Anfang der .config so aussehen:

Code: Alles auswählen

#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 3.10.1 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
jetzt wäre ein "make" angesagt und wenn das fertig ist, zeigst du uns bitte die Fehlermeldung.
Beware of programmers who carry screwdrivers.

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 16.07.2013 20:16:50

ok hier der Fehler http://androidflash.eu/fotos/debian2.jpg

Ich habe erstmal erst wie du gesagt hast nur make gestartet. Ich werd jetzt nochmal make -j2 bzImage modules durchlaufen lassen und dann noch einen Screenshot machen.

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cosmac » 16.07.2013 20:22:09

kannst du dir sparen. Installier' erstmal das Paket Debianbc. Was ist denn das für ein Debian? Das Paket ist eigentlich immer vorinstalliert.
Beware of programmers who carry screwdrivers.

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 16.07.2013 20:27:29

Also ich hab Debian GNU Linux 7.1 Wheezy stable.

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 16.07.2013 21:34:00

ok man sollte zwar den Tag vor dem Abend nicht loben aber meine Maschine kompiliert schon eine Stunde vor sich hin. :THX: Glaub das Paket bc war der Entscheidende Hinweis. Falls das klappt, werd ich irgendwie einen Guide schreiben denn der Guide von dem ich die Anleitung ist dann fail bzw gibts nen anderen Weg auch wie ich gesehen hab^^

Als nächstes werd ich mir anschauen wie ich den Kernel auf meine Hardware zuschneiden kann. Weil so sachen wie wireless brauch ich auf meinem Stand PC bestimmt nicht^^

Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Success » 16.07.2013 22:51:47

Ok Kernel kompilation Erfolgreich. Jetzt noch eine kleine Frage. Wie kann ich die Schriftfarbe im Terminal ändern? Hab ja ein Debian ohne GUI und brauchs ehrlich gesagt auch nicht. Aber Schwarz/Weiß auf einem Röhrenmonitor ist doof. Kann man die Schrift auch Giftgrün machen?

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von cosmac » 17.07.2013 00:59:49

Success hat geschrieben:Aber Schwarz/Weiß auf einem Röhrenmonitor ist doof. Kann man die Schrift auch Giftgrün machen?
viele Röhrenmonitore können aber nur eine Farbe, also entweder weiß, orange oder grün. Für weiße Röhren gab's früher grüne Folie, die konnte man auf die Röhre aufbügeln. Normale Folie geht nicht, weil die Röhre gewölbt ist. Natürlich finde ich die jetzt nicht wieder :(

In drivers/tty/vt/vt.c (Zeile 2835 im 3.10.0er Kernel) wird beim Start die Standard-Schriftfarbe festgelegt:

Code: Alles auswählen

vc->vc_def_color       = 0x07;   /* white */
weiß ist 7, grün wäre 2.

Code: Alles auswählen

echo -e -n "\e[32m"
date
echo -e -n "\e[m"
schaltet auf grüne Schrift um, gibt das Datum aus und schaltet auf die Standard-Schriftfarbe zurück.


SCNR
Beware of programmers who carry screwdrivers.

Benutzeravatar
Dogge
Beiträge: 1895
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: vanilla kernel zu "groß" wie eigenen kernel machen?

Beitrag von Dogge » 17.07.2013 07:15:09

Success hat geschrieben:Als nächstes werd ich mir anschauen wie ich den Kernel auf meine Hardware zuschneiden kann. Weil so sachen wie wireless brauch ich auf meinem Stand PC bestimmt nicht^^
Mit

Code: Alles auswählen

make localmodconfig
kannst du den Kernel auf die aktuell geladenen Module beschränken. Aber davor solltest du alles, was du so nutzt mal angesteckt/geladen haben. Ich dachte mir bei meinem ersten Versuch, bei einem Laptop ändert sich ja nichts an der HW und habe einfach loskompiliert und dann konnte ich nicht mal einen USB-Stick mounten. :D
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

Antworten