Kuidas tuumamooduleid Linuxis sisse ja välja laadida
Tuumamoodul on programm, mida saab nõudmisel tuumasse laadida või sealt maha laadida, ilma seda (kerneli) uuesti kompileerimata või süsteemi taaskäivitamata, ja see on mõeldud kerneli funktsionaalsuse parandamiseks.
Üldiselt tarkvaralises mõttes on moodulid enam-vähem sarnased tarkvara, näiteks WordPressi pistikprogrammidega. Pistikprogrammid pakuvad vahendeid tarkvara funktsionaalsuse laiendamiseks, ilma nendeta peaksid arendajad ehitama ühe massiivse tarkvara, mille kõik funktsioonid oleksid integreeritud paketti. Kui on vaja uusi funktsionaalsusi, tuleks need lisada tarkvara uutesse versioonidesse.
Samuti ilma mooduliteta peaks kernel olema ehitatud nii, et kõik funktsioonid oleksid integreeritud otse kernelipilti. See tähendaks suuremate tuumade olemasolu ja süsteemiadministraatoritel tuleb tuum uuesti kompileerida iga kord, kui on vaja uut funktsionaalsust.
Mooduli lihtne näide on seadme draiver - mis võimaldab kernelil juurde pääseda süsteemiga ühendatud riistvarakomponendile/seadmele.
Loetlege kõik Linuxi laaditud tuumamoodulid
Linuxis lõpevad kõik moodulid laiendiga .ko
ja need laaditakse tavaliselt automaatselt, kui riistvara tuvastatakse süsteemi käivitamisel. Kuid süsteemiadministraator saab mooduleid teatud käskude abil hallata.
Kõigi Linuxi praegu laaditud moodulite loetlemiseks võime kasutada käsku lsmod (nimekirja moodulid), mis loeb/proc/moodulite sisu niimoodi.
# 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 ....
Kuidas tuumamooduleid Linuxis laadida ja maha laadida (eemaldada)
Tuumamooduli laadimiseks võime kasutada käsku insmod (insert moodul). Siin peame määrama mooduli täieliku tee. Allolev käsk sisestab mooduli speedstep-lib.ko.
# insmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
Tuumamooduli mahalaadimiseks kasutame käsku rmmod (eemalda moodul). Järgmine näide laadib või eemaldab mooduli speedstep-lib.ko.
# rmmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
Kerneli moodulite haldamine modprobe käsu abil
modprobe on intelligentne käsk moodulite loendamiseks, sisestamiseks ja eemaldamiseks tuumast. See otsib moodulite kataloogist/lib/modules/& # 36 (uname -r) kõiki mooduleid ja seotud faile, kuid välistab alternatiivsed konfiguratsioonifailid kataloogis /etc/modprobe.d.
Siin pole vaja mooduli absoluutset teed; see on modprobe kasutamise eelis eelmiste käskude ees.
Mooduli sisestamiseks sisestage lihtsalt selle nimi järgmiselt.
# modprobe speedstep-lib
Mooduli eemaldamiseks kasutage sellist lippu -r
.
# modprobe -r speedstep-lib
Märkus. Modprobe'i all viiakse läbi automaatne allakriipsutuse teisendamine, nii et moodulite nimede sisestamisel pole _
ja -
vahel vahet.
Lisateavet kasutuse kohta ja võimaluste kohta lugege modprobe manulehte.
# man modprobe
Ärge unustage vaadata:
- Kuidas muuta tuuma käituse parameetreid püsival ja mittepüsival viisil
- Kuidas CentOS 7-s installida või uuemale kerneliversioonile uuendada
- Kuidas uuendada tuuma Ubuntu uusimale versioonile
Praeguseks kõik! Kas teil on kasulikke ideid, mida soovisite, et me sellele juhendile või päringutele lisaksime, kasutage allpool olevat tagasisidevormi, et need meile saata.