lunes, 4 de abril de 2011

Instalando tarjeta encore ENLWI-NX2 en Ubuntu


Le he comprado una tarjeta Encore ENLWI-NX2 a mi PC de escritorio. La conecté (via PCI), luego inicié en Windows XP, que la reconoció, pero no encontró un driver adecuado, así que usé el que trae el CD. En 2 minutos estaba conectado a mi AP con cifrado WPA2, normal.

Luego reinicié en Ubuntu Maverick, creyendo que la reconocería de inmediato... ¡pero no fue así! Ubuntu de plano no la reconocía y ni siquiera encendía las luces que trae junto a las antenas. Comencé a googlear y pude darme cuenta que mi tarjeta básicamente nadie la conocía :(

El siguiente paso fue hacer un lspci -vvv, para darme cuenta que el chipset que trae mi tarjeta es un Realtek 8190. Volví a googlear ahora con este último dato y ahora sí comenzó a aparecer más información. Todos parecían estar claros en 2 cosas: primero que la tarjeta no estaba soportada nativamente, y segundo, que la mejor solución era intentarlo con ndiswrapper.

Ndiswrapper es una herramienta que permite utilizar controladores de tarjetas inalámbricas de Windows, en Linux. Primera vez que lo escuchaba nombrar. Suerte tuve que encontré esta maravillosa guía para Ubuntu, de la cual extraje la información que presento a continuación.

Instalando ndiswrapper

Lo primero es instalar ndiswrapper:
sudo aptitude install ndiswrapper-common ndiswrapper-modules-1.9 ndiswrapper-utils-1.9

Si todo ha salido bien, y tecleamos:
sudo ndiswrapper -l

Debería aparecer una lista vacía (lógico porque no hemos instalado ningún controlador todavía). Si sale un error, es porque algo en la instalación salió mal.

Ahora copiamos el controlador de windows (yo utilicé el de windows xp que trajo el CD, net8190p.inf) en nuestro directorio en Linux y luego cargamos el controlador:

sudo ndiswrapper -i net8190p.inf

Si ahora volvemos a teclear:
sudo ndiswrapper -l

Debe aparecer el controlador que acabamos de cargar.

Lo siguiente es cargar el módulo:
sudo depmod -a
sudo modprobe ndiswrapper

Además debemos configurar modprobe para que se cargue ndiswrapper cuando la interfaz de la tarjeta wireless este activa:
sudo ndiswrapper -m

Por último, si queremos que ndiswrapper se cargue cada vez que se arranque el sistema (sí, ¡lo queremos!) debemos agregarlo a la lista de módulos al arranque:
sudo gedit /etc/modules

Añadir ndiswrapper al final del archivo y guardar.

Eso fue todo. Reinicié la máquina y pude conectarme sin problemas a mi AP con cifrado WPA2.

En algunos foros hablaban de usar wpa_supplicant para poder conectarse a AP con cifrado, pero en mi caso no tuve que hacer más (proablamente porque Maverick ya se habría ocupado de eso, no lo sé).

Ojalá esto le sea útil a alguien, de verdad

domingo, 3 de abril de 2011

sábado, 2 de abril de 2011

Abidal visita a sus compañeros


La imagen: Abidal realiza una visita sorpresa a sus compañeros del Barcelona en el entrenamiento este 01-04-2010.

Cortesía de marca.com

Instalando Xen en Ubuntu 10.10


El tema es que necesito hacer Virtualización en Linux y mi tutor de postgrado me recomendó Xen. Estuve ivestigando y sólo he encontrado cosas buenas de la herramienta. Según wikipedia "proporciona aislamiento seguro, control de recursos, garantías de calidad de servicio y migración de máquinas virtuales en caliente", además de que en su desarrollo ha colaborado hasta Intel.

Vale, pues intenté instalar el paquete normalmente:
sudo apt-get install ubuntu-xen-server

A lo que apt-get me respondió así de feo:

The following packages have unmet dependencies:
ubuntu-xen-server: Depends: xen-tools which is a virtual package.
The following actions will resolve these dependencies:

Keep the following packages at their current version:
1) ubuntu-xen-server [Not Installed]

Luego de buscar un poco por internet, llegué a la documentación oficial de Xen y encontré que tenían un repositorio. Lo siguiente que hice fue lógicamente agregar el repositorio y volver a intentar:

sudo add-apt-repository ppa:ukplc-team/xen-stable
sudo apt-get update
sudo apt-get install ubuntu-xen-server

¡Y ahora sí! Xen 4 instalado en Ubuntu 10.10 :)

Luego iré contando que tal me ha ido virtualizando.


viernes, 1 de abril de 2011

Instalando PostgreSQL en Linux



Recuerdo aquellos días en los que dejar corriendo un servidor postgreSQL (tanto en Linux como en Windows) era complicado. Hoy no es más que unos pocos comandos y todo queda listo.

Lo primero que debemos hacer es instalar postgresql y pgAdminIII:
aptitude install postgresql pgadmin3

Una vez instalado postgresql y pgadmin III, ya tendremos nuestro servidor instalado y corriendo, tendremos un nuevo usuario del sistema de login postgres (sin contraseña) y la base de datos postgres y el rol postgres.

Lo siguiente que debemos hacer es darle un poco de seguridad a los usuarios:
sudo passwd postgres

Luego verificaremos que el path de postgres sea "/bin/bash" con el comando:
sudo vipw

