- ENTRADA 006 -
LiveCD: Configurando WIFI después de instalar
Por fin te dejas ver, Virginia Hall.
No me llaman "la peligrosa" por nada.
Cuando pruebas un LiveCD funciona todo más o menos, pero cuando decides instalarlo, te fallan muchas cosas: VGA con resolución penosa, wifi inexistente, touchpad rebelde...
En este artículo explico el caso más común para el WIFI, aunque cada máquina es un mundo y puede que éste método no te funcione.
Haré otro artículo para VGA, estad atentas.
Para empezar, deberás mirar si está cargado el módulo. En principio, udev chequea el hardware y monta los modulos correctos, pero a veces no se tienen los módulos adecuados.
$ lspci -k 06:00.0 Network controller: Intel Corporation WiFi Link 5100 Subsystem: Intel Corporation WiFi Link 5100 AGN Kernel driver in use: iwlwifi Kernel modules: iwlwifi
NOTA: Recomiendo analizar el hardware desde el LiveCD, ya que si funciona todo es porque ha reconocido el hard y puedes anotarla, te será útil cuando instales.
Para mostrar el dispositivo de red:
$ ip link 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: wlp20s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 40:16:7e:8a:a4:37 brd ff:bb:ff:dd:ff:ff
Puede que aparezcan varias lineas, pero la que te va a interesar es del tipo wlp20s0:
$ ip link set wlp20s0 up
Ahora puedes instalar NetworkManager y activarlo:
# systemctl enable NetworkManager.service # systemctl start NetworkManager.service
NOTA: Se puede usar un applet como nm-applet para la gestion gráfica en el escritorio.
Si este método no te gusta, puedes instalar wpa_supplicant y crear un archivo en /etc/wpa_supplicant/wpa_supplicant.conf con el siguiente contenido base:
ctrl_interface=/run/wpa_supplicant
update_config=1
Inicias wpa_supplicant y ejecutas wpa_cli para configurarla:
# wpa_supplicant -B -i wlp20s0 -c /etc/wpa_supplicant/wpa_supplicant.conf # wpa_cli
En el prompt tecleas lo siguiente (lo que va después del >):
> scan OK <3>CTRL-EVENT-SCAN-RESULTS > scan_results bssid / frequency / signal level / flags / ssid 00:00:00:00:00:00 2462 -49 [WPA2-PSK-CCMP][ESS] MYSSID 11:11:22:11:ff:11 2437 -64 [WPA2-PSK-CCMP][ESS] ANOTHERSSID
Ya tienes info de las redes que ha detectado, ahora asocias el SSID de tu red, o la del vecino si le estás robando la señal ;), pero antes hay que ver en qué socket puedes hacerlo (0 en este caso).
> add_network 0 > set_network 0 ssid "MYSSID" OK > set_network 0 psk "passphrase" OK > enable_network 0 <2>CTRL-EVENT-CONNECTED - Connection to 00:00:00:00:00:00 completed (reauth) [id=0 id_str=]
Si todo ha ido bien, ya puedes guardar y salir:
> save_config OK > quit
Ahora cuando inicies sistema, se levantará WIFI
NOTA: Este método es redundante si has usado el primer método y puede crear inconsistencias, así que elige uno u otro método.
DRIVERS REBELDES
Si no dispones de un módulo en tu distro, tendrás que buscar por la red para localizar el módulo/controlador de tu chipset. Los más comunes son del estilo r8139too para chipset Realtek o sis900 para chipset SiS
Una vez encontrado, cargarlo:
# modprobe nombre_del_módulo
Si no se carga de manera automática al iniciar el sistema, habrá que meterlo en los módulos adicionales del kernel, en este ejemplo el módulo se llama r8139too:
# cat > /etc/modules-load.d/r8139too.conf << “EOF” # Carga r8139too.ko al arranque r8139too EOF
NOTA: Diferencia el primer # que indica que el comando se ejecuta como root, del segundo, que indica "comentario" dentro del archivo.
El comando lspci -k te dirá los módulos cargados y verificarás si lo tienes ya en el sistema.
BONUS TRACK
Los chipset Broadcom tipo BCM57780 a veces no se comporta bien, a menos que se especifique el orden en que los módulos se deben cargar. El orden de carga es broadcom y tg3 (el antiguo necesita ser cargado primero). Los siguientes pasos deben ayudar si el equipo tiene este chipset:
$ lspci | wifi 02:00.0 WIFI controller: Broadcom Corporation BCM57780 Gigabit PCIe (rev 01)
Invierte el orden:
# modprobe -r tg3 # modprobe broadcom # modprobe tg3
Puedes dejarlo permanente añadiendo broadcom y tg3 (en este orden) en la matriz MODULES del archivo /etc/mkinitcpio.conf:
MODULES=".. broadcom tg3 .."
A continuación reconstruye el initramfs:
# mkinitcpio -p linux
/blog/