Cómo cargar y descargar módulos del kernel en Linux

Cómo cargar y descargar módulos del kernel en Linux

Cuando instalamos el sistema operativo Linux Like en ese momento el kernel de Linux instala la mayoría de los módulos del controlador del dispositivo y después de la instalación también nos permite instalar nuevos controladores de dispositivo como módulos usando los comandos modprobe e insmod.

Normalmente los módulos del kernel se cargan automáticamente pero a veces es necesario instalar los módulos adicionales como si fueran manuales. Por ejemplo, desea instalar controladores de dispositivos de almacenamiento, etc. Para ello hay algunos comandos, algunos de los cuales se enumeran a continuación.

Comando lsmod

lsmod significa ‘ módulo de lista ‘. Como su nombre indica, este comando listará los módulos del kernel actualmente cargados en su sistema.

[root@linuxtechi ~]# lsmod

lsmod-command-output

Si quieres encontrar un módulo específico. Esto puede ser el módulo controlador de red ( e1000 ) y luego puede hacerlo a través del comando grep .

[root@linuxtechi ~]# lsmod | grep e1000

lsmod-grep-linux

Comando modinfo

modinfo significa ‘ información del módulo ‘. Este comando mostrará la información sobre un módulo del núcleo. Por ejemplo, desea ver la información sobre el módulo de controladores de red:

[root@linuxtechi ~]# modinfo e1000

modinfo-comando-salida-linux

La salida del comando modinfo muestra claramente la versión de este módulo, la descripción que muestra la fábrica de fabricación, la licencia es GPL y otra información importante.

Comando modprobe

modprobe se usa para agregar y quitar módulos del kernel. Linux mantiene el directorio del módulo del núcleo bajo ‘ /lib/modules/’uname -r’/kernel/drivers/ ‘ y archivos de configuración (excepto el archivo de configuración adicional en /etc/modprobe.d/ ). Si queremos ver los controladores del kernel, ejecute el comando debajo.

[root@linuxtechi ~]# ls /lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/

linux-kernel-modules-list

Si necesitamos añadir el módulo de kernel i8k que este módulo está usando para » acceder a la BIOS SMM en portátiles Dell »

[root@linuxtechi ~]# modprobe i8k

si la salida de este comando es cualquier error, entonces puede usar la opción ‘ -quite ‘, con esta bandera o opción modprobe no imprimirá mensajes de error.

Nota : La mayoría del tiempo usamos el comando modprobe para instalar el módulo del núcleo aunque insmod también se usa para cargar el módulo del núcleo en linux.

Quitar un módulo del núcleo

-r en el comando modprobe se usa para eliminar un módulo del núcleo. Supongamos que queremos quitar el módulo de disquete.

[root@linuxtechi ~]# modprobe -r floppy
[root@linuxtechi ~]#

Aquí quitamos el módulo de disquete del kernel después de escribir

[root@linuxtechi ~]# lsmod | grep floppy

y no deberías ver nada. Si desea añadir este módulo de nuevo, puede escribir

[root@linuxtechi ~]# modprobe floppy

En algún momento podemos tener problemas al cargar los módulos o los módulos no cargados correctamente. Para superar estos errores podemos añadir o cargar módulos con fuerza usando la opción ‘ -force’ ( -f ) en el comando modprobe.

[root@linuxtechi ~]# modprobe -f floppy

Si todavía tenemos problemas o errores al cargar los módulos, entonces esta vez debemos hacer la depuración, ya que al habilitar la depuración podemos encontrar el error o problema exacto antes o después de instalar los módulos. En otras palabras, la depuración es equivalente al funcionamiento en seco de los módulos de carga.

‘-n’ en el comando modprobe puede habilitar este tipo de depuración. Esta opción forzará al comando modprobe a realizar todos los pasos de carga del módulo excepto el último.

[root@linuxtechi ~]# modprobe -vn 'nombre_del_módulo'

También podemos ver la dependencia del módulo con el uso de ‘ -show-depends ‘ en el comando modprobe, el ejemplo se muestra a continuación

[root@linuxtechi ~]# modprobe --show-depends e1000
insmod /lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/net/ethernet/intel/e1000/e1000.ko
[root@linuxtechi ~]#

Eso es todo por este artículo. Espero que tengas una idea de cómo listar, instalar y eliminar el módulo del kernel en Linux.

Deja un comentario