Lo siguiente es conectarnos a la base de datos, para cambiar la contraseña del rol postgres:
sudo su postgres -c "psql template1"

Una vez dentro, tipear la siguiente sentencia SQL:
ALTER USER postgres WITH PASSWORD 'nuevo_pass';

Para salir, escribimos el comando:
\q

Si no le ajustamos la contraseña a nuestro rol postgres, no podremos conectarnos via pgadminIII.

Si todo ha salido bien, abrimos pgAdminIII (Applications > Programming > pgAdmin III) y podremos crear una nueva conexión a nuestro servidor.

Evidentemente, esto es lo mínimo que hay que hacer para tener nuestro servidor PostgreSQL (y pgAdminIII) corriendo. Hay una gran cantidad de aspectos de seguridad, optimización y personalización que hay que tomar en cuenta, por ejemplo las listas de acceso y las configuraciones de regionalización.

Recomiendo echar un ojo a este documento.

CSV a PostgreSQL

A todo el mundo le ha pasado que consigue una base de datos útil, pero que está en formato CSV y se necesita en PostgreSQL o MySQL. Justo me acaba de pasar y como no recordaba bien como hacerlo, consulté un poco en la red y decidí escribir este post a manera de recordatorio.

Pues nada, el caso es que estaba averiguando la cédula de alguien y lógicamente me fui al CNE, desde donde se puede descargar de forma libre la BD de electores por estado, en formato CSV. Me bastaba abrir el CSV y hacer una búsqueda con el nombre, pero como tenía un poco de tiempo libre, decidí crear mi propia BD para futuras búsquedas.

Es un proceso muy simple que se puede resumir en 2 pasos:

1. Crear la BD/Tabla

Lo primero que debemos tener es la base de datos y tabla en donde almacenaremos nuestros datos, con las columnas que contiene el archivo CSV. Podemos hacerlo gráficamente desde pgadmin o por código, como queramos.

Para este ejemplo, yo me descargué los datos de los electores de Mérida y creé una tabla electores_merida con la siguiente información:

CREATE table electores_merida (nacionalidad char(1), cedula character varying(16) NOT NULL, nombre character varying(128), centro character varying(256), fecha_nacimiento date);


2. Cargar la data

Para cargar la data desde el archivo CSV se utiliza el comando COPY:

COPY electores_merida from '/home/marco/csv/RE-CSV-12.csv' DELIMITERS ';' CSV;


Y eso es todo, muy sencillo. Ahora tenemos nuestra tabla electores_merida, que posteriormente podremos utilizar para consultas :)

Hay que tener presente que si se trata de un CSV bien formado, no tendrá encabezado, como máximo, tendrá en la primera línea el nombre de cada columna, y esto se puede especificar a postgres, de manera que omita la primera línea. Sin embargo, en este caso en particular, además de una línea de nombres de columnas, hay una línea de encabezado, fuera de formato. Lo que hice fue manualmente con un editor de texto borrarlas y listo.

¿Qué significan las banderas del comando aptitude?


Todo el que ha usado Ubuntu, alguna vez en la vida le ha tocado instalar algún paquete en una terminal, utilizando el comando aptitude. Lo primero que hacemos es un aptitude search paquete de manera de listar los paquetes disponibles que coinciden con nuestra búsqueda, así poder decidir cual es el correcto.

También (idealmente) nos fijamos en los primeros caracteres de la lista que devuelve el aptitude search, para ver si el paquete ya se encuentra ya instalado o no. Generalmente vemos si aparece una "i", lo cual quiere decir que el paquete está instalado ya, mientras que si aparece una "p" es porque no está instalado. En la mayoría de los paquetes es así, sin embargo, aptitude aporta muchas más opciones, que detallaré a continuación.

Lo primero que hay que tener presente es que a veces no tenemos un único caracter, sino dos, lo cual hace más importante su entendimiento. El primero siempre aparecerá, mientras que el segundo es opcional.

El primer caracter corresponde a la bandera de Estado Actual (current status), y puede ser alguno de las siguientes:
  • i: indica que el paquete y todas sus dependencias están correctamente instaladas.
  • c: el paquete fue eliminado, pero sus archivos de configuración no.
  • p: el paquete y todos sus archivos de configuración se han eliminado, o bien, nunca se ha instalado.
  • v: el paquete es virtual.
  • B: el paquete tiene dependencias rotas.
  • u: el paquete fue desempaquetado pero no ha sido configurado.
  • C: el paquete está "semi configurado", es decir, su configuración fue interrumpida.
  • H: el paquete está "semi instalado", es decir, su instalación fue interrumpida.

El segundo caracter corresponde a la bandera Acción (action), y puede ser alguna de los siguientes:
  • i: el paquete será instalado.
  • d: el paquete será eliminado (pero no se eliminarán sus archivos de configuración).
  • p: el paquete será eliminado (al igual que todos sus archivos de configuración).
  • h: el paquete será frenado (held-back), se mantendrá la versión actual, sin importar si se encuentra disponible una nueva versión.
  • F: se prohibió una actualización del paquete.
  • r: el paquete será reinstalado.
  • B: el paquete está roto, algunas de sus dependencias no serán satisfechas. Aptitude no permitirá instalar, eliminar o actualizar ningún paquete con esta bandera.

Más información en: Aptitude Reference Guide