Archivos para Enero 2009

31
Ene
09

LVM: Reordenando espacio en disco

Fuente: MisAplicacionesDeLinux

Ayer, durante una deriva en internet encontré este magnífico tutorial que me ha abierto los ojos y me ha llenado de esperanza….disfrútenlo porque no tiene desperdicio y es increiblemente útil.

Por cierto, este how-to lo tenemos gracias a http://www.infolinuxblog.com

Cuando elegí y cree las particiones en mi disco hace ya cosa de 3 años, era un principiante linuxero que utilizaba Windows y Linux a partes iguales. En la actualidad ya no es así y aunque sigo teniendo Windows instalado, lo uso una vez cada varios meses. Sin embargo, en todo este tiempo no he encontrado las ganas, ni el tiempo para reorganizar un poco mi disco, ya que me daba una pereza tremenda.

Esta es una captura de Gparted de mi único disco en el portátil. En azul la partición primaria de Windows con marca de arranque, en negro la partición de Nexenta OpenSolaris y la extendida es Linux Ubuntu 7.04, sí ya sé que está Gutsy pero me temo que mi RAM me va a obligar a congelarme en Feisty.

lvmprevio

Como no me bajo demasiadas cosas y tiro mucho de mi disco externo para no saturar el del portátil, he vivido bastante cómodo a pesar de lo que pueda parecer. Desde el último Viernes Técnico me quedé con ganas de Probar la Versión Express Developer de Solaris en mi portátil, para poder jugar y seguir aprendiendo zonas, ZFS, DTrace… y tantos otros. Así que ya no me interesa conservar Nexenta (bien podría probar la última versión Core Platform 1, queda pendiente) y quiero utilizar ese espacio para guardar cosas desde Linux. Aquí como siempre el número de posibilidades es tremendo, pero yo voy a optar por una solución que algunos calificarán de técnica, pero que es cómoda, flexible y no me impedirá escalar en el futuro, LVM2. Aunque no es mi intención explicar y hacer un tutorial de LVM, sino más bien un ejemplo práctico, procuraré que se entienda. Al final del artículo dejaré algunas referencias para los que quieran dominar LVM, algo obligatorio para todo administrador de sistemas.

LVM son las siglas de Logical Volume Manager. En su página en español de la wikipedia podremos informarnos sobre esta tecnología. Se podría decir que LVM es el ZFS de Linux, aunque las comparaciones son odiosas y realmente no tienen nada que ver. Ahora alguno dirá que es ZFS, pues eso ya es harina de otro costal amigo. Con LVM podremos crear un “pool” o conjunto de particiones que se administran como una sola. Consiste en una capa de abstracción que aporta ventajas como sencillez de administración, escalabilidad de volúmenes, instantáneas o snapshots, redimensionado seguro…

Primero borraré la partición de Nexenta con Gparted (para evitar complicar demasiado las cosas con la consola). La marco para borrar.

lvmborrar

Ahora aplico los cambios:

lvmaplicar

Después en el espacio vacío creo una partición sin formato. Doy a nueva partición:

lvmnuevo

En el diálogo que se abre marco “Sistemas de Archivos” >> “sin formatear”:

lvmformato

Ahora tengo que reinstalar GRUB en el MBR, ya que Nexenta había tomado posesión de este espacio.

sudo grub-install /dev/sda

A continuación instalo lvm2:

sudo apt-get install lvm2

Al ejecutar pvcreate me llevo la primera sorpresa, resulta que no encuentra el comando:

No program "pvcreate" found for your current version of LVM

La solución al problema viene muy bien explicada en este foro. Ejecuto:

sudo cp -r /lib/lvm-200/ /lib/lvm-0

Ahora ya puedo empezar a definir mis volúmenes físicos. Todos los comandos de LVM disponen de una ayuda contextual muy buena y clara. Para ello basta con ejecutarlos con la opción

"--help"

Hago un cfdisk sobre mi disco para ver qué partición es la que me ha creado Gparted, no puedo evitar usar la consola, qué le vamos a hacer.

