Com carregar i descarregar mòduls del nucli a Linux
Un mòdul del nucli és un programa que es pot carregar o descarregar del nucli a petició, sense necessàriament recompilar-lo (el nucli) ni reiniciar el sistema, i té la intenció de millorar la funcionalitat del nucli.
En termes generals de programari, els mòduls són més o menys com els complements d'un programari com WordPress. Els connectors proporcionen mitjans per ampliar la funcionalitat del programari, sense ells, els desenvolupadors haurien de construir un sol programari massiu amb totes les funcionalitats integrades en un paquet. Si calen noves funcionalitats, s'haurien d'afegir en noves versions d'un programari.
De la mateixa manera, sense mòduls, el nucli s'hauria de construir amb totes les funcionalitats integrades directament a la imatge del nucli. Això significaria tenir nuclis més grans i els administradors del sistema haurien de recompilar el nucli cada vegada que es necessiti una nova funcionalitat.
Un exemple senzill de mòdul és un controlador de dispositiu, que permet al nucli accedir a un component/dispositiu de maquinari connectat al sistema.
Llista tots els mòduls del nucli carregats a Linux
A Linux, tots els mòduls acaben amb l'extensió .ko
i normalment es carreguen automàticament a mesura que es detecta el maquinari a l'arrencada del sistema. Tanmateix, un administrador del sistema pot gestionar els mòduls mitjançant determinades ordres.
Per llistar tots els mòduls carregats actualment a Linux, podem utilitzar l'ordre lsmod (llista de mòduls) que llegeix el contingut de /proc/modules així.
# 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 ....
Com carregar i descarregar (eliminar) mòduls del nucli a Linux
Per carregar un mòdul del nucli, podem utilitzar l'ordre insmod (inserir mòdul). Aquí, hem d'especificar la ruta completa del mòdul. L'ordre següent inserirà el mòdul speedstep-lib.ko.
# insmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
Per descarregar un mòdul del nucli, utilitzem l'ordre rmmod (remove module). L'exemple següent descarregarà o eliminarà el mòdul speedstep-lib.ko.
# rmmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko
Com gestionar els mòduls del nucli mitjançant l'ordre modprobe
modprobe és una ordre intel·ligent per llistar, inserir i eliminar mòduls del nucli. Cerca al directori de mòduls /lib/modules/$ (uname -r) tots els mòduls i fitxers relacionats, però exclou els fitxers de configuració alternatius al directori /etc/modprobe.d.
Aquí, no necessiteu la ruta absoluta d'un mòdul; aquest és l'avantatge d'utilitzar modprobe sobre les ordres anteriors.
Per inserir un mòdul, només cal que proporcioneu el seu nom de la manera següent.
# modprobe speedstep-lib
Per eliminar un mòdul, utilitzeu el senyalador -r
com aquest.
# modprobe -r speedstep-lib
Nota: Sota modprobe, es realitza una conversió automàtica de guió baix, de manera que no hi ha cap diferència entre _
i –
mentre s'introdueixen els noms dels mòduls.
Per obtenir més informació i opcions d'ús, llegiu la pàgina man de modprobe.
# man modprobe
No us oblideu de comprovar:
- Com canviar els paràmetres d'execució del nucli d'una manera persistent i no persistent
- Com instal·lar o actualitzar a la darrera versió del nucli a CentOS 7
- Com actualitzar el nucli a la darrera versió a Ubuntu
Això és tot per ara! Teniu alguna idea útil que volíeu que afegim a aquesta guia o consultes, utilitzeu el formulari de comentaris a continuació per enviar-nos-les.