blacklist p54_usb
blacklist p54_common
En este blog se escribe preferentemente sobre temas relacionados con el medio ambiente y el software libre. Contaminación, cambio global, educación, Linux, redes inalámbricas, conexiones wifi o actualidad científica y tecnológica son términos que pueden mostrar de qué va este sitio.
La "tarjetilla" usb que trato de instalar es una Inventel UR054G (R01) v1.1 con ID 1435:0427 y que puedes comprobar conectándola en tu equipo y ejecutando en terminal el comando lsusb.
Para configurarla he probado de todo, ya que monta un chipset de la familia Prism54, y de hecho en el kernel creo recordar que se cargaban los módulos islsm y los prism54usb que no funcionan adecuadamente [hablo de memoria pero la cosa va por ahí, así que ejecutando el comando lsmod sabremos exactamente cuáles son los que corresponden]. La he probado con Gutsy y funciona con los drivers nativos [creo que eran los p54usb] pero al rato se cuelga el equipo. Así que, igualmente recomiendo Ndiswrapper, que tan buenos resultados ha demostrado con Feisty.
Me decidí por Ndiswrapper y todo ha funcionafo de forma muy estable. Procedí a editar como root el archivo /etc/modprobe.d/blacklist con el comando gksudo gedit /etc/modprobe.d/blacklist y añadí las siguientes líneas de texto:
# tarjeta usb inventel con chipset prism54usb
blacklist islsm_usb
blacklist islsm_device
blacklist islsm
blacklist islsm_pci
blacklist crc_ccitt
# tarjeta usb inventel con chipset prism54usb
blacklist prism54usb
blacklist prism54common
Si tu caso fuese el famoso del Thomson TG123g, que al parecer usa el chipset rtl8187 [busca y trata de localizarlo con el comando lsmod e intenta bloquear la carga del mismo como he explicado anteriormente añadiéndolo a la "lista negra", ya que de lo contrario te puedes encontrar con dos módulos intentando gestionar la tarjeta y eso no te funcionaría].
Si deseas usar Ndiswrapper bajo Ubuntu Gutsy [conozco usuarios que lo han probado y les funciona correctamente], debes añadir al archivo blacklist una nueva línea con el contenido blacklist p54usb. Sospecho que igual es necesario una segunda línea extra, blacklist p54common. Así evitamos que se cargue el módulo que gestiona la tarjeta en esta versión de Ubuntu, con lo que tendremos disponible el módulo de Ndiswrapper listo para ser instalado en el núclñeo de nuestro sistema. Esto lo comento para aquéllos usuarios que, como es mi caso, la tarjeta se les cuelga después de estar funcionando un buen rato.
Ahora estoy probando Ubuntu Hardy 8.04 64-bit y he añadido al mencionado archivo de la "lista negra" las dos líneas antes comentadas:
# tarjeta usb inventel con chipset islsm
blacklist islsm_usb
blacklist islsm_device
blacklist islsm
blacklist islsm_pci
blacklist crc_ccitt
# tarjeta usb inventel con chipset prism54usb
blacklist prism54usb
blacklist prism54common
# tarjeta usb inventel con chipset p54usb
blacklist p54usb
blacklist p54common
Supongo que en Ubuntu Hardy sólo se necesitan estas dos últimas líneas para evitar la carga del driver, ya que funciona desde un principio pero al rato se vuelve inestable y deja de funcionar la red wifi.
Guardo los cambios, reinicio el sistema e instalo Ndiswrapper [si dispones de conexión, usa Synaptic e instala los tres o cuatro paquetes que te aparecen, ya que Ndisgtk te puede ayudar a instalar el driver si eres novato en esto de Linux]. Si no dispones de conexión en el equipo, habilita como repositorio el propio CD de Ubuntu que creo recordar los tiene disponibles [desde Synaptic entras en el menú Configuración > Repositorios y marcas la opción "Instalable desde CD-ROM/DVD"]. O si lo prefieres puedes bajarte los paquetes desde los repositorios oficiales de Ubuntu vía navegador e instalarlos posteriormente. Ojo, que la versión para Feisty es la 1.38 y no te garantizo que cualquier otra te vaya a funcionar. También puedes compilar el módulo desde las fuentes.
Ahora cargo el driver para Windo$ del CD de Livebox [en concreto en la carpeta de drivers llamada Prism y seleccionamos aquéllos que se corresponden con prisma02]. Búscala y la copias con los tres archivos que contiene a tu escritorio Ubuntu e instálalos usando la aplicacción Ndisgtk, disponible en el menú "Sistema > Administración > Windows Wireless Drivers". Si quieres seguir una guía sobre cómo instalar desde Ndiswrapper, busca en la receta que yo mismo usé [cómo instalar driver con Ndiswrapper].
Configurado el dispositivo usb wifi, debes conectar con la señal de Red desde el menú principal Sistema > Administración > Red. Ojo con el tipo de cifrado, wep, wpa y las claves. Yo lo tengo con cifrado wpa [más seguro] y funciona sin problemas, aunque te digo que me costó bastantes horas de quebrarme la cabeza con el puñetero [1ª acepción del diccionario Real Academia de la Lengua] dispositivo. Cuando quieras lanzar la conexión debes pulsar el "botoncito 1" que está en el frontal del Livebox [de los dos que hay, creo que era el de la izquierda]. Este interruptor de hardware [es una buena opción para proteger tu red de invitados no deseados] y ahora lanzas la conexión desde tu sistema Ubuntu para la tarjetilla usb mencionada al principio.
Ubuntu Hardy Heron, ¿32 ó 64-bit?
Bueno, pues me decidí por la opción de 64-bit. Ya se sabe, más potencia y mejor rendimiento. Pero mi gozo en un pozo. No encontré el driver por ningún lado. Ni siquiera en el sitio oficial de la tarjeta wifi usb, Inventel UR054g. Lo intenté con un supuesto driver para 64-bit que encontré en el CD y el sistema se me "colgó". Reinicié y un estupendo "kernel panic" me hizo desistir del invento. No hubo forma de arrancar ni siquiera a prueba de errores (recovery mode).
Suerte y a por todas
Esta miniguía pretende servir para compilar y cargar el módulo rt73 bajo Guadalinex v4 y Ubuntu Edgy o Feisty. Antes debes comprobar que la tarjeta monta ese chipset, lo cual es tan fácil como usar en un terminal el comando lsusb y comprobar los dígitos que identifican al mismo. Se trata de un número del tipo 050d:705a y que mediante una sencilla búsqueda en Internet te indicará cuál es exactamente el chipset que monta la tarjeta.
Si tu tarjeta monta el chipset rt73 de Ralink, para hacerla funcionar en Ubuntu Edgy/Feisty o Guadalinex v4 hay que salvar un problema previo. Ubuntu/Guadalinex trae precompilado el módulo rt73usb que debería hacer funcionar la tarjeta, aunque, por algún problema que desconozco, realmente no sirve para nada; es más, no solo no vale sino que además incordia. Si no, Ubuntu sería casi perfecto. Además del módulo rt73usb, también se cargan otros módulos [rt2570 y rt2x00lib], por lo que te sugiero hagas lo siguiente:
Desinstala el módulo que tiene Ubuntu/Guadalinex por defecto:
sudo rmmod rt73usb
Para que no vuelva a cargar ese módulo en el arranque, modifica el archivo /etc/modprobe.d/blacklist, lo que puedes hacer con el comando gksudo gedit /etc/modprobe.d/blacklist y añade las siguientes líneas:
blacklist rt73usb
blacklist rt2570
blacklist rt2×00lib
Antes de proceder a instalar los drivers, los usuarios de Ubuntu deben descargar e instalar las cabeceras del kernel o headers y el paquete build-essential. Yo me he basado en la receta propuesta en el blog Diario de un nómada y ahí se realiza usando el terminal desde Linux bajo una conexión a Internet mediante el comando sudo apt-get install build-essential linux-headers-`uname -r`pero si no dispones de conexión debes ingeniártelas para realizar la instalación. Afortunadamente, los usuarios de Guadalinex no tenemos este problema, ya que las cabeceras vienen instaladas de serie.
Si no estuvieran instalados estos paquetes, y en el supuesto de que no tengamos conexión a internet, lo más fácil es instalarlos desde el CD de Ubuntu/Guadalinex. Introducimos el CD y el cuando el sistema nos pregunte si deseamos abrirlo con el gestor de paquetes Synaptic, aceptamos. Otra opción pasa por abrirlo desde el propio Synaptic, desde el menú Sistema > Administración > Gestor de paquetes Synaptic y una vez abierto el programa vamos al menú Configuración > Repositorios y seleccionamos añadir CD. Confirmamos y pulsamos después el botón Recargar, con lo que aparecerán en la pantalla todos los paquetes instalados y los que podemos instalar desde el cd.
Buscamos build-essential y linux-headers y los marcamos para instalar [en el caso de las cabeceras se deben seleccionar dos paquetes, que pueden ser linux-headers-2.6.20-15-generic y linux-headers-2.6.20-15 u otras versiones posteriores]. Finalmente validamos con el botón Aplicar y aceptamos.Ahora te bajas los drivers para Linux del sitio SerialMonkey. Los descargas en tu directorio de trabajo, supongamos que fuese /home/tu_usuario y por tanto para extraerlos abre un terminal y ejecuta el comando tar -xvzf rt73-cvs-daily.tar.gz y seguidamente observa desde el navegador de archivos (Nautilus) que se te ha creado una carpeta llamada rt73-cvs-200709****, en donde los asteriscos corresponden al día y hora de la versión, 2007 es el año y 09 el mes [como ves, dependiendo de la fecha, así será el nombre del archivo]. Bien, entra en esa carpeta desde el terminal usando el comando cd rt73-cvs-200******* [en lugar de asteriscos escribes los números que correspondan]. Es más, si escribes en terminal cd rt+tecla tabulador, se autocompleta el nombre [truquillo muy útil para el terminal]. Entra ahora en la carpeta /Module con el comando cd Module, aunque podías haberlo hecho de una sola vez con el comando cd rt73-cvs-200*******/Module/
Ahora ejecuta uno tras otro los siguientes comandos:
make
strip -S rt73.ko
sudo make install
Por último hay que cargar el nuevo modulo con el comando
sudo modprobe rt73
Para que arranque el sistema con este módulo siempre cargado debes abrir el archivo /etc/modules con el comando gksudo gedit /etc/modules y añade una línea al final del archivo que acabas de abrir, en concreto añadirás rt73 y guardas el archivo con los cambios introducidos.
Se supone que ya deberías poder configurar la conexión, para lo que tendrás que ir al menú Sistema > Administración > Red y si no fuese posible conectar, hay que hacer algunas cositas más.
Se puede saber si ha cargado el módulo con el comando lsmod y el estado de la interfaz wifi con el comando iwconfig.
Es muy importante que si algo no sale, copies los mensajes de error que te envía el sistema y los estudies detenidamente. Si has conseguido completar este proceso sin errores estás a punto de ver la luz; y si te has equivocado en algo, ya intentaremos descubrir lo que fue mal.
Si a pesar de todo no logras configurar la conexión, es posible que el nombre wlan0 [e incluso wlan1] asignado a rt73, no sea compatible con tu sistema, por lo que puedes crear un alias como te propongo a continuación, pero antes observa el comentario que encontré en el sitio de Ubuntu:
I then added in /etc/modules the line "rt73" and in /etc/modprobe.d/rt73 "alias rausb0 rt73" and removed the obsolete /etc/modprobe.conf created by make install.
Si cuando ejecutas el comando iwconfig aparece en la primera línea wlan1... [a veces puede aparecer como wlan0] Ejecuta el comando gksudo gedit /etc/modprobe.d/aliases y añade al final la siguiente línea, alias rausb0 rt73. Seguramente debas eliminar /etc/modprobe.conf como indica la nota anterior y no olvides que también podrías crear el alias como se indica ahí mismo, añadiendo en /etc/modprobe.d/rt73 una línea con el contenido alias rausb0 rt73.
Si te conectas por DHCP ejecuta en un terminal el comando sudo dhclient rausb0. Pero si te conectas con IP estática, ejecuta en un terminal el comando sudo ifconfig rausb0 aquí_tu_IP up.
Reinicia el equipo y ya está. ¿Puedes configurar ahora la conexión con tu dispositivo wifi? Así lo espero.
Enga, hasta pronto.
apt-get install kernel-headers-2.X.Y-z
ln -s /usr/src/linux-2.X.Y /lib/modules/version-kernel/build
ln -s /usr/src/linux-2.X.Y/usr/src/linux