(gelöst) angepasster kernel
(gelöst) angepasster kernel
Ich will mir einen angepassten kernel (ohne initrd) für meinen neuen Schleppi (thinkpad x61) bauen. Ich denke, der hat 'ne sata-Platte. Wie verifiziere ich das und welches Modul benötige ich für diese Plattenart. Wenn ich defconfig benutzte, wäre das Modul automatisch integriert?
Grüße, Günther
Grüße, Günther
Zuletzt geändert von guennid am 04.10.2009 10:29:53, insgesamt 1-mal geändert.
Re: angepasster kernel
Hallo,...
...erstmal n bisserl Werbung: http://www.thinkwiki.org/wiki/Category:X61
Natuerlich kannst du auch dort hingucken: http://www-307.ibm.com/pc/support/site. ... MIGR-67777
...aber ein schlichtes 'lspci' kann auch schon helfen; 'lsmod' taete was darueber aussagen ob z.B. ahci, wie bei mir, geladen wird. 'dmesg | less' koennte dir zeigen welchen Output von ladenten Modulen erzeugt wurde.
Es auch ne Site welche den zutreffenden Treiber entsprechen der Hardware-ID von 'lspci -n' ermittelt - wer das noch hat koennte das Posten; find das nicht.
...erstmal n bisserl Werbung: http://www.thinkwiki.org/wiki/Category:X61
Natuerlich kannst du auch dort hingucken: http://www-307.ibm.com/pc/support/site. ... MIGR-67777
...aber ein schlichtes 'lspci' kann auch schon helfen; 'lsmod' taete was darueber aussagen ob z.B. ahci, wie bei mir, geladen wird. 'dmesg | less' koennte dir zeigen welchen Output von ladenten Modulen erzeugt wurde.
Es auch ne Site welche den zutreffenden Treiber entsprechen der Hardware-ID von 'lspci -n' ermittelt - wer das noch hat koennte das Posten; find das nicht.
Watt about the non-digital!?
Re: angepasster kernel
So, also booten kann ich den kernel schon mal. Danke für den Hinweis auf ahci!
Welches Modul/welche Module brauche ich, um die 32bit-libs für amd64 nutzen zu können. Beim 26er lenny-standard-kernel funktionieren die entsprechenden Programme. In dem 31er, den ich mir da gerade zusammenstelle, nicht.
Grüße, Günther
Bei mir wohl kaum, da ich keine initrd will und also fest in den kernel kompilieren muss - oder?'lsmod' taete was darueber aussagen ob z.B. ahci [...] geladen wird.
Welches Modul/welche Module brauche ich, um die 32bit-libs für amd64 nutzen zu können. Beim 26er lenny-standard-kernel funktionieren die entsprechenden Programme. In dem 31er, den ich mir da gerade zusammenstelle, nicht.
Grüße, Günther
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Re: angepasster kernel
lsmod bei einem laufenden Debian Kernel ist gemeint.Bei mir wohl kaum, da ich keine initrd will und also fest in den kernel kompilieren muss - oder?
Du brauchstWelches Modul/welche Module brauche ich, um die 32bit-libs für amd64 nutzen zu können.
Code: Alles auswählen
CONFIG_IA32_EMULATION=y
Re: angepasster kernel
Jepp! Denkfehlerlsmod bei einem laufenden Debian Kernel ist gemeint.
Code: Alles auswählen
CONFIG_IA32_EMULATION=y
snd_hda_intel werd' ich brauchen. Ist da noch was, was nicht automatisch mitkonfiguriert würde?
Grüße, Günther
Re: angepasster kernel
...der Punkt ist ein Kernel ohne initrd KANN modular sein.
Die initrd existiert bloss weil es eine Datei ist welche der Kernel ohne Dateisystem/Block-IO-Funktion in seinem Speicher zur Verfuegung hat; ist so eine halbe Wahrheit, eine Form von Pseudo-FS.
Das heisst er kann von dort notwendige Module laden. Willst du einen Kernel ohne initrd musst du ihm die Moeglichkeit bieten, legst du Wert darauf das er Module nachlaedt, sie irgendwo herzunehmen - das Kann ein NFS sein, ein normales FS, oder meinetwegen auch der Hades...
Also, du brauchst, vermutlich, den Block-IO (wegen der Schnittstelle zu einem HD-Treiber), den Treiber fuer die HD-Schnittstelle (bei dir nun AHCI, und das haengt ab von deiner BIOS-Einstellung, denn AHCI ist ein Standard den z.B. mein Thinkpad als Kompatibilitaetsfunktion vorweist), und den Treiber fuer das verwendete Dateisystem auf deiner Root-Partition, zmnd. jene auf der /lib/modules/[kernel-version] zu finden ist.
Das ist alles.
Bevor du anfaengst 'Das brauch ich fest eingebunden' sieh zu das das soweit klappt. Sind also im Grunde 3-4 fest eingebundene Module.
Die initrd existiert bloss weil es eine Datei ist welche der Kernel ohne Dateisystem/Block-IO-Funktion in seinem Speicher zur Verfuegung hat; ist so eine halbe Wahrheit, eine Form von Pseudo-FS.
Das heisst er kann von dort notwendige Module laden. Willst du einen Kernel ohne initrd musst du ihm die Moeglichkeit bieten, legst du Wert darauf das er Module nachlaedt, sie irgendwo herzunehmen - das Kann ein NFS sein, ein normales FS, oder meinetwegen auch der Hades...
Also, du brauchst, vermutlich, den Block-IO (wegen der Schnittstelle zu einem HD-Treiber), den Treiber fuer die HD-Schnittstelle (bei dir nun AHCI, und das haengt ab von deiner BIOS-Einstellung, denn AHCI ist ein Standard den z.B. mein Thinkpad als Kompatibilitaetsfunktion vorweist), und den Treiber fuer das verwendete Dateisystem auf deiner Root-Partition, zmnd. jene auf der /lib/modules/[kernel-version] zu finden ist.
Das ist alles.
Bevor du anfaengst 'Das brauch ich fest eingebunden' sieh zu das das soweit klappt. Sind also im Grunde 3-4 fest eingebundene Module.
Watt about the non-digital!?
Re: angepasster kernel
Noch kurz, weil mich es abnervt mich ewig durch die Konfiguration zu wursteln...
Mach erst mal ein 'make menuconfig', dazu brauchst du aber make und libncurses5-dev, vllt. noch gcc und so Zeug; geh dann gleich wieder raus aus dem Utility, speicher aber ab.
Dann lass sowas ueber deine .config laufen:...und kopiere empty nach .config - damit hast du eine Nullconfig fuer deinen Kernel, und du kannst aktivieren was du brauchst, gut - sonst bist du 20 Minuten dabei nur zu deaktivieren was du nicht brauchst.
Mach erst mal ein 'make menuconfig', dazu brauchst du aber make und libncurses5-dev, vllt. noch gcc und so Zeug; geh dann gleich wieder raus aus dem Utility, speicher aber ab.
Dann lass sowas ueber deine .config laufen:
Code: Alles auswählen
sed -e 's/=[my]/ is not set/' -e 's/^CON/# CON/' .config > empty
Watt about the non-digital!?
Re: angepasster kernel
Der kernel läuft doch schon. Ich habe einen recht spartanisch konfigurierten aus einem alten Toshiba-Schlepptop als Vorlage genommen, den ich wiederum ursprünglich mit erstellt hatte.
Aber das mit der leeren config interessiert mich sehr. Mach ich mal, wenn ich sehr viel Zeit habe.
Im Augenblick hakelt es mit truecrypt, siehe neuen thread
Grüße, Günther
Code: Alles auswählen
make defconfig
Aber das mit der leeren config interessiert mich sehr. Mach ich mal, wenn ich sehr viel Zeit habe.
Im Augenblick hakelt es mit truecrypt, siehe neuen thread
Grüße, Günther
Re: angepasster kernel
Kannst du vielleicht ma sagen, was man nach so einer Aktion, als UNBEDINGT im Kernel drin haben muss, damit man USB, SATA, Netzwerkunterstützung, LAN, Wlan einschalten muss?chabayo hat geschrieben:Noch kurz, weil mich es abnervt mich ewig durch die Konfiguration zu wursteln...
Mach erst mal ein 'make menuconfig', dazu brauchst du aber make und libncurses5-dev, vllt. noch gcc und so Zeug; geh dann gleich wieder raus aus dem Utility, speicher aber ab.
Dann lass sowas ueber deine .config laufen:...und kopiere empty nach .config - damit hast du eine Nullconfig fuer deinen Kernel, und du kannst aktivieren was du brauchst, gut - sonst bist du 20 Minuten dabei nur zu deaktivieren was du nicht brauchst.Code: Alles auswählen
sed -e 's/=[my]/ is not set/' -e 's/^CON/# CON/' .config > empty
Weil mit defconfig, ist es schon recht leer in der .config Datei.
Dann noch zu der initrd. Was bringt das, wenn man die abschaltet?
PC
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
Re: (gelöst) angepasster kernel
Das wird so nicht gehen, das hängt dann von der jeweiligen hardware ab und du musst dich Stück für Stück vorarbeiten, deswegen ist es ja auch ein "angepasster" kernel.GRed hat geschrieben: USB, SATA, Netzwerkunterstützung, LAN, Wlan
Jede Menge Platz.GRed hat geschrieben:Dann noch zu der initrd. Was bringt das, wenn man die abschaltet?
Im Ernst: So bedeutsam ist das nicht bei modernen Platten, aber ich hab' nicht gern was im System, was ich nicht brauche.
Grüße, Günther
Re: (gelöst) angepasster kernel
guennid hat geschrieben:Das wird so nicht gehen, das hängt dann von der jeweiligen hardware ab und du musst dich Stück für Stück vorarbeiten, deswegen ist es ja auch ein "angepasster" kernel.GRed hat geschrieben: USB, SATA, Netzwerkunterstützung, LAN, Wlan
Jede Menge Platz.GRed hat geschrieben:Dann noch zu der initrd. Was bringt das, wenn man die abschaltet?
Im Ernst: So bedeutsam ist das nicht bei modernen Platten, aber ich hab' nicht gern was im System, was ich nicht brauche.
Grüße, Günther
Ok, also die sachen kriege ich schon hin, aber ich kenn mich überhaupt nicht mit dem Netzwerk aus, welche bestandteile braucht man um daheim über LAN und Wlan online gehen zu können. Dabei mein ich nicht die treiber für die jeweilige Hardware.
Bringt die abschaltung von initrd nur die platzersparnis, oder auch an performance etwas?
PC
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
Re: (gelöst) angepasster kernel
Also, du fragst schon recht lustig.GRed hat geschrieben: Dabei mein ich nicht die treiber für die jeweilige Hardware.
Viele Kernelmodule sind nichts anderes als Treiber für die hardware. Wenn du zu Hause Rechner vernetzen willst, müssen diese über Netzwerkkarten (nics) verfügen und für diese unterschiedlichen nics gibt es unterschiedliche Kernelmodule. Ergo musst du - wenn du den kernel "angepasst" selbst bauen willst - erst mal wissen, welche nic verbaut ist. Wenn du's nicht weißt, könnte lspci weiterhelfen.
Wir sollten hier Schluss machen, mach 'nen eigenen thread auf mit konkreter Frage.
Grüße, Günther
[edit:] An performance im Sinne von Schnelligkeit wird der Verzicht auf die initrd wohl nichts bringen. Sie wird übrigens nicht abgeschaltet, sie wird schlicht nicht erstellt. Schau dir mal den Inhalt des Verzeichnisses
/boot an. Dort findest du die initrd eines standard-kernels als image-Datei.
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Re: (gelöst) angepasster kernel
Man kann sie auch abschalten:Sie wird übrigens nicht abgeschaltet, sie wird schlicht nicht erstellt.
General setup --> Initial RAM filesystem and RAM disk (initramfs/initrd) support
Re: (gelöst) angepasster kernel
Mag sein das ich mich nicht richtig ausgedückt habe. Mir ist durchaus klar dass es module/treiber gibt, die die jeweilige hardware ansteuern. Ich meinte jedoch den Kernelbereich der in der config unter "Networking options" zu findet ist. Dort sind die routinen, die für das funktionieren des Netzwerks benötigt werden. Wenn ich eine komplett leere .config habe, die du oben beschrieben hast, weiss ich nicht was ich da brauch um meinem rechner es zu ermöglichen zugriff auf das internet oder meinetwegen mein heimnetzwerk.guennid hat geschrieben:Also, du fragst schon recht lustig.GRed hat geschrieben: Dabei mein ich nicht die treiber für die jeweilige Hardware.
Viele Kernelmodule sind nichts anderes als Treiber für die hardware. Wenn du zu Hause Rechner vernetzen willst, müssen diese über Netzwerkkarten (nics) verfügen und für diese unterschiedlichen nics gibt es unterschiedliche Kernelmodule. Ergo musst du - wenn du den kernel "angepasst" selbst bauen willst - erst mal wissen, welche nic verbaut ist. Wenn du's nicht weißt, könnte lspci weiterhelfen.
Wir sollten hier Schluss machen, mach 'nen eigenen thread auf mit konkreter Frage.
Grüße, Günther
[edit:] An performance im Sinne von Schnelligkeit wird der Verzicht auf die initrd wohl nichts bringen. Sie wird übrigens nicht abgeschaltet, sie wird schlicht nicht erstellt. Schau dir mal den Inhalt des Verzeichnisses
/boot an. Dort findest du die initrd eines standard-kernels als image-Datei.
Derzeit hab ich einen selbstgemachten kernel, den ich mit defconfig erstellt habe.
Wenn ich dich richtig verstanden habe, müsste man nach der erstellung einer leeren .config, einer art reverse enginiering betreiben ?
PC
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Re: (gelöst) angepasster kernel
Eigentlich sind die Optionen sehr gut beschrieben, am besten "make xconfig" zur Konfiguration nutzen, da muss man die Beschreibung nicht extra aufrufen.
Re: (gelöst) angepasster kernel
Ich nutze die ja schon so.. aber ich weiss trotzdem nicht wofür die jeweiligen routiten in dem bereich sind. Kann sein das ich was abstelle was benötigt wird. Deswegen dachte ich, das einer von hier weiss, was man unbedingt braucht um die heimischen voraussetzungen zu erfüllen . Also sprich internet und ma vielleicht die rechner verbinden, mehr brauch ich auch nicht.Spasswolf hat geschrieben:Eigentlich sind die Optionen sehr gut beschrieben, am besten "make xconfig" zur Konfiguration nutzen, da muss man die Beschreibung nicht extra aufrufen.
PC
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
Debian Squeeze
Maiboard: Asus P5E Deluxe
CPU: Core2Quad Q6600
GPU: gForce 6600 GT
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Re: (gelöst) angepasster kernel
Unter "Networking Options" sollten im Grunde "Unix domain sockets" und "TCP/IP networking" (ohne Unteroptionen) ausreichen. Eventuell noch "Packet socket" für tcpdump.