Ubuntu 24.04 wifi no funciona tras actualizar:
Linux

Ubuntu 24.04 wifi no funciona tras actualizar: "iwlwifi failed to load firmware" solución

04 Jul, 2026 • 9 min de lectura

Si acabas de actualizar a Ubuntu 24.04 (o has hecho un apt upgrade que ha tocado el kernel) y de repente el wifi ha desaparecido, lo más probable es que al revisar los logs te encuentres con algo como esto:

iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-so-a0-gf-a0-89.ucode failed with error -2
iwlwifi 0000:00:14.3: iwlwifi: Failed to load firmware chunk!
iwlwifi 0000:00:14.3: Failed to start INIT ucode: -110

Es uno de los problemas más comunes tras un salto de versión de Ubuntu en portátiles con tarjetas Intel (la familia iwlwifi cubre casi todos los chips wifi de Intel de los últimos 10 años). La causa casi siempre es la misma: el kernel nuevo espera una versión de firmware que el paquete linux-firmware instalado todavía no trae, o al revés, el firmware es más nuevo que lo que el driver del kernel que tienes cargado sabe interpretar.

No es el único componente que puede fallar tras una actualización mayor de Ubuntu — si además de perder el wifi te falla el Bluetooth, es un problema relacionado pero distinto que cubrimos en Al iniciar Ubuntu 24 el servicio Bluetooth no funciona.

Paso 1: confirmar que es un problema de firmware

Antes de tocar nada, confirma el diagnóstico con:

sudo dmesg | grep -i iwlwifi

Si ves líneas con firmware load for ... failed o Failed to start INIT ucode, vas por el camino correcto. También puedes comprobar si la interfaz wifi aparece siquiera:

ip link show
nmcli device status

Si tu interfaz (normalmente wlp2s0 o similar) ni aparece, o aparece como unavailable, el driver no ha podido inicializar la tarjeta por falta de firmware.

Paso 2: identificar tu modelo exacto de tarjeta

lspci -knn | grep -A3 -i network

Esto te da el nombre del chip (por ejemplo Intel Corporation Wi-Fi 6E AX211) y el driver en uso (iwlwifi). Apunta el modelo — te hará falta si tienes que bajar un firmware específico.

Paso 3: actualizar el paquete linux-firmware

En la mayoría de los casos, esto soluciona el problema directamente:

sudo apt update
sudo apt install --reinstall linux-firmware
sudo update-initramfs -u
sudo reboot

El --reinstall fuerza a que se vuelvan a copiar todos los blobs de firmware al initramfs, que es donde realmente se cargan en el arranque — a veces el paquete está bien instalado en disco pero el initramfs se generó antes de que se instalara, y por eso el kernel sigue viendo la versión vieja (o ninguna).

Paso 4: si sigue fallando, baja el firmware específico manualmente

Si tras reiniciar el error persiste, es señal de que el repositorio de Ubuntu todavía no tiene el firmware que tu kernel concreto necesita (pasa sobre todo en portátiles muy recientes con Intel AX211/BE200, o justo después de un salto de kernel LTS a HWE). La solución es coger el firmware directamente del repositorio oficial del kernel:

cd /tmp
git clone --depth 1 https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
sudo cp /tmp/linux-firmware/iwlwifi-so-a0-gf-a0-*.ucode /lib/firmware/
sudo update-initramfs -u
sudo reboot

Sustituye iwlwifi-so-a0-gf-a0-* por el nombre exacto que viste en el dmesg del paso 1 — cada familia de chip Intel tiene su propio prefijo (iwlwifi-cc-a0, iwlwifi-ty-a0, iwlwifi-so-a0-gf-a0, etc.), así que copiar solo “por si acaso” todos los .ucode del repo no hace daño, pero tarda más.

Paso 5: comprobar que no es un problema de Secure Boot / DKMS

Si tu portátil usa un driver wifi fuera del árbol del kernel (poco habitual con Intel, pero pasa con algunos Realtek/Broadcom que se instalan vía DKMS), Secure Boot puede bloquear la carga del módulo sin firmar. Comprueba:

mokutil --sb-state
dmesg | grep -i "module verification failed"

Si ves SecureBoot enabled junto con errores de verificación de módulo, tienes dos opciones: firmar el módulo tú mismo con MOK (más seguro) o desactivar Secure Boot desde la BIOS/UEFI (más rápido, pero reduce la protección del arranque). Para la mayoría de usuarios domésticos, desactivarlo temporalmente para descartar esta causa es razonable.

