GNU/Linux >> Tutoriales Linux >  >> Cent OS

Atheros Wireless en Alma, CentOS y Rocky Linux

No hace mucho tiempo, probé AlmaLinux por segunda vez, esta vez para una revisión más detallada de la distribución en mi nueva máquina IdeaPad 3. Las cosas fueron razonablemente bien, excepto por un gran problema evidente. No tenía conectividad inalámbrica, justo después de la instalación. Esto es importante, porque realmente no se puede usar un sistema moderno sin (alguna) red, especialmente al principio.

Pronto, pasé un par de horas tratando de arreglar esto. El problema resultó ser bastante peculiar. Supuestamente, tenía todos los controladores correctos y demás, pero el sistema realmente no podía utilizar el hardware. Una combinación de dos factores contribuyó al problema, que resolveremos en este tutorial. Sígueme.

Problema con más detalle

Entonces, el problema que ocurre es el siguiente. El subprograma del sistema dice Inalámbrico no conectado. Cuando intentas conectarte, te dice que enciendas el Wi-Fi. Cuando ingresa al menú Sistema, le dice que no se puede encontrar ningún adaptador. Sin embargo, en la línea de comando, puede ver los módulos Atheros cargados en la memoria (ath10k). Esto significa que hay algo mal con el inicio de la tarjeta inalámbrica, aunque, supuestamente, la funcionalidad está ahí.

lsmod |grep ath
ath10k_pci 49152 0
ath10k_core 471040 1 ath10k_pci
ath 36864 1 ath10k_core
mac80211 929792 1 ath10k_core
cfg80211 835584 3 ath10k,macath10>

Solución 1:módulo de control de radio específico para computadora portátil en la lista negra

La manifestación del problema indica que algo está bloqueando y/o impidiendo que el dispositivo inalámbrico se inicie correctamente. Si ingresa a la Web, encontrará un millón de razones e informes de errores para esto, específicos de las tarjetas Atheros, pero no solo. Sin embargo, el problema aún se reduce a dos posibilidades:antenas de radio deshabilitadas en su computadora portátil (a través de un interruptor de hardware o software) o firmware incompatible.

En mi IdeaPad 3 (y en muchas otras laptops Lenovo, especialmente en la familia IdeaPad), en Linux, el control de la radio, las teclas de acceso rápido, los ventiladores y la retroiluminación se rige por el módulo kernel de la ideapad. Se hace referencia como ideapad o ideapad-laptop o similar. Es posible que este módulo esté configurado de manera que entre en conflicto con la funcionalidad del dispositivo inalámbrico, es decir, la antena inalámbrica está apagada de forma predeterminada.

Lo primero que debe intentar es ejecutar el comando rfkill para intentar desbloquear esto:

sudo rkfill desbloquear wifi

Si esto no funciona, puede incluir en la lista negra el módulo de ideapad; esto evitará que se cargue al iniciar el sistema y, con suerte, permitirá la correcta inicialización del dispositivo inalámbrico. Esto se hace creando un archivo de texto en:

/etc/modprobe.conf/

Asigne un nombre al archivo como:

ideapad.conf

Dentro de este archivo, agregue la siguiente línea:

bloc de ideas de la lista negra

Si tiene otros modelos de portátiles, consulte las especificaciones de su proveedor para conocer el nombre del módulo.

Reinicie su máquina e, idealmente, su problema se solucionará.

Solución 2:diferente firmware para su tarjeta inalámbrica

Es posible que el firmware que obtenga con la imagen de la distribución no sea lo suficientemente moderno para su tarjeta inalámbrica en particular. En ese caso, puede reemplazar manualmente las imágenes de firmware y recargar los módulos del kernel, lo que debería brindarle la funcionalidad adecuada.

El firmware para las tarjetas Atheros está disponible en la página GitHub de Kalle Valo. Que yo sepa, Kalle es un ingeniero de Atheros y mantiene el repositorio con el firmware oficial para una variedad de dispositivos. Primero, debe verificar qué dispositivo tiene. Puede hacerlo con el comando lscpi -v:

...
02:00.0 Controlador de red:Adaptador de red inalámbrico Qualcomm Atheros QCA6174 802.11ac (rev. 32)
Subsistema:Dispositivo Lenovo 0827
Indicadores:maestro de bus, desarrollo rápido, latencia 0, IRQ 64, IOMMU grupo 8
Memoria en d0200000 (64 bits, no precargable) [tamaño=2M]
Capacidades:[40] Power Management versión 3
Capacidades:[50] MSI:Enable+ Count=1/8 Maskable+ 64bit-
Capacidades:[70] Express Endpoint, MSI 00
Capacidades:[100] Informe de error avanzado
Capacidades:[148] Canal virtual
Capacidades:[168] Número de serie del dispositivo 00-00-00-00-00-00-00-00
Capacidades:[178] Informes de tolerancia de latencia
Capacidades:[180] Subestados L1 PM
Controlador kernel en uso:ath10k_pci
Módulos kernel:ath10k_pci
...