sudo cfdisk /dev/sda

lvmcfdisk

Ahora ya sé que es la partición /dev/sda2, así que la añado a volúmenes físicos:

sudo pvcreate /dev/sda2

Compruebo resultados:

sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               almacen
  PV Size               9,99 GB / not usable 0
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              2557
  Free PE               2557
  Allocated PE          0
  PV UUID               gOGspm-rHfZ-ZoyW-QcH2-gqCD-8bN6-JXW4BX

Creo el grupo de volúmenes lógicos almacen:

sudo vgcreate almacen /dev/sda2

Miro sus características:

sudo vgdisplay
  --- Volume group ---
  VG Name               almacen
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               9,99 GB
  PE Size               4,00 MB
  Total PE              2557
  Alloc PE / Size       0 / 0
  Free  PE / Size       2557 / 9,99 GB
  VG UUID               wuF2Aq-YV6p-Wcax-MTtB-wja1-wFIW-ggxTRs

Si hicieramos un lvcreate ahora, nos daría el siguiente error:

/proc/misc: No entry for device-mapper found
  Is device-mapper driver missing from kernel?
  Failure to communicate with kernel device-mapper driver.
  /proc/misc: No entry for device-mapper found
  Is device-mapper driver missing from kernel?
  Failure to communicate with kernel device-mapper driver.
  Incompatible libdevmapper 1.02.08 (2006-07-17)(compat) and kernel driver
  striped: Required device-mapper target(s) not detected in your kernel
  lvcreate: Create a logical volume

Esto se debe a que el kernel de Ubuntu que trae soporte para LVM2 no tiene el módulo cargado. En teoría al reiniciarlo lo detectaría y lo añadiría. Pero lo vamos a hacer a mano. Cargo el módulo y lo añado al fichero “/etc/modules” para que Ubuntu lo cargue con el sistema automáticamente:

sudo modprobe dm-mod
echo "dm-mod" >> /etc/modules

Ahora sí que creamos el volumen lógico descargas, de 2000 extents por no ocupar todo el espacio, recuerda que se puede redimensionar en cualquier momento:

sudo lvcreate --name descargas --extents 2000 almacen

Damos formato al volumen lógico, yo he elegido ext3:

sudo mkfs.ext3 /dev/almacen/descargas

mke2fs 1.40-WIP (14-Nov-2006)
Etiqueta del sistema de ficheros=
Tipo de SO: Linux
Tamaño del bloque=4096 (bitácora=2)
Tamaño del fragmento=4096 (bitácora=2)
1024128 nodos i, 2048000 bloques
102400 bloques (5.00%) reservados para el súper usuario
Primer bloque de datos=0
Número máximo de bloques en el sistema de archivos=2097152000
63 bloque de grupos
32768 bloques por grupo, 32768 fragmentos por grupo
16256 nodos i por grupo
Respaldo del súper bloque guardado en los bloques:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Mientras se escribían las tablas de nodos i: terminado
Creando el fichero de transacciones (32768 bloques): hecho
Escribiendo superbloques y la información contable del sistema de ficheros: hecho

Este sistema de ficheros se revisará automáticamente cada 28 meses o
180 dias, lo que suceda primero.  Utilice tune2fs -c o -i para cambiarlo.

Edito el /etc/fstab sabiendo que los dispositivos lvm se crean en /dev/nombre-grupo-volúmenes/nombre-volumen-lógico en /dev/mapper con links simbólicos. Añado al fstab lo siguiente:

# Entry for LVM volumes
/dev/almacen/descargas /media/descargas ext3 defaults 0   0

Ahora creo el directorio donde se va a montar el volumen y lo monto:

sudo mkdir -p /media/descargas
sudo mount -a

Si vamos al directorio:

cd /media/descarga

