DEV Community

CrisRLoera
CrisRLoera

Posted on

Problemas con Wi-Fi en Arch Linux

Uno de los problemas que me he encontrado al ser nuevo en los sistemas operativos GNU/Linux es que generalmente tengo problemas con la conexión wi-fi en mis distros, antes tuve un problema similar con Ubuntu, ahora con Arch encontré una manera de mejorar esta situación, gracias a la documentación de Arch.

https://wiki.archlinux.org/title/Network_configuration

En el articulo de Network_configuration de Arch nos dice que se cubren las primeras 3 capas del modelo OSI, que si no lo conocer te dejo un link a la wiki para que te entres un poco mas de ello, no es necesario saberlo de pe a pa para arreglar el problema de nuestro wi-fi pero nos ayudara a delimitar las áreas en las que debemos trabajar, en este caso los tres niveles que nos interesan son la física, enlace de datos y red.

El primer paso que menciona la wiki es comprobar nuestra conexión

1.- Comprobamos el estatus de nuestra red(network), podemos usar el siguiente comando:

ip link
Enter fullscreen mode Exit fullscreen mode

En caso de que no lo tengas tendrías que buscar las dependencias para descargarlo con pacman

Nos daríamos cuenta tanto si nuestra red wireless dice wlan0 que es la red por defecto que esta no esta activada, si por otro lado dice wlp2s0 o en mi caso wlp3s0, si el state es DOWN usamos el comando

ip link set interface up
Enter fullscreen mode Exit fullscreen mode

En donde interface es el wl que tenemos en mi caso es

ip link set wlp3s0 up
Enter fullscreen mode Exit fullscreen mode

Usualmente vas a tener que usar sudo si no te permite la acción, en caso de que arroje algún error o no, no vas a tener que liderar te las tu solo, ya que este error me sucedió,en caso de que quieras leer mas aquí te dejo un link a la wiki. interface err en el apartado 1 Device driver.

Si en este caso ocurrió un error con los drivers(como fue mi caso) puede llegar a ser algo complicado, primero que nada tendríamos que ver si contamos con los drivers para nuestro adaptador de red, en mi caso lo pude encontrar con otro de los comandos de la wiki

lspci -k
Enter fullscreen mode Exit fullscreen mode

Este comando nos nuestra los drivers del sistema en este caso los del kernel o núcleo de nuestro SO(sistema operativo). Tendrás que buscar algo parecido a esto.

Network controller: Realtek Semiconductor Co., PCIe Wireless Network Adapter
        Subsystem: Hewlett-Packard Company PCIe Wireless Network Adapter
        Kernel driver in use: rtw_8821ce
        Kernel modules: rtw88_8821ce
Enter fullscreen mode Exit fullscreen mode

Como puedes ver mi controlador de red es de la marca Realtek y usa los drivers del kernel rtw_8821ce, me sucedió que al usar los siguientes comandos

dmesg | grep firmware
dmesg | grep rtw88_8821ce
Enter fullscreen mode Exit fullscreen mode

me encontraba con mensajes de error, uno de ellos

rtw_8821ce 0000:03:00.0: failed to get tx report from firmware
Enter fullscreen mode Exit fullscreen mode

En este caso decidí buscar estos drivers y me encontré con que la arquitectura que mejor soporta a los chip sets de esta es el kernel linux zen, lo baje y cambie en mi GRUB para iniciar mi sistema con este kernel, si tienes un driver similar puedes encontrarlo en el siguiente link en otro caso en el link de interface err puedes encontrar en el apartado 1.2 Installing driver/firmware las listas de drivers

En caso de que quieras cambiar el kernel los pasos a seguir son
a.- Instalar el kernel de tu elección usando alguno de los siguientes comandos dependiendo del kernel que quieras

sudo pacman -S linux-zen
sudo pacman -S linux-hardened
sudo pacman -S linux
sudo pacman -S linux-lts
Enter fullscreen mode Exit fullscreen mode

b.- Agregar el kernel a GRUB, puedes ver la configuración del GRUB con el siguiente comando.

sudo nano /etc/default/grub
Enter fullscreen mode Exit fullscreen mode

Lee un poco el GRUB ya que te ayudara a orientarte, deberás habilitar las siguientes opciones

GRUB_DISABLE_SUBMENU=y
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
Enter fullscreen mode Exit fullscreen mode

GRUB_SAVEDEFAULT puede que se encuentre en false cámbialo a true mientras que GRUB_DISABLE_SUBMENU y GRUB_DEFAULT puede que estén comentadas con #, des-comenta las y guarda el archivo.A continuación vas a tener que generar el archivo de GRUB con el siguiente comando, si instalaste Arch a pie ya te debe de ser conocido, al igual que puedes saber que jugar con el puede llegar a arruinar nuestro sistema si no lo usamos propiamente, tomate tu tiempo, pero si hiciste los pasos hasta ahora no deberías tener muchos problemas

sudo grub-mkconfig -o /boot/grub/grub.cfg
Enter fullscreen mode Exit fullscreen mode

usa el comando reboot para reiniciar tu maquina

Nota: algunas configuraciones podrían no funcionar, al igual que dependencias si no hacemos un reboot después de hacerlas por lo que no es de extrañar que si lo hacemos el sistema funcione mejor o diferente, incluso algunos comandos nos van a dar salidas diferentes y problemas nuevo o solucionar problemas como en este caso ahora si usamos lspci -k ya no debería aparecer el problema

Ahora bien puede que aun llegues a tener problemas relacionados con lo siguiente:

[8.770877] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
Enter fullscreen mode Exit fullscreen mode

Este error se debe a que nuestra región no esta configurada para eso usamos la herramienta iw, que puedes dercargar con la siguiente linea:

sudo pacman -S iw
Enter fullscreen mode Exit fullscreen mode

Una vez que la tengas, junto con la dependencia crda

sudo pacman -S crda
Enter fullscreen mode Exit fullscreen mode

Usa el siguiente comando:

iw reg get
Enter fullscreen mode Exit fullscreen mode

Si te aparece que la región es 00 entonces no se encuentra configurada, por lo tanto vas a tener que buscar en el archivo wirelees-regdom, modificar lo des-comentando la línea que tiene la región a la que perteneces:

sudo nano /etc/conf.d/wireless-regdom 
Enter fullscreen mode Exit fullscreen mode

De esta manera habrás resuelto algunas de las problemáticas, que al menos en mi caso tuve que enfrentar, si tu tuviste problemas diferentes puedes escribirme o comentar cuales fueron y como lo solucionaste, sigue me para mas entradas a este blog y nos vemos a la siguiente.

Otro link que puede ayudar

Top comments (0)