Retomando el tema de los drivers Wi-Fi. Compilaste el driver wifi para el kernel, OK. Funciona, OK. Te has preguntado que pasaría si actualizas el kernel???
Actualizando el kernel, deja de funcionar el driver o los drivers que hayas compilado, pero… Y si quisiera instalar el driver de alguna manera que, aún actualizando, se mantenga activo y funcionando.
Ahí es donde entra DKMS
Investigando un poco, casi todos los drivers actuales, vienen con DKMS, sólo hay que leerse las instrucciones y seguirlas al pie de la letra, para que todo funcione como se espera.
Antes de proseguir debemos instalar dkms:
apt install dkms
Tomando como ejemplo el post anterior seguimos adelante. Descargándonos el código fuente del controlador RTL8812AU:
# cd /home/koratsuki/Downloads/ # git clone https://github.com/gordboy/rtl8812au.git # mv rtl8812au-master /home/koratsuki/Temp/compile # cd /home/koratsuki/Temp/compile/rtl8812au-master # cat README.md
Debemos leer las instrucciones que hay en el archivo README.md. Y siguiendo esas líneas:
root@happyharry:/home/koratsuki/Temp/compile/rtl8812au-master# mkdir -p /usr/src/rtl8812au-5.2.20 root@happyharry:/home/koratsuki/Temp/compile/rtl8812au-master# cp * /usr/src/rtl8812au-5.2.20 root@happyharry:/home/koratsuki/Temp/compile/rtl8812au-master# dkms add -m rtl8812au -v 5.2.20 Creating symlink /var/lib/dkms/rtl8812au/5.2.20/source -> /usr/src/rtl8812au-5.2.20 DKMS: add completed. root@happyharry:/home/koratsuki/Temp/compile/rtl8812au-master# dkms build -m rtl8812au -v 5.2.20 Kernel preparation unnecessary for this kernel. Skipping... Building module: cleaning build area... 'make' -j4 KVER=4.15.0-29deepin-generic KSRC=/lib/modules/4.15.0-29deepin-generic/build.................. cleaning build area... DKMS: build completed. root@happyharry:/home/koratsuki/Temp/compile/rtl8812au-master# dkms install -m rtl8812au -v 5.2.20 8812au: Running module version sanity check. Good news! Module version v5.2.20.2_28373.20180619 for 8812au.ko exactly matches what is already found in kernel 4.15.0-29deepin-generic. DKMS will not replace this module. You may override by specifying --force. depmod..... DKMS: install completed.
Como podemos ver, DKMS crea una estructura con la cual, guardando el driver en /usr/src, compila el driver y prepara el sistema para que ante actualizaciones, sólo compile automaticamente el driver sin necesidad de intervencion por parte del usuario.
Nada difícil, como podemos ver… Y buscando en /lib/modules/4.15.0-29deepin-generic/kernel/drivers/net/wireless, vemos nuestro driver recién compilado.
Ahora con:
# modinfo 8812au
Podemos ver todas las propiedades del driver.
Hasta aquí el post. Espero les haya sido de ayuda.
Me complace anunciar la creación de esta útil herramienta (SquidStats), para el análisis y monitoreo…
La inteligencia artificial está revolucionando las industrias al automatizar tareas, predecir patrones y permitiendo tomar…
Uno de los grandes retos al que nos podemos enfrentar cuando una aplicación crece, es…
Percona Monitoring and Management (PMM) es una herramienta de código abierto para la supervisión y…
Qué es lo que deseo hacer en este capítulo? Básicamente un sonoff, quiero encender/apagar las…
Hace algunos meses estoy escuchando hablar del proyecto Home Assistant (HA). En palabras literales del…