¿Cómo obtener una lista de controladores activos que están integrados estáticamente en el kernel de Linux?

28

Si bien puedo usar lsmodpara mostrar los módulos del kernel actualmente activos, ¿cómo puedo ver qué controladores están estáticamente integrados en el kernel Y actualmente activos?

JohnnyFromBF
fuente

Respuestas:

28

Podrías hacer un cat /lib/modules/$(uname -r)/modules.builtin

De la Documentación del Kernel

módulos construidos

Este archivo enumera todos los módulos que están integrados en el núcleo. Modprobe lo utiliza para no fallar al intentar cargar algo incorporado.

sager89
fuente
modules.builtin no existe en mi sistema con uname: Linux ecp 4.4.127-1.el6.elrepo.i686 # 1 SMP dom 8 de abril 09:44:43 EDT 2018 i686 i686 i386 GNU / Linux. ¿Hay otra forma de encontrar qué controladores están integrados?
Danny
@Danny Asegúrate de usar uname -ry no el más comúnuname -a
Nairou
7

Si su Linux tiene un /proc/config.gz

Eso tiene todos los módulos construidos. Cópielo en otro lugar y descomprímalo. Abra el archivo todo con un "= M" se construye como un módulo. Todo con una "= Y" está estáticamente construido.

hwinfo enumerará el "Controlador:" verifique el archivo anterior para ver si está construido estáticamente.

FYI: todos los controladores creados estáticamente siempre se cargan en la memoria y están listos para la acción. Sin el hardware correspondiente no harán nada, sino que usarán memoria.

cybernard
fuente
1
¿Qué pasa si no hay /proc/config.gz?
JohnnyFromBF 05 de
Ok, acabo de encontrar un archivo .config en el directorio donde compilé el núcleo, eso es obviamente lo que querías decir.
JohnnyFromBF 05 de
1
También existe este archivo aquí: /boot/config-$(uname -r).
JohnnyFromBF 05 de
1
ls /sys/module

parece contener todos los módulos integrados y externos.

Pero también parece contener algunas entradas que en realidad no son módulos: /unix/225706/are-modules-listed-under-sys-module-all-the-loaded-modules

TODO: lee la fuente y comprende con mayor precisión lo que se pone allí.

La ventaja de este método es que no confía en poder encontrar la configuración del kernel en /booto /proc/config.gz.

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
fuente