El comando “ls” debería mostrarnos el directorio “lost+found”. Este directorio yo suelo borrarlo. Ahora ya podré guarda mis descargas en esta “partición” y estar mucho menos apretado de espacio. En cualquier momento podemos añadir otras particiones que no tiene porque estar en el mismo disco o contiguas, bien puede ser un hub con 4 pendrives.

CONCLUSIÓN LVM es realmente útil y vale la pena conocerlo. Para comprenderlo conviene tener los conceptos claros: particionado, herramientas disponibles, sistemas de ficheros… Es probable que exista alguna interfaz gráfica, sin embargo no por ello resultará más fácil crear un LVM y administrarlo sin conocer los entresijos internos. Lo explicado es solo la punta del IceBerg, se utiliza para muchas cosas y es algo que todo administrador de sistemas que se precie debe manejar. Es el pan nuestro de cada día en mi trabajo sin ir más lejos.

Información obtenida de http://www.infolinuxblog.com

30
Ene
09

Tira LinuxHispano: Desastre

desastre

Fuente: LinuxHispano

29
Ene
09

Ubuntu Pocker Guide disponible gratuitamente

Fuente: UbuntuLife

De Keir Thomas, autor del fantastico libro Ubuntu Kung-Fu, podemos descargar gratuitamente la version pocket de su libro “Ubuntu pocket guide and reference” que nos introduce en el apasionante mundo Ubuntu. Nota: el libro esta en ingles.

Descarga | Ubuntu Guide

28
Ene
09

Antico: un hermano de KDE más ligero

Fuente: UbuntuLife; Barrapunto

En KDE-Hispano nos cuentan como instalar Antico.

Antico es un proyecto de escritorio + gestor de ventanas basado unicamente en Qt4 y X11, y que pretende eliminar cualquier dependencia no necesaria como pueden ser por ejemplo las bibliotecas de KDE. El objetivo es que este implementado unicamente empleando las librerias de Qt4.

El escritorio es muy rapido y ligero y nace con la idea de que sus parametros se puedan configurar editando muy pocos archivos.

27
Ene
09

Top 10 de los juegos Open Source 2008

Como el año pasado, me hago eco de este ranking de juegos

Fuente: LinuxJuegos

Gracias a la colaboración de los lectores de LinuxJuegos.com, hemos realizado por tercer año consecutivo la votación sobre cuáles han sido los mejores juegos Open Source para GNU/Linux publicados durante los últimos 12 meses. La votación completa la podéis consultar en la anterior noticia sobre el tema, para abreviar comentar que se han contabilizado un total de 37 participaciones, para las que sólo se han tenido en cuenta la primera votación realizada desde una misma dirección IP.

Este es, según vuestras votaciones, el Top 10 de los juegos Open Source del año 2008: (en orden inverso)

