
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.
 
 
Dejar una contestacion