Resulta que el problema fue causado por la eliminación de wpa_supplicant
. Wikipedia puede ofrecer un poco de información sobre lo que significa:
Además de ser un suplicante WPA2 con todas las funciones, también implementa WPA y protocolos de seguridad de LAN inalámbrica más antiguos.
Además, es responsable del trabajo de
revisar una lista de redes actualmente visibles, seleccionar una de ellas, proporcionar cualquier información de seguridad adicional necesaria para autenticarse con la red (por ejemplo, una frase de contraseña o nombre de usuario y contraseña) y añadirla a la lista de preferencias para permitir la reconexión automática en el futuro.
Como se dice: la curiosidad mató al gato -- y borrar wpa_supplicant
hace que sea bastante imposible utilizar el WiFi.
Hay tres archivos correspondientes en Android:
/system/bin/wpa_supplicant
es un binario (es decir, el propio programa)
/system/etc/wifi/wpa_supplicant.conf
es la configuración por defecto (como sugiere correctamente la ruta de acceso, en la sección de sólo lectura /system
), que también incluye ajustes específicos del dispositivo, además de cierta "documentación en línea" en forma de comentarios
/data/misc/wifi/wpa_supplicant.conf
se encuentra en la parte escribible. Repite algunos de los contenidos del archivo del sistema (probablemente copiados desde allí en la inicialización -- como /data
se borra por completo en un reinicio de fábrica, esas cosas deben venir de alguna parte), pero se salta los comentarios. Además, este archivo memoriza las redes a las que te has conectado, incluyendo el SSID, la encriptación utilizada y las contraseñas, todo en texto plano [¡sic!] -- de ahí sacan la información esas aplicaciones de "recuperación de contraseñas WiFi".
Por lo tanto, si se borrara esta última configuración, simplemente se volvería a crear después de un arranque. Por supuesto, todas las redes guardadas se perderían - pero eso es un problema menor comparado con los otros:
Si el archivo system-config se pierde, el binario no sabe dónde buscar la interfaz, ya que está configurada aquí (por ejemplo ctrl_interface=tiwlan0
). Esto también explicaría la falta de dirección MAC: sin dispositivo conocido, sin dirección MAC conocida. Aún así, la recuperación de eso no debería ser demasiado difícil: no hay demasiados nombres de interfaz diferentes, y otros ajustes (como el chipset utilizado) se pueden tomar de las especificaciones -- así que Root siempre (que es el caso, o no podría haberlo borrado), podría volver a crear un archivo coincidente con un poco de try-and-err.
Si el binario fue eliminado, las opciones son estrechas sin una copia de seguridad. Teniendo un dispositivo similar disponible que ejecute la misma ROM, podrías extraer el binario desde allí (la configuración también, por supuesto). Si tienes al menos una imagen disponible para tu ROM actual, podrías extraerla de ahí también.
Si todo lo anterior falla: Sí, flashear una ROM también resolvería el problema -- ya que esta ROM debería contener los archivos necesarios. Es bastante improbable que hayas dañado tu hardware de esa manera.