So laden und entladen Sie Kernelmodule unter Linux

So laden und entladen Sie Kernelmodule unter Linux

Ein Kernelmodul ist ein Programm, das auf Nachfrage in den Kernel geladen oder ausgeladen werden kann, ohne es notwendigerweise neu kompiliert (der Kern) oder das System neu zu starten, und soll die Funktionalität des Kernels verbessern.

Im Allgemeinen Software -Begriffe sind Module mehr oder weniger Plugins für eine Software wie WordPress. Plugins bieten Mittel zur Erweiterung der Softwarefunktionalität. Wenn neue Funktionen benötigt werden, müssten sie in neuen Versionen einer Software hinzugefügt werden.

Ebenso müsste der Kernel ohne Module mit allen Funktionen aufgebaut werden, die direkt in das Kernelbild integriert sind. Dies würde bedeuten, größere Kerne zu haben, und Systemadministratoren müssten den Kernel jedes Mal neu kompilieren, wenn eine neue Funktionalität benötigt wird.

Ein einfaches Beispiel für ein Modul ist ein Gerätetreiber, mit dem der Kernel auf eine Hardwarekomponente/ein mit dem System verbundener Gerät zugreifen kann.

Vorgeschlagene Lesen: So finden Sie heraus, welche Version von Linux Sie ausführen

Listen Sie alle geladenen Kernelmodule unter Linux auf

In Linux enden alle Module mit dem .ko Erweiterung, und sie werden normalerweise automatisch geladen, wenn die Hardware am Systemstiefel erkannt wird. Ein Systemadministrator kann jedoch die Module mit bestimmten Befehlen verwalten.

Um alle aktuell geladenen Module unter Linux aufzulisten, können wir die verwenden lsmod (Listenmodule) Befehl mit dem Lesen des Inhalts von /proc/module so was.

# LSMOD 
Listen Sie Kernel -Module unter Linux auf
Module Size Used by rfcomm 69632 2 pci_stub 16384 1 vboxpci 24576 0 vboxnetadp 28672 0 vboxnetflt 28672 0 vboxdrv 454656 3 vboxnetadp,vboxnetflt,vboxpci bnep 20480 2 rtsx_usb_ms 20480 0 memstick 20480 1 rtsx_usb_ms btusb 45056 0 uvcvideo 90112 0 btrtl 16384 1 btusb btbcm 16384 1 btusb videobuf2_vmalloc 16384 1 uvcvideo btintel 16384 1 btusb videobuf2_memops 16384 1 videobuf2_vmalloc bluetooth 520192 29 bnep,btbcm,btrtl,btusb,rfcomm,btintel videobuf2_v4l2 28672 1 uvcvideo videobuf2_core 36864 2 uvcvideo,videobuf2_v4l2 v4l2_common 16384 1 videobuf2_v4l2 videodev 176128 4 uvcvideo,v4l2_common,videobuf2_core, Videobuf2_v4l2 Intel_rapl 20480 0 x86_pkg_temp_thermal 16384 0 Media 24576 2 UVCVIDEO, Videodev… 

So laden und entladen (entfernen) Kernelmodule unter Linux

Um ein Kernelmodul zu laden, können wir das verwenden Insmod (Modul einfügen) Befehl. Hier müssen wir den vollständigen Pfad des Moduls angeben. Der folgende Befehl fügt die ein Speedstep-Lib.ko Modul.

# Insmod/lib/module/4.4.0-21-Generik/Kernel/Treiber/CPUFREQ/Speedstep-Lib.ko 

Um ein Kernelmodul zu entladen, verwenden wir die rmmod (Modul entfernen) Befehl. Das folgende Beispiel entladen oder entfernen die Speedstep-Lib.ko Modul.

# rmmod/lib/module/4.4.0-21-Generik/Kernel/Treiber/CPUFREQ/Speedstep-Lib.ko 

So verwalten Kernelmodule mithilfe von Modprobe -Befehl

Modprobe ist ein intelligenter Befehl zum Auflisten, das Einfügen sowie das Entfernen von Modulen aus dem Kernel. Es sucht im Modulverzeichnis /lib/module/$ (uname -r) Für alle Module und zugehörigen Dateien, jedoch alternative Konfigurationsdateien in der /etc/modProbe.D Verzeichnis.

Hier brauchen Sie nicht den absoluten Weg eines Moduls. Dies ist der Vorteil der Verwendung Modprobe über die vorherigen Befehle.

Um ein Modul einzufügen, geben Sie einfach seinen Namen wie folgt an.

# Modprobe Speedstep-Lib 

Verwenden Sie zum Entfernen eines Moduls die -R Flagge so.

# Modprobe -r Speedstep -Lib 

Notiz: Unter ModProbe wird eine automatische Unterstrichkonvertierung durchgeführt, sodass es keinen Unterschied zwischen _ Und - Beim Eingeben von Modulnamen.

Weitere Nutzungsinformationen und -optionen finden Sie auf der Seite Modprobe Man.

# Man Modprobe 

Vergessen Sie nicht zu überprüfen:

  1. So ändern Sie Kernel-Laufzeitparameter auf persistente und nicht-persistente Weise
  2. So installieren oder upgraden Sie auf die neueste Kernel -Version in CentOS 7 ein oder auf die neueste Kernelversion
  3. So upgraden Sie den Kernel auf die neueste Version in Ubuntu ein

Das ist alles fürs Erste! Haben Sie nützliche Ideen, die wir zu diesem Leitfaden oder Abfragen hinzufügen möchten, verwenden Sie das folgende Feedback -Formular, um sie an uns fallen zu lassen.