Todo lo que necesita saber sobre el comando Linux/Unix: modprobe

Todo lo que necesita saber sobre el comando Linux/Unix: modprobe

Todo lo que necesita saber sobre el comando Linux/Unix: modprobe

VALORACIÓN DEL ARTÍCULO:
5/5


Índice de contenidos

Nombre

modprobe – manejo de alto nivel de módulos cargables

Sinopsis

modprobe [-adnqv][-C config] módulo[symbol=value …. modprobe [-adnqv][-C config][-t type] pattern modprobe -l[-C config][-Ft type] pattern modprobe -c[-C config] modprobe -r[-dnv][-C config][module . modprobe -Vh

Opciones

-a , –todos

Cargar todos los módulos correspondientes en lugar de detenerse después de la primera carga correcta.

-c , –showconfig

Muestra la configuración utilizada actualmente.

-C , –config config

Utilice el archivo config en lugar de (el opcional) /etc/modules.conf para especificar la configuración. La variable de entorno MODULECONF también puede utilizarse para seleccionar (y anular) un archivo de configuración diferente del archivo de configuración predeterminado /etc/modules.conf (o /etc/conf.modules (obsoleto)).

Cuando la variable de entorno UNAME_MACHINE está establecida, modutils usará su valor en lugar del campo máquina de la llamada al sistema uname(). Esto es principalmente útil cuando está compilando módulos de 64 bits en espacio de usuario de 32 bits o viceversa, ajuste UNAME_MACHINE al tipo de módulos. Los modutils actuales no soportan el modo cross build completo para los módulos, se limita a elegir entre versiones de 32 y 64 bits de la arquitectura del host.

-d , –debug

Muestra información sobre la representación interna de la pila de módulos.

-h , –help

Muestre un resumen de las opciones y salga inmediatamente.

-k , –autoclean

Configure’autoclean’ en los módulos cargados. Utilizado por el kernel cuando llama a modprobe para satisfacer una característica que falta (suministrada como módulo). La opción -q está implícita en -k . Estas opciones se enviarán automáticamente a insmod .

-l , –list

Lista de módulos coincidentes.

-n , –show

No realice la acción, sólo muestre lo que se haría.

-q , –quiet

No se queje si insmod no instala un módulo. Continúe como de costumbre, pero en silencio, con otras posibilidades para que modprobe pruebe. Esta opción se enviará automáticamente a insmod .

-r , –quitar

Quite el módulo (pilas) o limpie automáticamente, dependiendo de si hay algún módulo mencionado en la línea de comandos.

-s , –syslog

Informe a través de syslog en lugar de stderr. Estas opciones se enviarán automáticamente a insmod .

-t moduletype; –type moduletype

Sólo considere módulos de este tipo. modprobe sólo mirará a los módulos cuya ruta de directorio incluye exactamente » /moduletype/«. moduletype puede incluir más de un nombre de directorio, por ejemplo » -t drivers/net» listaría los módulos en xxx/drivers/net/ y sus subdirectorios.

-v , –verbose

Imprimir todos los comandos a medida que se ejecutan.

-V, –versión

Mostrar la versión de modprobe .

Nota:

Los nombres de los módulos no deben contener trayectorias (no ‘/’), ni pueden contener el final ‘.o’. Por ejemplo, slip es un nombre de módulo válido para modprobe , /lib/modules/2.2.19/net/slip y slip.o no son válidos. Esto se aplica a la línea de comandos y a las entradas en la configuración.

Descripción del comando

Las utilidades modprobe y depmod están pensadas para hacer que un núcleo modular de Linux sea más manejable para todos los usuarios, administradores y mantenedores de distribución.

Modprobe usa un archivo de dependencias tipo «Makefile», creado por depmod , para cargar automáticamente los módulos relevantes desde el conjunto de módulos disponibles en árboles de directorios predefinidos.

Modprobe se usa para cargar un solo módulo, una pila de módulos dependientes, o todos los módulos que están marcados con una etiqueta específica.

Modprobe cargará automáticamente todos los módulos base necesarios en una pila de módulos, como se describe en el archivo de dependencias modules.dep. Si la carga de uno de estos módulos falla, toda la pila actual de módulos cargados en la sesión actual se descargará automáticamente.

Modprobe tiene dos maneras de cargar módulos. Una forma (el modo de prueba) intentará cargar un módulo de una lista (definida por pattern). Modprobe detiene la carga tan pronto como un módulo se carga con éxito. Esto puede usarse para cargar automáticamente un controlador Ethernet de una lista. La otra manera de usar modprobe es cargar todos los módulos de una lista. Ver EJEMPLOS , abajo.

Con la opción -r , modprobe descargará automáticamente una pila de módulos, de forma similar a como lo hace » rmmod -r «. Tenga en cuenta que usando sólo » modprobe -r » se limpiarán los módulos autocargados no utilizados y también se ejecutarán los comandos de pre y post eliminación en el archivo de configuración /etc/modules.conf.

La combinación de las opciones -l y -t enumera todos los módulos disponibles de un determinado tipo.

Opción -c imprimirá la configuración utilizada actualmente (por defecto + archivo de configuración).

Configuración

El comportamiento de modprobe (y depmod ) puede ser modificado por el archivo de configuración (opcional) /etc/modules.conf. Para una descripción más detallada de lo que puede contener este archivo, así como la configuración por defecto utilizada por depmod y modprobe , ver modules.conf (5).

Tenga en cuenta que los comandos de pre- y post-remoción no se ejecutarán si un módulo es «auto-limpiado» por el kerneld! En su lugar, busque la próxima compatibilidad con el almacenamiento persistente de módulos. Si desea utilizar las funciones de pre y post instalación, tendrá que desactivar autoclean para kerneld y en su lugar poner algo como la siguiente línea en su crontab (esto se utiliza también para sistemas kmod) para realizar la autolimpieza cada 2 minutos: */2 * * * * * test -f /proc/modules && /sbin/modprobe -r

Estrategia

La idea es que modprobe busque primero en el directorio que contiene los módulos compilados para la versión actual del kernel. Si el módulo no se encuentra allí, modprobe buscará en el directorio común a la versión del núcleo (por ejemplo, 2.0, 2.2). Si el módulo todavía se encuentra, modprobe buscará en el directorio que contiene módulos una versión por defecto, y así sucesivamente.

Cuando instalas un nuevo linux, los módulos deben ser movidos a un directorio relacionado con la versión (y versión) del kernel que estás instalando. Luego debe hacer un enlace simbólico desde este directorio al directorio «default».

Cada vez que compiles un nuevo núcleo, el comando » make modules_install » creará un nuevo directorio, pero no cambiará el enlace «default».

Cuando obtenga un módulo no relacionado con la distribución del núcleo debería colocarlo en uno de los directorios independientes de la versión bajo /lib/modules.

Esta es la estrategia por defecto, que puede ser anulada en /etc/modules.conf.

Ejemplos

modprobe -t net

Cargue uno de los módulos que están almacenados en el directorio llamado «net». Cada módulo se prueba hasta que uno tiene éxito.

modprobe -a -t boot

Se cargarán todos los módulos que estén almacenados en directorios etiquetados como «boot».

modprobe slip

Esto intentará cargar el módulo slhc.o si no se ha cargado previamente, ya que el módulo de deslizamiento necesita la funcionalidad en el módulo slhc. Esta dependencia se describirá en el archivo modules.dep que fue creado automáticamente por depmod .

modprobe -r slip

Esto descargará el módulo de deslizamiento. También descargará el módulo slhc automáticamente, a menos que sea usado por algún otro módulo también (por ejemplo, ppp).

Véase también:

depmod(8), lsmod (8), kerneld (8), ksyms (8), rmmod (8).

Modo a prueba de fallos

Si el uid efectivo no es igual al uid real, entonces modprobe trata su entrada con extrema sospecha. El último parámetro siempre se trata como un nombre de módulo, incluso si comienza con ‘-‘. Sólo puede haber un nombre de módulo y las opciones de la forma «variable=valor» están prohibidas. El nombre del módulo siempre se trata como una cadena, no se realiza ninguna metaexpansión en modo seguro. Sin embargo, la metaexpansión se sigue aplicando a los datos leídos del fichero de configuración.

euid puede no ser igual a uid cuando se invoca modprobe desde el kernel, esto es cierto para los kernels>= 2.4.0-test11. En un mundo ideal, modprobe podría confiar en que el kernel sólo pasaría parámetros válidos a modprobe. Sin embargo, se ha producido al menos una vulnerabilidad de raíz local porque el código del núcleo de alto nivel ha pasado parámetros no verificados directamente del usuario a modprobe. Así que modprobe ya no confía en la entrada del kernel.

modprobe establece automáticamente el modo seguro cuando el entorno está formado sólo por estas cadenas

 INICIO=/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>. TERM=linux
PATH=/sbin:/usr/sbin:/bin:/usr/bin

Esto detecta la ejecución de modprobe desde el núcleo en los núcleos 2.2 a 2.4.0-test11, incluso si uid == euid, lo que hace en los núcleos anteriores.

Comandos de registro

Si el directorio /var/log/ksymoops existe y modprobe se ejecuta con una opción que podría cargar o eliminar un módulo, modprobe registrará su comando y devolverá su estado en /var/log/ksymoops/`date +%Y%m%d.log`. No hay ningún parámetro para desactivar este registro automático, si no quiere que ocurra, no cree /var/log/ksymoops. Si ese directorio existe, debería ser propiedad de root y estar en modo 644 o 600 y debería ejecutar el script insmod_ksymoops_clean todos los días aproximadamente.

Utilidades necesarias

depmod (8), insmod (8).

Utilice el comando man ( % man) para ver cómo se utiliza un comando en su equipo particular.

TAMBIÉN TE INTERESA

nuevo mac studio

El nuevo Mac Studio es inalcanzable para cualquier PC de escritorio

Apple ha presentado su equipo de sobremesa más potente hasta la fecha: el nuevo Mac Studio, impulsado por los chips M4 Max y el nuevo M3 Ultra, una auténtica bestia orientada a profesionales de la inteligencia artificial, el diseño, la ingeniería o el desarrollo de software que buscan rendimiento extremo en un formato compacto. Vale,

camara seguridad doble lente de Beans View

Beans View tiene una cámara de seguridad de doble lente a un precio imbatible en Amazon

La seguridad inteligente del hogar da un nuevo paso con la Beans View 220 Dual 3K, la última incorporación al catálogo de la marca especializada en cámaras Wi-Fi. Este nuevo modelo, diseñado para ofrecer una vigilancia integral y precisa en espacios interiores, combina tecnología de doble lente, inteligencia artificial, visión nocturna a color y seguimiento

industria del videojuego

La industria del videojuego ya se mueve por un público muy distinto al de hace años

Durante años, el imaginario colectivo ha situado al jugador de videojuegos en el rincón oscuro de una habitación, joven, solitario, inmóvil frente a una pantalla. Esa imagen está cada vez más lejos de la realidad para la industria del videojuego. La V Radiografía del Gaming en España, elaborada por el ecommerce tecnológico PcComponentes, desmonta con

nuevos powerbanks Ewent

5 powerbanks de Ewent para cada necesidad: seguro que hay uno para ti

Las powerbanks o también llamadas baterías portátiles se han convertido en un aliado para muchas personas que hacen un uso intensivo de sus dispositivos electrónicos. Para los smartphones, estos componentes son ya una extensión de los mismos para muchas personas, sin embargo no solo existen este tipo de gadgets para teléfonos, sino que hay otros

contraseñas

¿Y si los métodos de seguridad en el futuro fueran sin contraseñas?

A pesar de los constantes avances en tecnología y ciberseguridad, los métodos de seguridad más tradicionales, es decir, las contraseñas, siguen siendo la opción predilecta por la mayoría para proteger su información o para acceder a las plataformas. No obstante, las contraseñas son actualmente uno de los grandes eslabones débiles en la protección de identidades