Kernelmodulok betöltése és eltávolítása Linux alatt
A kernelmodul olyan program, amely igény szerint betölthető a kernelbe, vagy onnan eltávolítható anélkül, hogy szükségszerűen újrafordítaná (a rendszermagot) vagy újraindítaná a rendszert, és célja a kernel funkcionalitásának javítása.
Általánosságban elmondható, hogy a modulok többé-kevésbé olyanok, mint egy szoftver, például a WordPress beépülő moduljai. A beépülő modulok lehetőséget nyújtanak a szoftver funkcionalitásának bővítésére, nélkülük a fejlesztőknek egyetlen hatalmas szoftvert kellene készíteniük, amelynek minden funkciója egy csomagba van integrálva. Ha új funkciókra van szükség, akkor azokat egy szoftver új verziójába kell hozzáadni.
Ugyanígy modulok nélkül a kernelt úgy kellene felépíteni, hogy minden funkciója közvetlenül a kernelképbe legyen integrálva. Ez azt jelentené, hogy nagyobb kernelek kellenek, és a rendszergazdáknak minden alkalommal újra kell fordítaniuk a kernelt, amikor új funkcióra van szükség.
Egy egyszerű példa a modulra az eszközillesztő – amely lehetővé teszi a kernel számára, hogy hozzáférjen a rendszerhez csatlakoztatott hardverkomponenshez/eszközhöz.
Javasolt olvasmány: Hogyan lehet megtudni, hogy milyen Linux-verziót futtatsz
Listázza az összes betöltött kernelmodult Linuxban
Linuxban minden modul a .ko
kiterjesztéssel végződik, és általában automatikusan betöltődik, amint a rendszerindításkor észleli a hardvert. A rendszergazda azonban bizonyos parancsokkal kezelheti a modulokat.
A Linuxban jelenleg betöltött összes modul listázásához használhatjuk az lsmod (modulok listázása) parancsot, amely így olvassa be a /proc/modules fájl tartalmát.
lsmod
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
....
Kernelmodulok betöltése és eltávolítása (eltávolítása) Linux alatt
A kernelmodul betöltéséhez az insmod (modul beillesztése) parancsot használhatjuk. Itt meg kell adnunk a modul teljes elérési útját. Az alábbi parancs beilleszti a speedstep-lib.ko modult.
insmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
A kernelmodul eltávolításához az rmmod (modul eltávolítása) parancsot használjuk. A következő példa eltávolítja vagy eltávolítja a speedstep-lib.ko modult.
rmmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
A kernelmodulok kezelése a modprobe paranccsal
A modprobe egy intelligens parancs modulok listázásához, beillesztéséhez és eltávolításához a kernelből. Megkeresi a /lib/modules/$ (uname -r) modulkönyvtárban az összes modult és kapcsolódó fájlt, de kizárja az /etc/modprobe.d fájlban található alternatív konfigurációs fájlokat. könyvtárba.
Itt nincs szükség a modul abszolút elérési útjára; ez az előnye a modprobe használatának az előző parancsokhoz képest.
Modul beillesztéséhez egyszerűen adja meg a nevét az alábbiak szerint.
modprobe speedstep-lib
Modul eltávolításához használja a -r
jelzőt ehhez hasonló módon.
modprobe -r speedstep-lib
Megjegyzés: A modprobe alatt automatikus aláhúzás-konverzió történik, így nincs különbség a _
és a –
között, miközben modulnevek megadása.
További használati információkért és lehetőségekért olvassa el a modprobe kézikönyvoldalát.
man modprobe
Ne felejtsd el megnézni:
- A kernel futásidejű paramétereinek állandó és nem állandó módosítása
- Telepítés vagy frissítés a legújabb kernelverzióra a CentOS 7 rendszerben
- A kernel frissítése a legújabb verzióra az Ubuntuban
Ez minden most! Ha van olyan hasznos ötlete, amelyet hozzá szeretne adni ehhez az útmutatóhoz, vagy kérdései vannak, használja az alábbi visszajelzési űrlapot, és adja meg nekünk.