En mi computadora portátil, es QCA6174. En el repositorio de GitHub, puede recuperar los archivos necesarios. Hay cinco archivos en total, incluidos:

placa.bin
placa-2.bin
firmware-4.bin
firmware-6.bin
firmware-sdio-6.bin

El repositorio tiene varias revisiones de estas imágenes disponibles, por lo que es posible que deba realizar más de una descarga para obtener la imagen de firmware adecuada para su tarjeta. La forma más fácil es obtener un archivo zip de todo el repositorio, o clonarlo, y luego elegir selectivamente los archivos necesarios. Por supuesto, debe hacer esto en un sistema que TIENE conectividad de red y luego copiar los archivos a su computadora portátil afectada.

Los archivos tendrán diferentes nombres; deberá cambiarles el nombre al formato anterior, por ejemplo:

firmware-4.bin_WLAN.RM.2.0-00180-QCARMSWPZ-1 firmware-4.bin

El firmware se almacena en:

/lib/firmware/ath10k/QCA6174/hw3.0/

Copie los archivos desde dentro de este directorio en algún lugar seguro. Esta será la copia de seguridad de su firmware de distribución original, en caso de que necesite restaurarlo. Luego, reemplace los archivos existentes con las nuevas descargas del repositorio de GitHub.

Puede reemplazar los archivos uno por uno o de forma masiva. Para solucionar problemas, es mejor proceder uno por uno y ver si alguna revisión en particular ayuda. La forma más sencilla de lograr esto, sin reiniciar, es descargar primero los módulos ath10k existentes de la memoria, copiar los archivos y luego volver a cargar los módulos.

sudo modprobe -r ath10k_pci
sudo modprobe -r ath10k_core
sudo modprobe -r ath
sudo cp "archivo de firmware en el formato de nombre correcto" /lib/firmware/ath10k/QCA6174/hw3.0 /
sudo modprobe ath10k_pci
sudo modprobe ath10k_core
sudo modprobe ath

Si carga la imagen incorrecta para su dispositivo, verá el error "magia de placa no válida" en el registro del kernel. Puede verificar esto con el comando dmesg:

...
[ 269.339694] ath10k_pci 0000:02:00.0:versión de firmware WLAN.RM.4.4.1-00157-QCARMSWPZ-1 api 6 características wowlan,ignore-otp,mfp crc32 90eebefb
[ 269.404243 ] ath10k_pci 0000:02:00.0:se encontró una tarjeta mágica no válida
[ 269.411730] ath10k_pci 0000:02:00.0:board_file api 1 bmi_id N/A crc32 ed5f849a
[ 272.543623] ath10k_pci 0000:02:se agotó el tiempo de espera de la solicitud de versión
[ 272.543629] ath10k_pci 0000:02:00.0:no se pudo configurar htt:-110
[ 272.601433] ath10k_pci 0000:02:00.0:no se pudo iniciar el núcleo (-110)
[ 272.601505] ath10k_pci 0000:02:00.0:no se pudo sondear el fw (-110)
...

Si la lista negra del módulo no funciona, esto debería funcionar.

Conclusión

Siempre estoy consternado por los problemas de hardware en Linux, sobre todo porque aumentan mi percepción de la fragilidad de todo el ecosistema, y ​​también porque me recuerdan (mi) dolorosa dependencia de los sistemas propietarios, tanto como consecuencia de esto, y también como la realidad simple y cruel del espacio de escritorio. Pero claro, encontrar soluciones a problemas grandes y complejos siempre es divertido.

No encontré este problema con Ubuntu, Manjaro o Fedora, para el caso, en el IdeaPad 3. Supongo que el problema es exclusivo de la cosecha de servidores, principalmente porque en realidad no están destinados a ser utilizados como sistemas de escritorio. Sin embargo, si le apetece ejecutar una de las distribuciones de la comunidad RHEL8 en su máquina y tiene una tarjeta inalámbrica Atheros, aparte de todo lo relacionado con la ideología y los sistemas propietarios, esta guía debería ayudarlo a comenzar. Y hemos terminado.


Cent OS
  1. Cómo instalar y usar php Composer en Rocky Linux/Centos 8

  2. Cómo instalar y configurar docker en Rocky Linux/Centos 8

  3. Cómo instalar Go en Fedora y Rocky Linux/Centos/RHEL

  4. Cómo instalar el cliente FreeIPA en Rocky Linux/Alma Linux/CentOS 8

  5. Cómo crear un usuario Sudo en Rocky Linux y CentOS

Cómo instalar la colección de compiladores GCC en CentOS 8 y Rocky Linux 8

Cómo instalar Fish Shell en CentOS 8 y Rocky Linux 8

Cómo instalar Webmin en CentOS 8 y Rocky Linux 8

Cómo instalar y configurar Jenkins en Rocky Linux/Centos 8

Cómo instalar Rabbitmq en Rocky Linux/Alma Linux/Centos 8

Cómo configurar la replicación FreeIPA en Rocky Linux/Alma Linux/Centos 8