Sauerbraten Puesto Nº10:
Sauerbraten (54 puntos)Sauerbraten tiene probablemente uno de los motores 3D más potentes iniciado desde un principio como software libre. De este juego destaca la facilidad de crear nuevos mapas (con la posibilidad de editarlos en tiempo real mientras se juega), la optimización que tiene para máquinas de recursos limitados, y el sistema de menús en 3D.
Planeshift Puesto Nº9:
Planeshift (55 puntos)Planeshift es un ya veterano MMORPG que nos introduce en un fantástico mundo subterráneo repleto de criaturas. Durante el último año ha aumentado de manera notable el número de misiones y personajes disponibles en el juego, que, salvando los puntuales problemas de conexión, nos ofrecen innumerables horas de juego.
Wormux Puesto Nº8:
Wormux (58 puntos)Wormux es un clon del clásico Worms protagonizado por mascotas del mundo del software libre. Es uno de esos proyectos que poco a poco van ganando más adeptos gracias a la diversión que ofrecen las partidas multijugador. Uno de los principales logros del proyecto en 2008 fue precisamente la inclusión oficial de partidas contra otros jugadores por Internet.
Teeworlds Puesto Nº7:
Teeworlds (61 puntos)Teeworlds ha sido sin duda una de las gratas sorpresas de 2008. Es un juego multijugador que destila acción en 2 dimensiones, en el que nos enfrentaremos con un variado armamento a otros jugadores por Internet.
Glest Puesto Nº6:
Glest (64 puntos)Glest es un juego de estrategia en tiempo real ya habitual por estos lares. Durante 2008 fue publicada la versión 3.0 y consecutivas revisiones, apuntándose al grupo de juegos con partidas online. Además la comunidad de Glest ha sido bastante activa y se ha añadido mucho contenido, tanto en la versión oficial como en forma de expansiones.
Nexuiz Puesto Nº5:
Nexuiz (80 puntos)Nexuiz es un espectacular ejemplo de lo que se puede llegar a hacer modificando el motor del primer Quake. Este año pasado nos ha traido nuevas mejoras gráficas e importantes optimizaciones, nuevos mapas y modos de juego.
Supertuxkart Puesto Nº4:
SuperTuxKart (83 puntos)SuperTuxKart es otro proyecto que ha evolucionado mucho durante 2008. Un juego de carreras de karts que ha pasado de una idea que prometía a una realidad que entretiene cuando juegas contra tus amigos en casa. Este año que entra puede ser un punto de inflexión para SuperTuxKart, ahora que ha cogido algo de inercia.
OpenArena Puesto Nº3:
OpenArena (86 puntos)OpenArena es un juego que utiliza el motor liberado de Quake 3 para ofrecernos la jugabilidad de este pero utilizando únicamente contenido 100% libre. Durante el año pasado se han incluido nuevos modos de juego y más variedad de personajes. También hubo una polémica con unas texturas no libres que fueron incluidas por un colaborador, pero el error fue rápidamente subsanado y el proyecto sigue su buena marcha.
Battle For Wesnoth Puesto Nº2:
Battle for Wesnoth (108 puntos)Por primera vez desde que publicamos este Top 10, Battle for Wesnoth no es el número uno de la lista, esto no quiere decir que el proyecto haya estado parado, muestra de ello es este segundo puesto y las numerosas mejoras que ha recibido el juego durante 2008. ¿Recuperará en 2009 el trono perdido?.
Frets on Fire Puesto Nº1:
Frets on Fire (141 puntos)Frets On Fire se erige como el mejor juego libre de 2008. Desde luego que el tirón que ha recibido gracias a los juegos comerciales con los que es compatible y los numerosos mods como FoFix le ha venido bastante bien a este proyecto. Una muy buena opción para todos aquellos que tengáis alma de rockero.

Para seleccionar que juegos quedaban por encima de otros se ha seguido el siguiente criterio: juego con más puntos, juego con más votaciones, juego con más dieces, juego con más nueves, etc, contabilizando sólo la primera votación realizada desde una misma IP.

Muchas gracias a todos los que habéis votado, y una vez más, una mención especial a Furor por el trabajo que ha realizado diseñando el pingüino que adorna la cabecera del artículo y el podio de los ganadores.

Podéis consultar los resultados de ediciones anteriores en los 10 mejores de 2006 y en los 10 mejores de 2007. Y si aún queréis más, aquí tenéis el listado de todos los juegos con votos válidos que han realizado los usuarios para esta edición:

Frets On Fire – 141 puntos
Battle for Wesnoth – 108
OpenArena – 86
SuperTuxKart – 83
Nexuiz – 80
Glest – 64
Teeworlds – 61
Wormux – 58
Planeshift – 55
Sauerbraten – 54
X-Moto – 53
Secret Maryo Chronicles – 50
PokerTH – 48
Yo Frankie! – 47
Warzone 2100 – 46
AssaultCube – 43
Torcs – 41
Warsow – 37
UFO: AI – 33
Numpty Physics – 32
Frozen Bubble – 26
Gbrainy – 20
SCOURGE – 19
Performous – 19
FreeCiv – 19
FlightGear – 18
Open TTD – 15
Alien Arena – 12
Hedgewars – 10
Freecol – 9
eBoard – 9
Eternal Lands – 9
Vdrift – 9
Vega Strike – 8
DCCnitghtmare – 8
Brain Workshop – 7
OpenCity – 7
Egoboo – 6
Phun – 6
Scorched 3D – 6
Lkstat – 6
Tetzle – 4
LordsAWar – 4
OpenAstromenace – 4
PiX Bros – 3
Tetravex – 3
OpenAlchemist – 3
Vavoom – 3
Bygfoot Football Manager – 2
NAEV – 2
BzFlag – 2
Nimuh – 2
Lincity-NG – 1
Atanks – 1
QnetWalk – 1

