Comando Linux modprobe con ejemplos útiles
El kernel de Linux es el componente básico de un sistema operativo Linux. El kernel de Linux tiene un diseño modular que le permite expandirse en términos de funcionalidad. Los módulos son pequeños fragmentos de código que el kernel puede cargar y descargar sin tener que reiniciar la computadora. Los módulos del núcleo se pueden cargar/descargar de forma manual o automática.
Cuando se conecta/retira un nuevo dispositivo como USB o PCI, el kernel envía eventos. Los eventos contienen información sobre el dispositivo, como los detalles del modelo y el proveedor. Udev (el administrador de dispositivos) escucha estos eventos y les pasa modprobes. Modprobe identifica inteligentemente el controlador solicitado buscando en el directorio del módulo /lib/modules/uname -r
y carga el archivo del módulo en el kernel. Una vez que el módulo se carga correctamente, aparece en la lista de comandos de lsmod. Además, modprobe se usa para agregar o eliminar manualmente un módulo cargado del kernel.
Modprobe se distribuye como parte del paquete kmod. En este tutorial, aprendemos a usar comando modprobe para agregar y eliminar módulos del kernel de Linux.
sintaxis del comando modprobe
Revisemos la sintaxis del comando modprobe:
$ sudo modprobe [options] [Module Name]
El comando modprobe para agregar el módulo Kernel
Los módulos del núcleo se encuentran en los subdirectorios ubicados en /lib/modules/$(uname -r)
. Dominio uname -r
se puede utilizar para determinar la versión actual del kernel.
Cuando agrega un módulo modprobe, verifica de manera inteligente la dependencia de mod que insmod no hace. Las dependencias enumeradas en el archivo /lib/modules/$(uname -r)/modules.dep y la referencia del nombre del módulo se especifican en /etc/modules
expediente.
Para listar el directorio localizado del módulo kernel, escriba:
$ ls /lib/modules/$(uname -r)
Puede encontrar todos los controladores de dispositivos en el directorio /lib/modules/$(uname -r)/kernel/drivers/
.
Los archivos del módulo del kernel suelen tener .ko
extensiones Puedes enumerarlos todos .ko
archivos de:
$ find /lib/modules/$(uname -r) -type f -name *.ko*
Puede agregar el módulo al kernel de Linux usando el comando modprobe junto con el nombre del módulo.
$ sudo modprobe img_i2s_in
Una vez agregado, puede confirmar con el comando lsmod que enumera los módulos del kernel cargados actualmente.
$ sudo lsmod | grep img_i2s_in
Producción:
img_i2s_in 16384 0
El comando modprobe para eliminar el módulo Kernel
Para eliminar un módulo, use el comando modprobe con la opción -r junto con el nombre del módulo.
Por ejemplo, para eliminar el módulo nombrado img_i2s_in
escribe:
$ sudo modprobe -r img_i2s_in
Opciones de Modprobe
El comando modprobe tiene varias opciones, que se han dividido en tres categorías según sus casos de uso.
opción de gestión
Cuando usa el comando modprobe para agregar o eliminar módulos, los parámetros de administración permiten múltiples escenarios de administración de módulos.
elección | Descripción |
-A -todos |
Eliminar o agregar varios módulos a la vez |
–retirar -r |
Eliminar módulo, también se aplica a –remove-dependencies |
–eliminar dependencias | Eliminar módulos de dependencia |
–resolve-alias -R |
Identifique e imprima el nombre que coincida con un alias |
–primera vez | Error al imprimir para módulos agregados o eliminados |
–ignorar-instalar –ignorar-eliminar a ellos |
Ignorar los comandos de instalación o eliminación escritos en el módulo al insertar o extraer el módulo |
–use-lista negra -b |
Alias en la lista negra resuelto |
–fuerza – f |
Cuando se muestra un error de versión, fuerce la adición o eliminación del módulo. Esto se aplica tanto a –force-modversion como a –force-vermagic. |
–force-modversión | Ignore la versión del módulo al agregar o eliminar el módulo. |
–fuerza-vermagia | Ignore la magia de la versión del módulo al agregar o eliminar el módulo. |
Opciones de consulta
La opción de consulta del comando modprobe proporciona información de configuración y dependencia.
elección | Descripción |
–mostrar-depende d |
Si hay módulos con archivos de dependencia, enumera ese módulo |
–showconfig –show-config – C |
Muestra la configuración actual y las salidas |
–show-modversiones –dump-modversiones |
Mostrar dependencias de la versión del módulo |
Opciones generales
Las opciones generales en el comando modprobe configuran opciones de salida, ubicaciones de módulos y versiones.
elección | Descripción |
— función seca –mostrar – norte |
Imprime el resultado, pero no agregues ni elimines nada. |
–config=[Filename] -C |
Reemplace la dependencia de configuración predeterminada, es decir, /etc/modprobe.d con [Filename] |
–dirname=[Directory] d |
Para usar /lib/módulo [Directory] como raíz del sistema de archivos |
–set-version=[version] -S |
En lugar del núcleo especificado uname usos [version] centro |
–syslog -s |
Muestra un mensaje de error a través de Syslog |
–Tranquilo q |
No mostrar mensajes de error |
— detallado V |
Permite que se muestren múltiples mensajes. |
–versión V |
Mostrar versión modprobe |
–Ayuda – h |
Mostrar el mensaje de ayuda junto con los comandos. |
Conclusión
En este tutorial, aprendimos sobre el comando modprobe para agregar o eliminar módulos del kernel de Linux.
Gracias por leer, por favor dé sus comentarios y sugerencias.