Introducción
El kernel de Linux es el componente principal del sistema operativo Linux. Administra los recursos del sistema y es un puente entre el hardware y el software de su computadora.
El kernel de Linux tiene un diseño modular. Un módulo del kernel, o a menudo denominado controlador, es un fragmento de código que amplía la funcionalidad del kernel. Los módulos se compilan como módulos cargables o se integran en el kernel. Los módulos cargables se pueden cargar y descargar en el kernel en ejecución a pedido, sin la necesidad de reiniciar el sistema.
Normalmente, los módulos se cargan bajo demanda desde udev
(Administrador de dispositivos). Sin embargo, a veces puede ser necesario optimizar la forma en que se cargan los formularios. Por ejemplo, es posible que deba cargar un formulario con parámetros adicionales o para evitar que un formulario se cargue automáticamente.
Puede cargar manualmente un módulo en el kernel usando el modprobe
, o automáticamente al arrancar usando los archivos /etc/modules
o /etc/modules-load.d/*.conf
En este artículo, explicaremos cómo usar modprobe
para agregar y eliminar módulos del kernel de Linux. modprobe
es parte de kmod
un binario que implementa múltiples programas utilizados para administrar los módulos del kernel de Linux.
Agregar módulos del kernel
Los módulos del kernel se almacenan en el /lib/modules/<kernel_version>
. Busque la versión del kernel en ejecución, use el comando uname -r
Solo los usuarios con privilegios administrativos pueden administrar los módulos del kernel.
Para cargar un módulo, modprobe
comando modprobe seguido del nombre del módulo:
modprobe module_name
El modprobe
cargará el módulo dado y todas las dependencias del módulo adicional. Solo se puede especificar un módulo en la línea de comando.
Utilice el lsmod
para confirmar que el módulo está cargado:
lsmod | grep module_name
Para cargar un módulo con parámetros adicionales, use la sintaxis parameter=value
modprobe module_name parameter=value
El comando acepta varios pares de parámetros y parameter=value
separados por espacios.
Normalmente, el módulo debe cargarse durante el inicio del sistema. Puede hacer esto especificando el módulo y sus parámetros en un archivo dentro del directorio /etc/modules-load.d
Los archivos deben terminar con .conf
y pueden tener cualquier nombre:
La configuración especificada en estos archivos es leída por udev
, que carga los módulos al inicio del sistema usando modprobe
.
Eliminar los módulos del kernel
Para eliminar un módulo, invoque el modprobe
con la -r
seguida del nombre del módulo:
modprobe -r module_name
modprobe
también eliminará las dependencias de módulo no utilizadas.
Cuando se invoca con -r
, el comando acepta varios módulos como argumentos:
modprobe -r module_name1 module_name2
Si desea evitar que un módulo del Kernel se cargue en el arranque, cree un .conf
con cualquier nombre dentro de /etc/modprobe.d
. La sintaxis es:
Si desea incluir módulos adicionales en la lista negra, especifique los módulos en una nueva línea o cree un nuevo archivo .conf
Conclusión
El modprobe
permite agregar y eliminar módulos del kernel de Linux.