26
Ene
09

SuperTuxKart 0.6

Fuente: LinuxJuegos

SuperTuxKart es un juego arcade de coches al estilo de Super Mario Kart y similares.

Se encuentra disponible la versión 0.6 del juego. En ella se han mejorado mucho las físicas y se han añadido más posibilidades de control de los karts, como la nueva tecla para hacer derrapes o la posibilidad de utilizar nitros. También el repertorio de powerups ha sido modificado, con elementos más acordes con la temática del juego.

En esta versión se ha añadido también mucho contenido nuevo, se han mejorado y añadido karts y mapas con los que jugar, se ha mejorado la IA de los rivales, se ha incluido un nuevo modo de juego multijugador (”3 Strikes Battle”), y se ha incluido nueva música y efectos de sonido.

El juego puede obtenerse desde la sección de descargas oficial de SuperTuxKart. En el momento de escribir esto aún no hay un binario oficial para GNU/Linux pero si está disponible el código fuente para compilar.

25
Ene
09

Vídeos del domingo 22

Vídeo-Tutorial para hacer el cubo de Rubik (CienciaEnElXXI)

Continuar leyendo ‘Vídeos del domingo 22′

24
Ene
09

Aceleración 3D en VirtualBox

Fuente: PingüinosYCia

Hace poco salió la noticia de la posibilidad de activar aceleración 3D en VirtualBox, algo francamente interesante, hoy vamos a ver como activarlo.

  • Primero nos descargamos la versión 2.1.0 de VirtualBox aquí.
  • Una vez bajada, desinstalamos VirtualBox si lo tenemos instalado.
  • Instalamos el .deb que hemos descargado. Nos actualizará nuestras máquinas virtuales.
  • Arrancamos el VirtualBox. Seleccionamos una máquina virtual que tengamos creada (o la creamos si no tenemos ninguna) y hacemos clic en “Configuración”.
  • En la sección “General” (la primera de todas) vemos que hay una opción que dice “Enable 3D acceleration“, pues la seleccionamos, y ponemos un “Tamaño de memoria de vídeo” de 32 MB (por defecto pone 8 MB que es muy poco). Damos a “Aceptar”.
  • Desactivamos los efectos visuales si los tenemos, para que el PC consuma lo menos posible, y arrancamos la máquina virtual.
  • Una vez haya arrancado, vamos a “Dispositivos” > “Instalar Guest Additions”. Se montará el CD de instalación de Guest Additions. Si no se ejecuta automáticamente el programa de instalación, lo ejecutamos manualmente. Una vez instalada la última versión de las Guest Additions, reiniciamos la máquina virtual.

Con esto ya podreis disfrutar de aceleración 3D en vuestras máquinas virtuales con VirtualBox ;)

Nota: Si 32 MB os parece poco, y tenéis una tarjeta gráfica lo bastante potente, podéis probar a ponerle más memoria de video.

Fuente: Ubuntu-es

23
Ene
09

FreeCol: Un juego de estrategia

Fuente: UbunTips

