Page 1 of 1

Treiber finden

Posted: 28. Sep 2008 11:07
by treibersucher
Gibt es eine Möglichkeit fest eingebundene Treiber im Linux Kernel zu ermitteln.
Es geht darum das ich keine Kernelquellen habe, und die config auch nicht aus /proc/config auslesen kann, weil es im Kernel nicht eingebunden ist.
Die Treiber sind ja im Kernelimage, aber kann man irgendwo fest stellen welche das sind?
Ich dachte an /sys oder /proc. Aber wie?

Danke.

Posted: 28. Sep 2008 19:51
by Janka
/proc/config.gz ist ja genau für diesen Zweck gedacht. Wenn es nicht exponiert ist, ist vermutlich auch die Tabelle selbst nicht mit einkompiliert. Prüf das mal nach:

Code: Select all

$ gunzip -c /boot/vmlinuz >vmlinux
$ nm vmlinux|grep kernel_config_data
Wenn hier etwas gefunden wird, kannst du die Konfigurationsoptionen mit Debuggingwerkzeugen zum Vorschein bringen. Müsste ich mich auch erstmal mit beschäftigen, vermutlich hast du da mehr Elan zu.

Wenn nicht, wird es schwieriger. Dann musst du wissen, nach welchem Treiber du genau suchst. Schlag in den Kernelquellen nach, welche Symbole er exportiert und guck' ebenfalls mit nm nach diesem Symbol.

Janka

Posted: 28. Sep 2008 21:53
by treibersucher
In diesem Fall scheint das nicht so einfach zu sein. Da muss ich mal weiter suchen. Die Suchmaschinen spucken bei meiner Fehlbedienung leider nicht die gesuchten Infos aus.
Ist sowieso von keinem Nährwert, nur reines Interesse.

Danke.

Posted: 29. Sep 2008 10:24
by hjb
Hi!

Schau dir /proc/devices und /proc/filesystems an. Das gibt zumindest Hinweise. Die meisten Distributionen stellen zudem die config-Datei zur Verfügung, mit der der Kernel compiliert wurde. Wenn ich selbst einen Kernel baue, kopiere ich immer die config-Datei mit dem Kernel.

Die Geräte, die vom Kernel erkannt wurden, findet man unter /sys, wobei man auf Tools wie lshal oder grafische Frontends zurückgreifen kann. Aber das ist ja schon wieder ein anderes Thema.

Grüße,
hjb