Cómo identificar el nombre exacto del firmware que necesitas

El nombre del fichero de firmware que aparece en tu dmesg no es aleatorio — sigue una convención que identifica la familia exacta de tu chip. Por ejemplo, en el error de ejemplo de este artículo, iwlwifi-so-a0-gf-a0-89.ucode se descompone así:

  • so-a0: la generación del chip (en este caso, “Snow Owl” rev A0, usada en varias generaciones de Intel AX2xx/BE2xx).
  • gf-a0: la variante de RF (radio frequency) integrada, también con su propia revisión.
  • 89: el número de versión del propio firmware — este es el número que va cambiando con cada actualización que publica Intel.

Cuando ejecutas el paso 4 y copias con el comodín iwlwifi-so-a0-gf-a0-*.ucode, estás cogiendo automáticamente la versión más reciente disponible en el repositorio para tu familia de chip exacta, sin tener que acertar el número de versión a mano.

Preguntas frecuentes

¿Por qué el wifi funcionaba en la versión anterior de Ubuntu y dejó de funcionar justo tras actualizar? Porque el salto de versión trae consigo un kernel más nuevo (especialmente notable en el salto a un kernel HWE), y ese kernel más nuevo puede esperar un firmware más reciente del que tenías instalado previamente. No es que tu hardware haya cambiado — es el software el que ha avanzado más rápido que el paquete de firmware empaquetado.

¿Puedo evitar que esto vuelva a pasar en la próxima actualización? No completamente, porque depende del ritmo con el que Intel publica firmware nuevo frente al ritmo de empaquetado de Canonical, pero sí puedes minimizar el impacto: antes de cualquier actualización mayor (do-release-upgrade), ejecuta sudo apt install --reinstall linux-firmware como paso preventivo, para asegurarte de que tienes la versión más reciente disponible en los repositorios antes del salto.

¿Es seguro copiar ficheros de firmware directamente desde el repositorio de git del kernel? Sí — git.kernel.org es el repositorio oficial mantenido por los propios desarrolladores del kernel Linux y por los fabricantes de hardware (incluido Intel) que contribuyen sus blobs de firmware ahí directamente. No es un repositorio de terceros ni una fuente no oficial.

¿Qué hago si tengo una tarjeta wifi que no es Intel (Realtek, Broadcom, MediaTek)? El diagnóstico inicial (revisar dmesg, comprobar si la interfaz aparece) es el mismo, pero el nombre del módulo y del paquete de firmware cambia — busca en dmesg el nombre del driver que aparece en vez de iwlwifi (por ejemplo rtw89 para Realtek, brcmfmac para Broadcom) y el mismo patrón de “actualizar firmware, o buscar la versión específica” suele aplicar igualmente, aunque el repositorio de origen del firmware varíe según el fabricante.

Verificación final

Una vez reiniciado, confirma que todo está en orden:

sudo dmesg | grep -i iwlwifi | tail -20
nmcli device wifi list

Si ves loaded firmware version sin errores debajo, y nmcli te lista las redes disponibles, ya está resuelto. Conéctate con:

nmcli device wifi connect "NombreDeTuRed" password "tu_contraseña"

Por qué pasa esto en cada actualización mayor de Ubuntu

Este tipo de desajuste entre kernel y firmware es especialmente frecuente en el salto de una LTS a otra (por ejemplo 22.04 → 24.04) porque el kernel HWE (Hardware Enablement) que trae la nueva versión es bastante más reciente que el firmware empaquetado en el momento del lanzamiento. Intel publica firmware nuevo para sus chips wifi con bastante más frecuencia de lo que Canonical empaqueta linux-firmware, así que este hueco es normal y no indica que tengas hardware defectuoso ni que hayas hecho nada mal.

Si te ha pasado una vez, probablemente te vuelva a pasar en el próximo salto de versión — vale la pena guardar este procedimiento (o directamente el comando del paso 3) a mano.

Si tras la misma actualización te encuentras además con que Ubuntu directamente no arranca o no aparece en el menú de GRUB (especialmente en equipos dual boot con Windows), ese es un problema distinto que cubrimos en Ubuntu no aparece en el menú de arranque tras instalar junto a Windows 11.