El problema que describes ocurre porque el controlador rtw89
(común para tarjetas WiFi como las de Realtek) no está incluido oficialmente en el kernel de Linux o porque el módulo no se reconstruye correctamente después de una actualización del kernel. Aquí te explico cómo automatizar la reinstalación del controlador después de cada actualización del kernel.
Solución 1: Usar DKMS (Dynamic Kernel Module Support)
DKMS permite recompilar automáticamente módulos del kernel cuando este se actualiza. Si el controlador rtw89
no está incluido en el repositorio de tu distribución, puedes configurarlo manualmente con DKMS.
Pasos para configurar DKMS:
-
Instala DKMS (si no lo tienes):
sudo apt update
sudo apt install dkms
-
Descarga el código fuente del controlador rtw89
:
-
Crea un archivo dkms.conf
(si no existe):
-
Registra el módulo en DKMS:
sudo dkms add .
sudo dkms install rtw89/1.0.0 # Ajusta la versión según dkms.conf
-
Verifica que esté correctamente instalado:
sudo dkms status
Deberías ver algo como:
rtw89, 1.0.0, <kernel-version>, <arch>: installed
-
Actualiza el initramfs (por si acaso):
sudo update-initramfs -u
Ahora, cada vez que se actualice el kernel, DKMS recompilará automáticamente el controlador.
Solución 2: Crear un script en /etc/kernel/postinst.d/
Si DKMS no funciona o prefieres una solución más manual, puedes crear un script que se ejecute después de cada actualización del kernel.
-
Crea un script en /etc/kernel/postinst.d/
:
sudo nano /etc/kernel/postinst.d/rtw89-setup
Contenido del script:
#!/bin/bash
cd /ruta/a/rtw89 # Cambia esto a la ruta donde está el código del controlador
make clean
make
sudo make install
sudo modprobe rtw89pci
-
Hazlo ejecutable:
sudo chmod +x /etc/kernel/postinst.d/rtw89-setup
Solución 3: Usar un paquete .deb personalizado
Si el controlador está disponible como .deb
(por ejemplo, desde un PPA o un repositorio externo), puedes instalarlo y configurar apt
para que lo mantenga actualizado:
sudo apt install ./rtw89.deb # Reemplaza con el nombre del paquete
sudo apt-mark hold rtw89 # Opcional: evita que se actualice sin tu consentimiento
Notas importantes:
Con DKMS deberías resolver el problema de forma permanente. Si necesitas ayuda adicional, dime tu distribución y versión del kernel (uname -a
) para ajustar mejor la solución.