FreeCol es un clon del conocido juego Colonization y muy similar a Civilization. El juego te remonta a 1492, cuando llegan las primeras naves españolas a América y tendrás que ir fundando ciudades, extraer riquezas del suelo americano para enviarlas a España y tratar de convencer a nuevos colonos para que vengan a América, todo esto sin descuidarte de los posibles ataques de otras fuerzas europeas siendo el objetivo final la creación de una nación independiente.</p> <p style=”>El mayor cambio introducido en esta versión es la posibilidad de definir la mecánica de juego utilizando archivos XML. De esta manera, se pueden cambiar fácilmente las reglas e incluso generar un juego similar, pero si quieren conocer la totalidad de la lista de cambios (que son muchos) pueden hacerlo desde aquí.

Existe un buen manual en línea y además puedes descargarlo también en formato PDF.

Como el juego está desarrollado en Java, es multiplataforma. Los requisitos para su instalación son pocos: tener una resolución mínima de pantalla de 1024 x 768 y por supuesto tener instalado Java para poder ejecutarlo.

Para instalarlo en Ubuntu solo debemos descargar este archivo, y luego hacer doble click en el mismo para que se inicie el instalador, que primero nos consulta por el idioma, pudiendo elegir el español.

y ya todo lo que queda es darle al botón Siguiente (no olviden que la instalación es también para Windows) para aceptar las condiciones de la licencia (GPL) e informarle la ruta de instalación que deseemos (por defecto /home/usuario/freecol), y elegir si queremos que nos instale el manual del juego.

Por lo menos a mi no me creó ningún atajo en el menú, para ejecutarlo ir a la carpeta donde eligieron instalarlo y hacer doble click en el archivo freecol..

La instalación crea además una carpeta para poder desinstalar el juego.

22
Ene
09

Instalar drivers iwlagn con parches para inyección de paquetes

No lo he probado, pero es muy interesante.

Fuente: CasiDiablo

Algunas veces abuso de este espacio y pongo cosas que quizás a nadie le interese, pero la verdad es que, cuando no escribo lo que aprendo, se me olvida muy rápido. Aquí va uno de esos tutoriales raros, espero no moleste al lector habitual.

El objetivo de este mini-auto-how-to es explicar paso a paso cómo instalar los drivers iwlagn para, en mi caso, una tarjeta Intel Wireles 4965AGN, con los parches que habiliten la inyección de paquetes, lo cual es útil/necesario cuando estamos auditando redes inalámbricas y descifrando claves WEP o WPA(2).

En mi caso lo he hecho sobre Gentoo, corriendo el kernel Linux 2.6.27. Y aquí explico un par de cosas, para hacer este tutorial compatible con otras distros:

  • Cuando se trabaja con Gentoo, es muy común tener el código fuente del kernel de Linux descargado puesto que, en el momento de la instalación, se compila manualmente. En otras distros, lo más probable es que no lo tengas. En cualquier caso, la mejor manera de disponer de las fuentes de Linux es: en Gentoo ejecutar el comando emerge gentoo-sources; en otras distros, descargar las fuentes directamente de la página oficial, copiar y descomprimir el archivo en la carpeta /usr/src.
  • Puesto que vamos a recompilar los drivers, y probablemente el kernel, es necesario contar con las herramientas básicas de desarrollo (gcc, make, etcétera).

1. Preparar el kernel

Antes de poder instalar los drivers, es necesario que el kernel se encuentre en ciertas condiciones. Así que vamos a la carpeta donde tengamos el código fuente del kernel, y ejecutamos make menuconfig.

Para los que esto es nuevo: el make menuconfig te proporciona un menú de configuración de las opciones del kernel de Linux. Estas opciones determinan qué cosas puede hacer o no nuestro kernel. En este caso necesitamos algunas opciones de la configuración de las redes Wireless. Ten en cuenta que las opciones que marcamos con un asterisco (*) significan que esas características serán incluidas internamente dentro del kernel (built-in), mientras que las que tienen una eme (M) significan que serán compiladas como módulos.

En este caso, necesitamos que la parte de configuración de las redes Wireless sea así:

