Deshabilitar módulos del kernel en Linux

En este tip aprendemos a deshabilitar módulos del kernel en nuestros sistemas GNU/Linux. Mediante las herramientas standard que ya vienen en nuestras distribuciones favoritas.

Deshabilitar módulos del kernel en GNU/Linux

Que en máquinas virtuales tengamos algunos módulos fuera de lugar es algo habitual, como por ejemplo el módulo de la disquetera, llamado «floppy«. Además, estos módulos innecesarios nos ralentizan el arranque tras un reinicio.

Para solventarlo y deshabilitar módulos del kernel de manera permanente, podemos añadir dichos módulos en una lista negra o «blacklist« , de esta forma no se cargarán durante el arranque del sistema.

En cualquier caso nos debemos asegurar que dicho módulo no se encuentre en /etc/modprobe.conf, /etc/modprobe.d/, /etc/rc.modules o /etc/sysconfig/modules/.

Debemos crear el fichero (si no existe ya) /etc/modprobe.d/local-blacklist.conf, y añadir en nuestro caso, el módulo del disquete.

  1. # vi /etc/modprobe.d/local-blacklist.conf
  2. blacklist floppy

Aún así esto no evitará que se cargue un módulo del kernel si se trata de una dependencia obligatoria y opcional de otro módulo. Algunos módulos del kernel intentarán cargar otros módulos que necesiten.

Esto lo podemos evitar, editando el mismo fichero, con la siguiente configuración:

  1. # vi /etc/modprobe.d/local-blacklist.conf
  2. install floppy /bin/false

La línea de instalación anterior simplemente hace que /bin/false se ejecute en lugar de instalar un módulo.

Una vez hecho esto ya podemos reiniciar el host:

  1. # reboot

Si el módulo del kernel es parte de initramfs (configuración de arranque), el initramfs debe ser regenerado. Debemos iniciar el kernel afectado y ejecutar el siguiente comando para regenerar el kernel initramfs afectado:

  1. # dracut -f

Deshabilitar un módulo de manera temporal

Si nos interesa deshabilitar un módulo de manera tempora, solo hemos de utilizar «modprobe« junto con el parámetro “-r”:

  1. # modprobe -r floppy

Para volver a habilitarlo:

  1. # modprobe floppy

Para ver la lista de módulos habilitados:

  1. # lsmod

Y por último, para listar los módulos dentro de la “blacklist”:

  1. modprobe --showconfig | grep blacklist

Con el resultado:

  1. (...)
  2. blacklist floppy

Esto es todo, espero que esta entrada os sea de utilidad en algún momento. Nos vamos leyendo.