viernes, 19 de junio de 2015

Tropezando - Parte 19 - Reiniciando un módulo WiFi rebelde

Tengo un bonito netbook que funciona estupendamente con Linux y se arrastra de mala manera con Windows. Todo sería estupendo, si no fuera porque el WiFi, de tanto en tanto, se niega a conectar después de haber suspendido el ordenador. No he sido capaz de encontrar la causa ni de reproducir el fallo a voluntad (falla una de cada 20 veces, más o menos; a veces a la primera suspensión ya no va, y otras veces me paso dos meses suspendiendo a diario y sigue funcionando), y además sólo me pasa en este ordenador. Cuando esto ocurre, la única solución es reiniciar el sistema completo. He encontrado una solución más llevadera: reiniciar únicamente el módulo WiFi. Tiene otra ventaja, y es que puede ser útil para otros problemas por el estilo.

Lo primero que debemos hacer es abrir el archivo /proc/modules con nuestro editor de texto favorito y buscar la cadena "wifi". Yo lo he hecho con Gedit (como usuario normal, sin permisos de escritura), pero podéis usar el método que más os guste. Ahí aparece el nombre que le da el sistema a nuestro módulo WiFi.
En mi caso, dicho nombre es "rtl8192ce".

Con este dato ya sólo nos queda abrir una bonita terminal y escribir lo siguiente:
sudo rmmod rtl8192ce
sudo modprobe rtl8192ce
Con estas dos simples líneas habremos reiniciado completamente el módulo WiFi, que ya debería estar listo para funcionar de nuevo.

Para no tener que repetir todo esto, lo ideal es crear un pequeño script que podamos ejecutar con un click cuando nos haga falta:
- Creamos un archivo de texto plano (con Getin, Leafpad, Nano o el editor que más rabia nos dé).
- Escribimos lo siguiente en él:
#!/bin/bash
# -*- ENCODING: UTF-8 -*-
gksudo rmmod rtl8192ce
gksudo modprobe rtl8192ce
exit
Por supuesto, cambiamos "rtl8192ce" por el nombre de nuestro módulo WiFi. Dependiendo de la distribución que uséis, es posible que haya que cambiar la orden gksudo por gsudo o kdesudo.
- Guardamos y le damos permisos de ejecución.
- Al ejecutarlo nos pedirá dos veces nuestra clave de usuario en un bonito cuadro.

En fin, esto es todo por hoy. Sé que he tenido el blog abandonado mucho tiempo; he estado liado. Estar en paro no me sienta bien... ó_ò
Pero no hay de qué preocuparse: tengo muuuuchos temas en la recámara. Instalar USD y Spotify, arreglar problemas con los DNS (solución para los puñeteros routers Livebox de Naranje, entre otros), usar la papelera en particiones NTFS y FAT32, añadir discos duros con automontaje y muchas cosas más. ¡Hasta la próxima!

P.D.: Como siempre, los comentarios están abiertos y se admiten insultos. =:P

7 comentarios:

  1. Por sencilla y curiosa que parezca la ñapa, está sólo al alcance de Usuarios avanzados, explícale este a un "güindouser" que se quiere pasar al lado "linoxcuro" y te dirá ''oigausté - a-mi-me-ponga-un-partxe" :P

    PD.: Membrillo, quedas oficialmente insultado xD

    ResponderEliminar
    Respuestas
    1. Esto resuelve (de mala manera) un error poco frecuente que sólo se da en ciertos módulos WiFi (ya sabes cómo está el tema de drivers en Linux) y en circunstancias muy específicas (siempre suspender el ordenador en lugar de apagarlo). No es algo que un usuario del montón necesite, pero tampoco requiere grandes conocimientos. Más difícil sería sacar por ingeniería inversa todas las llamadas de un módulo WiFi, analizar el código del driver libre, localizar el bug y repararlo, ¿no crees?
      Además, este blog va precisamente de esto: qué problemas voy encontrando y cómo consigo resolverlos. Es mi blog y me lo f***o como quiero. =;P

      P.D.: Membrillo no es un insulto. Miembrillo... quizá.

      Eliminar
    2. Entonces a lo que vamos ¿no es cierto que ReactOS es una distro de linux como cualquier otra y tiene implementados los drivers de güindous? ¿no se podrían adaptar de igual forma a LXLE, por ejemplo?

      Acepto maltratos si he dicho una barbaridad UU´

      P.D. Miembrillo XD

      Eliminar
    3. Es una barbaridad, pero no me va el sado. =;D
      ReactOS no tiene nada que ver con Linux, ni con Unix ni con nada de eso. Es una "copia" de Windows tal cual, con diferente código pero idéntico funcionamiento a todos los niveles: kernel, drivers, llamadas del sistema, etc... De hecho el kernel es compatible con el de Windows NT.
      Lo único en lo que se parece a Linux es en que es de código abierto. ReactOS es a Windows lo que Linux es a Unix... no sé si me explico.

      P.D.: Miembrillo: Dícese de aquel individuo que tiene el "miembro" muy chiquitín. =:P

      Eliminar
  2. Ah, bueno, windows ... linux ... lo importante es que ReactOS es Software Libre y puedes usar los drivers de marras, y sí, te has explicao como un libro abierto ^^

    P.D. Te lo dice un "miembrote" XD

    ResponderEliminar
    Respuestas
    1. Lo importante es que funcione... y me temo que ReactOS no funciona. Muchos de los drivers (la mayoría) dan error al instalar, los cuelgues y los BSOD son normales, muchos programas no funcionan o hay que trucarlos, tiene graves fallos de seguridad y el soporte es casi inexistente. Salvo para cosas muy concretas, cualquier Linux con Wine resulta más funcional.
      Quién sabe, igual el proyecto se vuelve más popular y recibe más fondos ahora que el gobierno ruso lo ha "apadrinado" y en diez años termina siendo un producto usable, pero hoy día es poco más que un experimento con el que juguetear.

      Eliminar
    2. P.D.: Te lo dice un trípode humano. =8P

      Eliminar