Networking -> Wireless :
[M] Improved wireless configuration API
[*] nl80211 new netlink interface support
[*] Wireless extensions
[M] Generic IEEE 802.11 Networking Stack (mac80211)
[M] Generic IEEE 802.11 Networking Stack (DEPRECATED)
[M] IEEE 802.11 WEP encryption (802.1x)
[M] IEEE 802.11i CCMP support
[M] IEEE 802.11i TKIP encryption
[M] Software MAC add-on to the IEEE 802.11 networking stack

Esto puede variar entre versiones del kernel; en mi caso la configuración de mi kernel luce así:

wireless-kernel

Además, en la sección de dispositivos Wireless, por el modelo de la tarjeta, lo tengo configurado así:

device-wireless

Una vez hayamos configurado adecuadamente nuestro kernel, basta con salir y hacer lo siguiente:

make <- compilamos el kernel
make modules_install <- instalamos los modulos
cp arch/x86/boot/bzImage /boor/el-nombre-de-tu-kernel <- copiamos la imagen del kernel al sector del boot
reboot <- reiniciamos

Importante: los pasos anteriores debes realizarlo solamente si sabes lo que haces. Personalmente, luego de hacer este tipo de cosas, tengo que reinstalar los controladores de mi tarjeta NVIDIA, puesto que en la re-instalación de los módulos la configuración anterior se pierde. NO me hago responsable de cualquier daño o problema que puedas tener siguiendo esta guía, aunque te ayudaré con gusto si eso pasa.

La verdad esta primera parte del tutorial no la debí haber explicado tan detalladamente, pero así soy. En realidad hubiera bastado con decir: para el siguiente paso debes tener el kernel correctamente configurado y funcionando. Pero bueno, una ayuda de más no sobra.

2. Compilando los drivers

Explicación: de nuevo, no debería explicar este tipo de cosas pero bueno, soy un tipo de buen corazón y me hubiera gustado que alguien me explicara cuando estaba aprendiendo. La cosa es que los drivers que se incluyen en el kernel, y los que puedes conseguir en linuxwireless.org, vienen escritos para funcionar “normalmente”. En este caso, puesto que  necesitamos inyectar tráfico, es necesario modificarlos un poco. Algunas hackers muy amablemente proporcionan parches que pueden aplicarse fácilmente; el problema es que dichos parches son difíciles de mantener ya que es necesario hacer uno nuevo cada vez que en linuxwireless.org liberen una nueva versión de los drivers.

El procedimiento normal sería el siguiente:

  • Descargar los drivers adecuados de http://www.linuxwireless.org/en/users/Download. Debes buscar la versión compat-wireless-2.6, si usas el kernel 2.6.xx como yo.
  • Descargar los parches para mac80211, de esta página: http://patches.aircrack-ng.org/. En mi caso descargué el parche mac80211_2.6.27_frag+ack_v2.patch, puesto que es el que le sirve a mi kernel 2.6.27.
  • Aplicar los parches.
  • Compilar e instalar.

Todo ello se puede hacer ejecutando los siguientes comandos:

cd ~
tar xjf compat-wireless-*
cd compat-wireless-2009-*
wget http://patches.aircrack-ng.org/mac80211_2.6.27_frag+ack_v2.patch
patch -p1 < mac80211_2.6.27_frag+ack_v2.patch
make
make install
make unload; rmmod ssb mac80211 cfg80211
make load
echo options iwlagn swcrypto=1 >> /etc/modprobe.d/options

Todo parece muy sencillo; si te funciona de una vez, ya puedes saltar a la siguiente sección. El problema es que, como comentaba en la anterior explicación, algunas veces los parches no están lo suficientemente actualizados, y podrían no funcionar. Así que muchas veces, nos toca aplicarlos manualmente. Para ello examinamos el contenido del parche (cat mac80211_2.6.27_frag+ack_v2.patch):

diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index 0855cac..221bed6 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -630,6 +630,13 @@ ieee80211_tx_h_sequence(struct ieee80211_tx_data *tx)
int tid;
/* only for injected frames */
+    if (unlikely((info->flags & IEEE80211_TX_CTL_INJECTED) &&
+       !(tx->sdata->u.mntr_flags & MONITOR_FLAG_COOK_FRAMES))) {
+        if (!ieee80211_has_morefrags(hdr->frame_control))
+           info->flags |= IEEE80211_TX_CTL_NO_ACK;
+        return TX_CONTINUE;
+    }
+
if (unlikely(ieee80211_is_ctl(hdr->frame_control)))
return TX_CONTINUE;

Un poquito enrredado ¿verdad? Pero básicamente significa lo siguiente:

  • Se debe modificar el archivo a/net/mac80211/tx.c
  • La modificación se realizará en la función ieee80211_tx_h_sequence(struct ieee80211_tx_data *tx)
  • Debemos añadir una porción de código entre las líneas int tid; y if (unlikely(ieee80211_is_ctl(hdr->frame_control)))

Eso lo podemos hacer con un simple editor de texto. Aclaro: al momento de escribir esta guía, el parche luce tal como lo puse arriba; quizás cuando leas esto ya habrá cambiado, por lo tanto debes adaptarlo a tus necesidades.

3. Inyectando

En esta sección vamos a probar si, una vez que hayamos instalado los drives, podemos realizar una inyección correctamente. Cabe aclarar que es necesario tener instalado la suite de programas de aircrack-ng (si es posible, la últimaversión 1.0 rc1). Ahora debemos poner nuestra interfaz de red inalámbrica en modo Monitor:

airmon-ng start wlan0

Una vez hecho esto, ejecutamos el siguiente comando para probar la inyección:

aireplay-ng -9 wlan0

O mejor aún:

aireplay-ng -9 -e XXXXX -a YY:YY:YY:YY:YY:YY wlan0

Donde, XXXX es el ESSID del Acces Point con el que estamos practicando, YY:YY:YY:YY:YY:YY es la MAC Address (BSSID) del Access Point. Si lo hacemos así nos aseguramos de inyectar paquetes solo al Access Point indicado (no queremos hacer nada con el AP del vecino), además que es mucho más rápido.

¿Cómo obtener el ESSID y BSSID del AP? Lo más sencillo es que, antes de poner la tarjeta en modo Monitor, ejecutemos el comando iwlist wlan0 scan, que nos proporciona información acerca de todos los AP al alcance. También podrías ejecutar el comando airodump-ng wlan0 para realizar un escanéo básico.

En todo caso, cuando todo resultó bien, veremos algo como esto:

09:23:35 Waiting for beacon frame (BSSID: YY:YY:YY:YY:YY:YY) on channel 9
09:23:35 Trying broadcast probe requests...
09:23:35 Injection is working!
09:23:37 Found 1 AP
09:23:37 Trying directed probe requests...
09:23:37 YY:YY:YY:YY:YY:YY - channel: 9 - 'XXXX'
09:23:39 Ping (min/avg/max): 1.827ms/68.145ms/111.610ms Power: 33.73
09:23:39 30/30: 100%

Información relevante y sitios de interes

Nota: para esta entrada, NO cuentan los incentivo$ por corregir errores ortográficos. No he tenido tiempo para leer el documento al menos una vez, por lo que de seguro debe tener errores. Claro, si quieres puedes reportarlos D




Contacto

Cuestiones, sugerencias, criticas,...

Manual LyX: Con “L” de LaTeX

Descarga el manual ya



¡Lanzado! Descarga la versión 0.1

¡Ya van más de 450 descargas!

Ubuntu Karmic Koala

Ciencia Sin Tijeras

No al recorte en I+D

Firefox 3

Firefox 3

Feed RSS

Feed RSS



To translate / Traduire

Frases

Busco frases para realizar una colección sobre Linux, software libre e informática en general

Han pasado (+130000)

  • 187,460 bioinformatiquillos

Archivos

USE FIREFOX

No al soporte gratuito a Microsoft

No use Windows, los gatitos se la agradecerán

Creative Commons License

Esta obra está bajo una licencia de Creative Commons.