passende(n) Treiber / Kernel Modul(e) finden

kongstrong

Well-Known Member
Hallo leute

wie kann man unter FreeBSD12 die passenden Treiber bzw. Kernel Module finden? Oder anders Fomuliert, wie kann ich schauen welches Modul(e) für die Hardware des Rechners passt ?
 
Ich weiß nicht genau worauf du hinaus willst, der Kernel lädt die Module die er braucht großteils automatisch, ein paar spezielle Sachen müssen womöglich in der /boot/loader.conf eingetragen werden. Die geladenen Module siehst du mit kldstat.

Natürlich gibts Hardware die eigene 3rd Party Module braucht, wie und was da benötigt wird kann man nicht pauschal sagen, entweder hilft da die Doku der enstprechenden HW oder eine Googlesuche.
 
Geraetetraeiber sind Kernelmodule, wenn das OS einen Monolith. Kernel [1] integriert (oder teilweise auch bei Systemen mit hybriden Kerneln) - FreeBSD integriert einen monolith. Kernel.

Will herausgefunden werden, welche Hardware zur Laufzeit des FreeBSD-Kernels unterstuetzt wird, dann sind bspw. die Tools dmesg(8) [2] bzw. kldstat(8) [3] oder devinfo(8) [4] sowie pciconf(8) [5] geeignet herauszufinden, welche Treiber im Hintergrund wirken, aber auch um herauszufinden, welche Hardware nicht wirklich vom FreeBSD Kernel unterstutzt wird oder bei Systemstart bzw. waehrend des Boot-Process, in Abhaengigkeit zur bestehenden Konfiguration, nicht geladen wurde.

Desweiteren lohnt es sich das Manual intro(4) [6] zu lesen, da dort das Handling von Devices und Geraetreibern beschrieben wird.

[1] https://en.wikipedia.org/wiki/Kernel_(operating_system)
[2] https://www.freebsd.org/cgi/man.cgi?dmesg(8)
[3] https://www.freebsd.org/cgi/man.cgi?kldstat(8)
[4] https://www.freebsd.org/cgi/man.cgi?devinfo(8)
[5] https://www.freebsd.org/cgi/man.cgi?pciconf(8)
[6] https://www.freebsd.org/cgi/man.cgi?intro(4)
 
wie kann man unter FreeBSD12 die passenden Treiber bzw. Kernel Module finden? Oder anders Fomuliert, wie kann ich schauen welches Modul(e) für die Hardware des Rechners passt ?
Die neue Automatik funktioniert vor allem bei USB ganz gut.

Sonst gibt es keine besonders guten Methoden, in der Regel hilft nach dem Chipsatz googlen oder ein beherztes:
cd /boot/kernel
kldload if_*

Wenn es zum Beispiel um eine Netzwerkkarte geht. Dann sieht man im dmesg welcher Treiber zugeschlagen hat. Manchmal muss man noch irgendwelche firmware dazu laden.
 
pciconf -lBbceVv ist sehr geschwätzig und listet mMn alles, was man dafür wissen sollte. Wenn ein 'none' vor der Geräteadresse steht, kommt man entweder mit der Bezeichnung oder den ID-Nummern weiter.
 
sysutils/dsbdriverd:

Mit der Option -l kann man sich alle installierten PCI- und USB-Geräte mit den dazugehörigen Treibern auflisten lassen:

Code:
# /usr/local/libexec/dsbdriver -l
vendor=8086 product=27d8 class=04 subclass=03 bus=PCI Intel Corporation NM10/ICH7 Family High Definition Audio Controller Eee PC 1015PX: snd_hda
vendor=8086 product=27bc class=06 subclass=01 bus=PCI Intel Corporation NM10 Family LPC Controller Eee PC 1015PX: ichwd
vendor=168c product=002b class=02 subclass=80 bus=PCI Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) AW-NE785 / AW-NE785H 802.11bgn Wireless Full or Half-size Mini PCIe Card: if_ath_pci
vendor=0bda product=8179 class=00 subclass=00 bus=USB Realtek Semiconductor Corp. RTL8188EUS 802.11n Wireless Network Adapter: if_rtwn_usb
vendor=0bda product=8179 ifclass=ff ifsubclass=ff bus=USB protocol=ff Realtek Semiconductor Corp. RTL8188EUS 802.11n Wireless Network Adapter: if_rtwn_usb
 
Zurück
Oben