lunes, 16 de abril de 2012

Usar drivers WIFI de Windows, mediante ndiswrapper

Copio lo que dice la Wikipedia sobre Ndiswrapper:
NDISwrapper es un encapsulador libre de controladores, que permite el uso de la mayoría de las tarjetas inalámbricas en sistema operativo Linux utilizando la APIs del kernel de Windows, enlazando de forma dinámica el controlador de Windows a esta implementación.
Este proyecto es de gran importancia ya que muchos fabricantes no distribuyen controladores para Linux en sus tarjetas inalámbricas. … ...La mayoría de la distribuciones Linux proveen NDISwrapper, tanto por defecto o a través de su sistema de gestión de paquetes, que es la opción más cómoda y recomendada para usuarios no iniciados.
Ndiswrapper es un proyecto de SourceForge.net. En su 'Wiki',
http://sourceforge.net/apps/mediawiki/ndiswrapper/index.php?mediawiki/index.php/List
tiene una amplia Database con las tarjetas WIFI (por PCI, por USB, por PCMCIA...) que pueden funcionar, en Linux, a través de ndiswrapper.
Y también, en muchas de ellas, hay un enlace que te permite descargar los drivers Windows que necesitas (no obstante, estos los puedes conseguir también del CD de tu tarjeta, si te lo dieron cuando compraste el PC, o de tu propio Windows).
Y OJO, por supuesto, si tu linux es de 64 bits tienes que usar el controlador de Windows de 64 bits, si usas el de 32 no te funcionaría.
Así que lo primero que hay que hacer es estas tres cosas:
1- Saber cual es tu tarjeta WIFI. Por consola lo sabes fácilmente, si es PCI, con
lspci | grep -i network
2- Conseguir sus drivers 'para Windows', y copiarlos a nuestra /home de Debian.
3- Instalar ndiswrapper, por si no viene instalada.

Yo hace tiempo que no uso ndiswrapper (hace tres años si, mi pelea con la tarjeta WIFI Broadcom pasaba por habilitarla por este método. Ahora, como dije, los kernels traen ya los paquetes necesarios) y lo que veo es que, instalando el paquete ndisgtk, que es un GUI del viejo ndiswrapper, te lo soluciona todo. Así que
# aptitude install ndisgtk
y carretera y manta (te instala, como dependencias, los paquetes ndiswrapper-common, ndiswrapper-utils, etc). (y si no, metes 'ndiswrapper' en la búsqueda con Synaptic, y te sale lo que tienes que instalar. Las 'sources' no son, estrictamente, necesarias)
Luego haces un
# ndisgtk
y te sale esto

Que tiene una pinta estupenda, y debe ser muy fácil de usar. Yo no lo he usado, así que voy a copiar (de mis 'apuntes tácticos') cómo lo hacía, hace tres años, 'por el sistema tradicional', que siempre se entienden mejor las cosas:

Y para hacerlo, una vez que tenemos los drivers de windows, e instalado ndiswrapper, solo son necesarios estos pasos:
1- Cargamos el driver (llamémosle, genéricamente 'nuestrodriver') mediante el comando...
# ndiswrapper -i nuestrodriver.inf
Este comando copiara el archivo .sys del driver y creara una configuración para él. Podemos encontrarlo en la carpeta /etc/ndiswrapper
2.- Comprobamos que el driver esta instalado correctamente, con
# ndiswrapper -l
3- Una vez que el driver esta correctamente instalado, cargamos el módulo al sistema, con
# depmod -a
# modprobe ndiswrapper
4- Configuramos modprobe para que se cargue ndiswrapper cuando la interface de la tarjeta wireless este activada con
# ndiswrapper -m
5- Y, por último configuramos para que al arrancar el sistema cargue ndiswrapper. Para ello hay que abrir y editar el archivo /etc/modules por ejemplo con
# gedit /etc/modules
Y solo tenemos que añadir ndiswrapper al final del archivo. Y guardamos.
Y ya está. Supongo que el GUI (Graphic User Interface) ndisgtk lo hará todo a la vez, y además, por lo que veo, puedes configurar, desde él, la conexión WIFI en tu ordenador.

Fácil ¿no?





3 comentarios:

  1. Hola, ¿Sabes conseguir la driveres a partir del .exe descargado de la pagina o del cd de intalación? Gracias

    ResponderEliminar
  2. Hola, tengo un problema, cuando termino de instalar todo en ndiswrapper -l me aparece instalado y conectado.

    pero ejecuto iwconfig y no me aparece la nueva interfaz. ni en ifconfig.

    También he notado que el led de la tarjeta (TPLINK TL-WN722N) ni siquiera prende.

    http://sourceforge.net/apps/mediawiki/ndiswrapper/index.php?title=TP-Link_TL-WN722N

    Seguí el manual de la pag. oficial. pero tampoco.

    Si está instalado hay un modo de refrescar la lista de interfaces?.
    Gracias

    ResponderEliminar
  3. pues no tengo mucha idea, pero, 'teóricamente', si esa tarjeta no aparece, y ni siquiera se enciende nada, podría ocurrir que esté mal insertada, o desactivada, o vete tu a saber qué ¿no? Lo único que se me ocurre es que verifiques estas cuestiones.

    ResponderEliminar