Jinsi ya Kupakia na Kupakua Module za Kernel kwenye Linux
Moduli ya kernel ni programu inayoweza kupakiwa ndani au kupakuliwa kutoka kwa kernel inapohitajika, bila ya kuirudisha (kernel) au kuwasha upya mfumo, na inakusudiwa kuimarisha utendakazi wa punje.
Kwa maneno ya jumla ya programu, moduli ni zaidi au kidogo kama programu-jalizi za programu kama vile WordPress. Programu-jalizi hutoa njia za kupanua utendakazi wa programu, bila wao, wasanidi watalazimika kuunda programu moja kubwa yenye vipengele vyote vilivyounganishwa kwenye kifurushi. Ikiwa utendakazi mpya unahitajika, italazimika kuongezwa katika matoleo mapya ya programu.
Vivyo hivyo bila moduli, kernel ingelazimika kujengwa na utendakazi wote uliojumuishwa moja kwa moja kwenye picha ya kernel. Hii itamaanisha kuwa na kokwa kubwa, na wasimamizi wa mfumo wangehitaji kukusanya tena kernel kila wakati utendakazi mpya unahitajika.
Mfano rahisi wa moduli ni kiendeshi cha kifaa - ambacho huwezesha kernel kufikia sehemu ya maunzi/kifaa kilichounganishwa kwenye mfumo.
Orodhesha Moduli Zote za Kernel Zilizopakia katika Linux
Katika Linux, moduli zote huisha na kiendelezi cha .ko
, na kwa kawaida hupakiwa kiotomatiki huku maunzi yanapotambuliwa kwenye mfumo wa kuwasha. Walakini, msimamizi wa mfumo anaweza kudhibiti moduli kwa kutumia amri fulani.
Kuorodhesha moduli zote zilizopakiwa kwa sasa katika Linux, tunaweza kutumia lsmod (moduli za orodha) ambayo inasoma yaliyomo kwenye /proc/module kama hii.
# 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 ....
Jinsi ya Kupakia na Kupakua (Ondoa) Moduli za Kernel katika Linux
Ili kupakia moduli ya kernel, tunaweza kutumia amri ya insmod (ingiza moduli). Hapa, tunapaswa kutaja njia kamili ya moduli. Amri iliyo hapa chini itaingiza moduli ya speedstep-lib.ko.
# insmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
Ili kupakua moduli ya kernel, tunatumia amri ya rmmod (ondoa moduli). Mfano ufuatao utapakua au kuondoa moduli ya speedstep-lib.ko.
# rmmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
Jinsi ya Kusimamia Moduli za Kernel Kutumia Amri ya modprobe
modprobe ni amri ya akili ya kuorodhesha, kuingiza na kuondoa moduli kutoka kwa kernel. Inatafuta katika saraka ya moduli /lib/modules/$ (uname -r) kwa moduli zote na faili zinazohusiana, lakini haijumuishi faili mbadala za usanidi katika saraka ya /etc/modprobe.d.
Hapa, hauitaji njia kamili ya moduli; hii ndio faida ya kutumia modprobe juu ya amri zilizopita.
Ili kuingiza moduli, toa tu jina lake kama ifuatavyo.
# modprobe speedstep-lib
Ili kuondoa sehemu, tumia alama ya -r
kama hii.
# modprobe -r speedstep-lib
Kumbuka: Chini ya modprobe, ubadilishaji kiotomatiki wa underscore unafanywa, kwa hivyo hakuna tofauti kati ya _
na –
wakati wa kuingiza majina ya sehemu.
Kwa habari zaidi ya utumiaji na chaguzi, soma kupitia ukurasa wa mtu wa modprobe.
# man modprobe
Usisahau kuangalia:
- Jinsi ya Kubadilisha Vigezo vya Muda wa Kuendesha Kernel kwa Njia ya Kudumu na Isiyo Kudumu
- Jinsi ya Kusakinisha au Kuboresha hadi Toleo la Hivi Punde la Kernel katika CentOS 7
- Jinsi ya Kuboresha Kernel hadi Toleo la Hivi Punde katika Ubuntu
Ni hayo tu kwa sasa! Je, una mawazo yoyote muhimu, ambayo ulitaka tuongeze kwenye mwongozo huu au maswali, tumia fomu ya maoni iliyo hapa chini ili kuyatupa kwetu.