GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So laden und entladen Sie Kernel-Module in Linux

Wenn wir damals ein Linux-ähnliches Betriebssystem installieren, installiert der Linux-Kernel die meisten Gerätetreibermodule und nach der Installation können wir auch neue Gerätetreiber als Module mit den Befehlen modprobe und insmod installieren.

Normalerweise werden Kernelmodule automatisch geladen, aber manchmal müssen Sie die zusätzlichen Module manuell installieren. Zum Beispiel möchten Sie Gerätetreiber von Speichergeräten usw. installieren. Dafür gibt es einige Befehle, von denen einige unten aufgeführt sind.

lsmod-Befehl

lsmod steht für „Listenmodul“. ‘. Wie der Name schon sagt, listet dieser Befehl die aktuell geladenen Kernel-Module auf Ihrem System auf.

[[email protected] ~]# lsmod

Wenn Sie ein bestimmtes Modul suchen möchten. Dies kann ein Netzwerktreibermodul (e1000 ) können Sie dann über grep tun Befehl.

[[email protected] ~]# lsmod | grep e1000

modinfo-Befehl

modinfo steht für „Modulinformationen“. ‘. Dieser Befehl zeigt die Informationen über ein Kernelmodul an. Sie möchten beispielsweise die Informationen zum Netzwerktreibermodul anzeigen:

[[email protected] ~]# modinfo e1000

Die Ausgabe des modinfo-Befehls zeigt deutlich die Version dieses Moduls, die Beschreibung, die die Herstellungsfabrik zeigt, die Lizenz ist GPL und andere wichtige Informationen.

modprobe-Befehl

Der Befehl modprobe wird zum Hinzufügen und Entfernen von Modulen aus dem Kernel verwendet. Linux verwaltet das Kernel-Modulverzeichnis unter „/lib/modules/’uname -r“/kernel/drivers/ ‘ und Konfigurationsdateien (mit Ausnahme der zusätzlichen Konfigurationsdatei in /etc/modprobe.d/ ). Wenn wir uns die Kernel-Treiber ansehen wollen, führen Sie den folgenden Befehl aus.

[[email protected] ~]# ls /lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/

Wenn wir i8k hinzufügen müssen Kernel-Modul, das dieses Modul für den „Zugriff auf das SMM-BIOS auf Dell-Laptops verwendet ”

[[email protected] ~]# modprobe i8k

Wenn die Ausgabe dieses Befehls ein Fehler ist, können Sie „–quite“ verwenden ‘-Option, mit diesem Flag oder dieser Option  modprobe gibt keine Fehlermeldungen aus.

Hinweis: Meistens verwenden wir modprobe Befehl zum Installieren des Kernelmoduls durch insmod wird auch zum Laden des Kernelmoduls unter Linux verwendet.

Entfernen Sie ein Kernel-Modul

-r Die Option im Befehl modprobe wird verwendet, um ein Kernelmodul zu entfernen. Nehmen wir an, wir wollen das Diskettenmodul entfernen.

[[email protected] ~]# modprobe -r floppy
[[email protected] ~]#

Hier entfernen wir das Diskettenmodul aus dem Kernel, nachdem Sie

eingegeben haben
[[email protected] ~]# lsmod | grep floppy

und du solltest nichts sehen. Wenn Sie dieses Modul erneut hinzufügen möchten, können Sie

eingeben
[[email protected] ~]# modprobe floppy

Irgendwann können Probleme beim Laden der Module oder Module auftreten, die nicht richtig geladen werden. Um diese Fehler zu umgehen, können wir Module mit „–force“ zwangsweise hinzufügen oder laden Option ( -f ) im modprobe-Befehl.

[[email protected] ~]# modprobe -f floppy

Wenn beim Laden der Module immer noch Probleme oder Fehler auftreten, müssen wir dieses Mal Debuggen. Durch Aktivieren des Debuggens können wir den genauen Fehler oder das Problem vor oder nach der Installation der Module finden. Mit anderen Worten, das Debuggen ist gleichbedeutend mit einem Probelauf beim Laden von Modulen.

-n’ Option im Befehl modprobe kann diese Art von Debugging aktivieren. Diese Option zwingt den Befehl modprobe, alle Schritte zum Laden des Moduls mit Ausnahme des letzten auszuführen.

[[email protected] ~]# modprobe -vn 'module_name'

Wir können auch die Abhängigkeit des Moduls mit „–show-depends“ sehen ‘ im modprobe-Befehl wird das Beispiel unten gezeigt

[[email protected] ~]# modprobe --show-depends e1000
insmod /lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/net/ethernet/intel/e1000/e1000.ko
[[email protected] ~]#

Das ist alles für diesen Artikel. Ich hoffe, Sie haben eine Idee, wie man Kernel-Module unter Linux auflistet, installiert und entfernt.


Linux
  1. Linux – Wie kann man feststellen, welches Modul den Kernel verschmutzt?

  2. So erstellen, kompilieren und laden Sie ladbare Linux-LKM-Kernel-Module

  3. Wie kodiere ich ein Linux-Kernel-Modul?

  4. Wie übergebe ich beim Booten einen Wert an ein eingebautes Linux-Kernel-Modul?

  5. So finden Sie den Linux-Modulpfad

Modprobe-Befehl unter Linux

Linux Kernel 5.9:Was ist neu und wie man aktualisiert

Linux-Kernel und seine Funktionen

Verwalten und überwachen Sie Linux-Kernel-Module mit Kmon

Zeigen Sie Linux-Kernel-Modulinformationen mit dem Modinfo-Befehl an

Wie lädt Linux das 'initrd'-Image?