Crackeando y Depurando ( #1 )

Y por aquí seguimos... parece que me lo vuelvo a tomar en serio... ya veremos cuánto me dura.

Mi amiguete d4ni, me dijo que cuándo iba a empezar a hablar un poco de los cracks, desemsamblar programas y tal...

Es que a mi colega le encanta trastear con los porgramas, siempre me anda picando para que haga no se qué, para que intente crackear el programita 'X', mil cosas. Así que hoy vamos a empezar con lo básico.

Primero una herramienta básica de muy bajo nivel (por decirlo de alguna manera): strace - system trace-. Básicamente muestra en el terminal las llamadas del sitema que realiza el programas que ejecutéis.

Tan fácil de probar como hacer:

-$ strace ls

Podréis ver todas las llamadas al sistema que hace - mmap2(..., access(... -, los ficheros que abre - open(... - y más o menos todo lo que hace un ls. Podéis probar con cualquier ejecutable o programa, y veréis a que va llamando.

También tenemos en linux una herramienta de depuración, para mí bastante decente, que es el gdb, normalmente viene instalada en Ubuntu por defecto. Es un programa que funciona por línea de comandos, existe su versión gráfica -gdb-, pero de esa hablaré en el próximo post dedicado a este tema. Voy a hablar un poco de cómo usarlo y las cuatro cosillas un poco básica que yo creo que son necesarias para empezar. Como con todo, lo ideal es empezar con algún tutorial y/o con ayuda de google y esas cosillas.

Bueno, pues vamos a hacer un pequeño ejemplillo que me he currado, es una tontería muy gorda, pero para empezar está muy bien. Os debo aclarar que para todo esto de los cracks y de "debuggear" hay que saber un poco de lenguaje ensamblador y algo del funcionamiento de los programas, con su pila y sus cosillas. Yo no sé mucho, un poquillo, lo justo - y ni eso - para poder trastear, así que a poquito que sepáis o seáis espabilaillos esto lo pillaréis más o menos rápido.

Lo dicho, aquí tenéis un ejecutable para Linux. Os diría que os lo descarguéis y lo ejecutárais, pero a lo mejor sois muy excépticos y no queréis jugároslo a correr un programa de a saber quién. Aquí tenéis el código fuente, lo suyo sería no mirarlo, y empezar con el ejecutable para que no veáis lo que hace ni como lo hace el programa y aprendáis más sobre la depuración de programas. Pero, bueno si lo que hacéis es bajaros el fuente, y echándole un vistazo rápido, para ver que no hay nada malo, pero tampoco viendo lo que hace, que si no no tiene gracia. Que me lío, ahora hacéis:

$ gcc -o crack crack.c

Y ya tenéis el ejcutable. Ahora ya tengáis el ejecutable mío descargado, o el vuestro compilado, lo ejecutamos, y veremos que es un progrmas tonto que nos pide una clave, si la introducimos bien nos da un "OK", sino un "FALLASTE".

Una vez visto el ejecutable, continuamos haciendo:

$ file crack

Y os dirá:

ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), not stripped

Lo importante de aquí es el "not stripped", que significa que el ejecutable tiene los símbolos incluídos, que más o menos quiere decirque mantiene los nombres (los importantes) del código fuente. Esto quiere decir que mantiene el "main", que es donde empieza el programa, por que si el ejecutable fuera "stripped", el ejecutable empezaría en "_start".

Ahora hacemos:

$ objdump -D crack >> crack.asm

$ gedit crack.asm

Y veremos todas las funciones del ejecutable en ensamblador.

Empezemos ahora con nuestro gdb:

$ gdb crack

Con esto cargamos nuestro ejecutablesi ahora escribimos

(gdb) run

nuestro porgrama correrá más o menos igual que si lo ejecutáramos normalmente, aunque éste nos avisa del motivo de como termina.

Para poner puntos de ruptura se hace con 'b' o 'break' y donde queremos ponerlo.

(gdb) b 1 -> pone un punto de ruptura en la línea 1

(gdb) b main -> pone un punto de ruptura en la función main

Hemos podido poner un breakpoint en la función main por que esta existe y se llama igual, por que si la buscáis en crack.asm está:


080483d4 <main>:

sino también podemos hacer:

(gdb) b *0x080483d4

que es lo mismo, pero si otro ejecutable no tiene la función main, o lo que quieres es poner el punto de ruptura en otor sitio, con poner la dirección es suficiente (OJO!, no os olvidéis del '*').

Ahora vayamos al grano. Si buscamos en crack.asm el main, veremos lo que viene a ser el meollo del programa:


080483d4 <main>:
80483d4:    8d 4c 24 04          	lea    0x4(%esp),%ecx
80483d8:    83 e4 f0             	and    $0xfffffff0,%esp
80483db:    ff 71 fc             	pushl  -0x4(%ecx)
80483de:    55                   	push   %ebp
80483df:    89 e5                	mov    %esp,%ebp
80483e1:    51                   	push   %ecx
80483e2:    83 ec 24             	sub    $0x24,%esp
80483e5:    c7 04 24 0c 85 04 08 	movl   $0x804850c,(%esp)
80483ec:    e8 3f ff ff ff       	call   8048330 <printf@plt>
80483f1:    8d 45 f8             	lea    -0x8(%ebp),%eax
80483f4:    89 44 24 04          	mov    %eax,0x4(%esp)
80483f8:    c7 04 24 34 85 04 08 	movl   $0x8048534,(%esp)
80483ff:    e8 1c ff ff ff       	call   8048320 <scanf@plt>
8048404:    8b 45 f8             	mov    -0x8(%ebp),%eax
8048407:    3d 31 d4 00 00       	cmp    $0xd431,%eax
804840c:    75 15                	jne    8048423 <main+0x4f>
804840e:    c7 04 24 37 85 04 08 	movl   $0x8048537,(%esp)
8048415:    e8 26 ff ff ff       	call   8048340 <puts@plt>
804841a:    c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
8048421:    eb 13                	jmp    8048436 <main+0x62>
8048423:    c7 04 24 3b 85 04 08 	movl   $0x804853b,(%esp)
804842a:    e8 11 ff ff ff       	call   8048340 <puts@plt>
804842f:    c7 45 e8 ff ff ff ff 	movl   $0xffffffff,-0x18(%ebp)
8048436:    8b 45 e8             	mov    -0x18(%ebp),%eax
8048439:    83 c4 24             	add    $0x24,%esp
804843c:    59                   	pop    %ecx
804843d:    5d                   	pop    %ebp
804843e:    8d 61 fc             	lea    -0x4(%ecx),%esp
8048441:    c3                   	ret

Vemos que hay un scanf:


80483ff:	e8 1c ff ff ff       	call   8048320 <scanf@plt>

que es donde recoge lo que introducimos por teclado. Pues vayamos ahí:

$ gdb crack

(gdb) b 0x80483ff

(gdb) run

Se nos parará en el breakpoint

Si hacemos

(gdb) x/10i $eip

nos mostrará en hexadecimal las 10 instrucciones siguientes desde donde estamos (desde el contador de programa, que es el 'eip', pero hay que indicarlo con el '$'):


0x80483ff <main+43>:    call   0x8048320 <scanf@plt>
0x8048404 <main+48>:    mov    0xfffffff8(%ebp),%eax
0x8048407 <main+51>:    cmp    $0xd431,%eax
0x804840c <main+56>:    jne    0x8048423 <main+79>
0x804840e <main+58>:    movl   $0x8048537,(%esp)
0x8048415 <main+65>:    call   0x8048340 <puts@plt>
0x804841a <main+70>:    movl   $0x1,0xffffffe8(%ebp)
0x8048421 <main+77>:    jmp    0x8048436 <main+98>
0x8048423 <main+79>:    movl   $0x804853b,(%esp)
0x804842a <main+86>:    call   0x8048340 <puts@plt>

Como podéis ver es bastante parecido al crack.asm. Ahora hay varias formas de ir avanzando por el programa:

(gdb) n -> o next sigue ejecutando el programa. Lo que ocurre que no se parará hasta que éste termine o llegue a otro breakpoint.

(gdb) nexti -> basicamente avanza hasta la siguiente instrucción. Pero si entrar en la instrucción que ejecuta.

(gdb) stepi -> muy parecido a nexti, lo único que en este caso si que se introduce en la instrocción que ejecutamos. Por ejemplo, si la instrucción a ejecutar es una llamada a una función, stepi entraría en ella, y nexti ejecutaría toda la función pero no veríamos nada de ésta.

Total que si miramos las instrucciones nos damos cuentas de que primero se llama a la función 'scanf':


0x80483ff <main+43>:    call   0x8048320 <scanf@plt>

Después recoge lo tecleado y lo mueve a eax


0x8048404 <main+48>:    mov    0xfffffff8(%ebp),%eax

Si una vez ejecuta esta instrucción, hacemos:

(gdb)p $eax

veremos que en 'eax' está guardada la contraseña que nosotros hemos introducido.

Y después vemos.... ¡¡¡OHHHH!!!, vaya, hace una comparación de 'eax' con un número decimal. Uhhhmmmm, y si no coincide salta a la dirección 0x8048423, e imprime algo y termina:


0x8048423 <main+79>:    movl   $0x804853b,(%esp)
0x804842a <main+86>:    call   0x8048340 <puts@plt>
y si no continúa e imprime otra cosa diferente y termina:


0x804840e <main+58>:    movl   $0x8048537,(%esp)
0x8048415 <main+65>:    call   0x8048340 <puts@plt>
0x804841a <main+70>:    movl   $0x1,0xffffffe8(%ebp)
0x8048421 <main+77>:    jmp    0x8048436 <main+98>

Pues ya está, hemos depurado y crakeado un programa MUUUUUUYYYYY estúpido, pero por algo hay que empezar.

Dentro de poco, vendrá la segunda parte de este post, y empezaremos con cositas un poco más serias, no demasiado, que si no, no podré enseñaros, jejejeje.

Espero que os sirva de algo, y os entretenga si tenéis tiempo suficiente como para "desperdiciar con esto", ;).

Un saludo.

Un poquito más de música

A partir de ahora voy a poner algún que otro videoclip de las canciones que más me gustan. Seguramente la mayoría sean de Hip-Hop, pero quién sabe.

Empezaremos con un tema de SFDK que me encanta, tiene un base que es genial, a mí personalmente me parece muy buena:

¡K-NON!

Bueno, para comenzar este nuevo año, una pequeña reflexión:

Imaginaos, poneos en la situación, que os vais a comprar un coche. Habéis ahorrado durante mucho tiempo, tenéis vuestro dinerillo, os habéis pasado meses y meses mirando revistas, yendo a concesionarios, buscando la mejor oferta calidad-precio..., mil historias. Y ahora por fin estáis enfrente del vendedor, firmando mil papeles, que si el seguro, que si fotocopias, que si la financiación, pero bueno, va a ser tu coche, y tu has elegido meterte en este berenjenal.

Y cuando por fin firmas el último papel, y solo falta que te den la llaves para llevártelo de allí, aparece por la puerta un cartero que te da una carta certificada. “¿Pero que coño...?”, bueno la abres mientras estás flipando, y ¿qué te encuentras? Una multa del SER (Servicio Estacionamiento Regulado) – 60€. Otra multa por mal aparcamiento – otros 60€. Una multa por exceso de velocidad – 120€ y tres puntos menos. Otra por consumo de alcohol – 120€ y dos puntos menos. Y otra por saltarse un semáforo – 120€ y dos puntos menos.

En este momento, miras para atrás a ver si hay alguna cámara oculta, o piensas que es una inocentada... pero ¡no! Te das cuenta de que detrás de todas esas multas hay una carta, así que decides leerla, para intentar salir de tu estado de estupefacción.

“Estimado comprador de un vehículo:
Después de haber realizado un estudio muy serio sobre los hábitos de los conductores en nuestro país, nos hemos dado cuenta que la gran mayoría realiza habitualmente infracciones de tráfico cada vez que coge su vehículo. Y debido a que no podemos llenar las calles y carreteras de métodos para poder evitar y sancionar dichas infracciones, hemos tomado como alternativa, el sancionar directamente a todo aquel que se compre un vehículo, ya que por probabilidad, seguramente realizará todas las infracciones, por las que usted acaba de ser castigado.
                Atentamente la autoridad competente.”

¡VENGA COÑO! Se te acaba de quedar una cara de tonto que no te reconocería ni tu madre. ¿Y ahora qué haces? ¿Te quejas? ¿Para qué?, si no va a servir de nada; toda esta mierda ha sido aceptada como ley, y no hay nada que hacer. Así que si quieres un coche y conducir, pues a parte de todo lo propio de un coche, pagas los casi 500€ y te quedas con 7 puntos menos o te quedas sin coche.

Pero no os preocupéis........ que no hay que pagar multas antes de comprarse un coche (todavía no), pero si hay que pagar una “multa” cada vez que te compres un CD o un DVD o una memoria o un teléfono o un disco duro o una RAM o una PDA o un USB o...ufffff ufffff que me quedo sin aire, por que a unos se le ha ocurrido que como algunas personas piratean música y películas (seguramente por que comprar una película original, un disco de música, ir al cine o mil cosas más te cuesta un ojo de la cara), pues han decidido poner un pequeño complemento monetario a todos estos utensilios para que entre todos nosotros (seamos o no piratas) les paguemos a estos señores sus pérdidas, por que no han sabido encontrar una solución decente al gran problema de la piratería. Bueno, seguramente la encontraron, pero eso de bajar los precios no va con ellos. Pero el peor de todos los problemas, nos es que se les haya ocurrido subir el precio de todo lo que lleve un transistor que pueda guardar información, lo peor es que se lo hayan permitido y les hayan dejado hacer todo lo que se les haya ocurrido.

Para mí un paso hacia atrás de lo más grande que se podría hacer. Pero bueno que hagan lo que quieran, como siempre.

Un saludo. 

Hola... de nuevo

Bienvenidos a este nuevo año, el 2008.

Como dice un amigo mío,bueno amigo amigo :), os queda un año menos!

Mi intención era pedir perdón y poner alguna que otra explicación/excusa por mi ausencia y vaguería con lo que respecta a mi querido blog y a mis queridos bloggers fieles (que la verdad creo que tengo alguno que otro). Pero he decido no hacerlo y simplemente intentar arreglar todo este desparpajo de desatención poniéndome al día, publicando de nuevo posts por aquí y haciendo algo más de caso a este “monstruo” que he creado llamado 'Mi Ubuntu y Yo'.

Así que como primer comentario....... ¡¡¡Me han meneado!!!

Sí, de repente un día tuve ¡¡¡ 8246  visitas!!! Madre mía, ¿qué estaba pasando?, el mundo se estaba volviendo loco... pero no, es que me habían meneado. Así que estoy contento, espero que de esa avalancha de visitas que hubo sobre mi blog, dos o tres personas se hayan hecho adictas o les haya gustado mi sitio y me visiten de vez en cuando (siempre y cuando no hayan dejado de visitarme por mi falta de interés).

Bueno, espero que me veáis por aquí más de vez en cuando.

Un saludo y hasta ahora.

Enjuto mojamuto VS IExplorer

Después de muuuuucho tiempo, vuelvo por aquí.

Siento mucho haberos "dejado de lado", pero no sé que me pasa últimamente que tengo la agenda muy apretada. Pero a partir de ahora voy haber si consigo haceros más caso. Tengo un montón de "proyectos"  por escribir, pero entre que ando muy liado y tengo la cabeza llena de pájaros....

Bueno, excusas a parte, aquí os dejo un bonico vídeo:

Sincronización Creative Zen - Ubuntu

Empecé a escribir este post hace un tiempo, cuando empecé poco a poco a portar todo mi funcionamiento de PC de Windows XP a Linux - Ubuntu.

Por aquel entonces funcionaba con Ubuntu 6.06 y quería poder tener lo mismo que tenía bajo Windows. Así que me puse a conectar mi Zen Micro Photo al ordenador y pasar canciones de un lado a otro y viceversa. Pero ¿qué ocurría? que no me lo detectaba. Bueno, estoy mintiendo, me saltaba una ventana que me decía que había encontrado un dispositivo ¿cámara? y que si me quería descargar las fotos - que en mi caso eran mp3 -. Así que por lo menos podía meter las canciones de mi reproductor al ordenador, pero ¿y al revés?

 

Me puse a googlear  y encontré Gnomad2, un programa basado en GTK+ y que se comunica con el protocolo MTP, que es el usado por la familia Zen de Creative.  Lo instalé

$ aptitude install gnomad2

lo ejecuté

$ gnomad2

pero no me reconocía mi bicho. Así que me puse a buscar como loco como conseguir que lo detectara.

Encontré estos sitios muy útiles:

Creative Zen V Plus con Gnomad2 (Actualizado) (para mí el más completo)

Creative Zen Micro con soporte MTP

Creative Jukebox / Zen MTP MP3 player working in Dapper / Edgy using Gnomad

Instalando el Creative Zen Vision:M en Ubuntu.

Creative Zen Vision:M en linux

Total, que hice todo esto e incluso más, si era posible, pero nada, no sé que es lo que ocurría pero siempre el mismo fallo de que no encontraba ningún dispositivo.

Así que aparqué el post, hasta que lo hiciera funcionar.

Pero el otro día, me dije a mí mismo: "Vamos a comprobar las funcionalidades del nuevo Ubuntu", ya que había instalado hace poco el nuevo Ubuntu, Gutsy Gibbon:

1) Conecto el reproductor MP3, y pasa lo mismo que con el antiguo, ventanita de cámara y tal, pero ningún dispositivo nuevo ni nada.

2) Instalo Gnomad2, sólo Gnomad2 (ninguna librería más ni nada por el estilo, a excepción de las dependencias que me dio el aptitude, que ahora mismo ni siquiera me acuerdo si me dio alguna).

3) Lo ejecuto, conecto el reproductor, le doy a reconocer y ....... ¡BINGO!

4) Ya está, ya puedo hacer lo que me plazca.

Y esta es la historia de Creative Zen y Ubuntu para mí. Un pequeño avance más para quitarnos la lacra de Windows, y no necesitar tenerlo instalado en una "pequeña" partición para ejecutarlos en casos como éste, por que no podemos hacer funcionar nuestro aparatillo por que no hay drivers y/o programas para otros S.O.

Mophant

Mophant 

Vamos a hablar de un proyecto de P2P. Un programa para compartir archivos, etc, etc, etc. Creo que a estas alturas no os voy a enseñar nada nuevo sobre este tipo de programas.

Supongo que la gran mayoría ha usado alguna vez el eMule o el aMule. A mí me gustaba bastante más (para Windows) el lPhant. Bastante más manejable, más amigable,... pero como todo es cuestión de gustos.

Total, que el lPhant no tiene versión para Linux, bueno tiene pero es de línea de comandos.  Así que tenemos este otro programita, Mophant, que es básicamente la versión para Linux.

Ahora mismo está en versión de pruebas, pero te puedes bajar la primera alpha para probarla.

Yo todavía no me la he instalado, pero sí me instalé la beta y supongo que no habrá mucha diferencia.

Este programa está basado en Mono, así que:

$ aptitude install mono

después te descargas la versión alpha y la descomprimes. Es un archivo.zip:

$ unzip <Mophant-Alpha1.zip>

ahora entramos en la carpeta:

$cd Mophant-Alpha1/

$ ls

ICSharpCode.SharpZipLib.dll  Language  mophant.exe

y lo ejecutamos:

$ mono ./mophant.exe

Si os sale cualquier línea al ejecutarlo, es que os va a dar un error y os falta alguna librería. La solución es instalaros todas las librerías mono que os falten, y de la última versión. Para ver que librerías hay:

$ apt-cache search libmono 

y os saldrán unas cuantas, pero para instalároslas , os recomiendo que uséis synaptic, ¿por qué? pues por que así vais a ver cuales tenéis instaladas. y aparte también veréis que hay un montón de librerías "repetidas". Con eso me refiero a que existe la librería libmonoX1.0 y la libmonoX2.0. Pues tenéis
que instalaros todas las librerías (y las que tengan varias versiones, instalaros la última). En el synaptic le dais a buscar y buscáis libmono y os aparecerán todas.

Una vez instaladas todas, repetimos

$ mono ./mophant.exe

y en teoría os debería funcionar. A mí me funcionó así. 

Aquí tenéis un pequeño scriptcillo tonto para ejecutarlo en background desde un terminal y que luego podáis cerrar ese terminal sin que se cierre el Mophant.

$ gedit mophant.sh

#!/bin/bash
mono /<ruta_carpeta_mophant>/mophant.exe &

 lo guardáis, le dáis permisos de ejecución

$ chmod +x mophant.sh

y lo ejecutáis en un terminal

$ ./mophant.sh

esperáis a que aparezca la ventana del mophant y ya podéis cerrar el terminal.

Si no entendéis algo, o algo no os funciona, o la instalación de la versión alpha es diferente a la de la beta avisadme para corregirlo.

Ya me contaréis que tal funciona. ami la beta me gustó bastante.

Saludos. 

Liferea y Akregator

Liferea                       Akregator

¿Estás enganchado a leer miles y miles de blogs? ¿Te vuelves loco abriendo miles de ventanas en tu navegador para SÓLO comprobar si hay un post nuevo?

Tus plegarias han sido escuchadas. Ha llegado tu lector de Feed RSS.

¿Y qué es esto? Básicamente, los feed son una páginas XML, que contiene la información de los blogs o páginas que están suscritas. Vamos, coloquialmente, es una página que pone los nuevos comentarios y/o posts que se añaden a cada blog. Y si tienes un lector de RSS, cuando hay un nuevo post, pues este programilla te avisa, y así te ahorras tener que mirar todas tus páginas preferidas.

De los programas que he visto me quedo con dos: Liferea (GNOME) y Akregator (KDE).

Su instalación es sencilla:

$ aptitude install akregator

$ aptitude install liferea

Ahora lo abrís y vais insertando las direcciones de las páginas que os gusten. Algunas veces vale con la dirección principal de la página, otras tendrás que ir a la página, buscar el enlace del feed rss y copiar la ruta. Como or ejemplo:

http://ubuntulife.net/wordpress/?feed=rss2 :)

Es bastante útil. Yo que últimamente estoy leyendo mil sitios y tal, abro el programa que se queda en el Tray System, (yo uso Liferea, por lo de GNOME, pero ambos son parecidos), y le pongo en opciones que me actualice la lista cada hora, y si hay algún nuevo post en los blogs que me gustan me avisa y si no pues nada, pero no tengo que andar liado mirando una a una tooooodas las páginas.

Instalación Ubuntu 7.10 Gutsy Gibbon

Bien, como habréis podido comprobar, todo el mundo está ya instalándose el nuevo Ubuntu.

Hay mil sitios que explican como hacerlo. Y personalmente en todos lo explican de p*** madre. Bastante mejor como creo que podría hacerlo yo. Así que he decidido poneros los enlaces de como hacer la instalación y poner una pequeña explicación de cada sitio al que os recomiendo que leáis.

Contestando, además, a mi  amigo Kartones, sobre si hacer la instalación de Ubuntu desde cero o hacer una actualización os cuento que, personalmente, siempre prefiero hacer la instalación desde cero, para tener un S.O. totalmente limpio y no tener problemas de incompatibilidades. Tal vez esto es debido a mis años como usuario de Windows, que cada 6 u 8 meses había que hacer un format por que el sistema iba lento. Pero bueno, de esta manera (con una instalación nueva), tal vez te pases un par de días dejándolo tal y como lo tenías antiguamente, pero yo lo prefiero así. Pero os repito que es una cuestión personal o una manía mía.

También contaros, que llevo sólo unas horas con Gutsy, pero la sensación es buenísima. Mi portátil, que es por ahora dónde lo tengo instalado - hasta que pueda organizar y dejar arregladito mi Trasto, mi ordenador de sobremesa que todavía depende de Mocosoft, aunque no por mucho- es bastante viejo, para que os hagáis una idea no tiene ni lector de DVD. Bueno que me lío, total que ahora mi portátil va bastante más rápido, más ligero, se calienta muuuuuuuuuucho menos (antes después de media hora, la zona donde está el disco duro estaba calentito calentito), así que estoy muy contento.

En resumen, aquí están los sitios que más me han gustado:

El Mamelón Setígero: El que más me ha gustado, sencillo y al grano. Instalación desde Live CD.

Ubuntu Life: instalate Ubuntu como quieras. Todas las formas, maneras y colores.

Blux 2.0 y GigaBriones: Un vídeo de cómo instalarlo.

Entre Tuxes y Pepinos: Otra muy buena explicación paso a paso de como instalártelo. 

Entre Tuxes y Pepinos: La explicación de actualizarte tu Ubuntu.

El Rap de Bola de Dragón

 Increíble........

A todo aquel que le guste: A) Bola de Dragón y B) el Hip-Hop, aquí tenemos la fusión de ambas.

Gracias Gndx-Blog, hacia tiempo que no escuchaba una canción de Hip-Hop que me gustara tanto, además he descubierto a Porta, otro MC que tiene bastante buena pinta. Aquí os dejo la "obra de arte"

 

La Metáfora del Arquitecto

De lo mejorcito en mucho tiempo.

Leí ayer en GigaBriones, este relatillo, que me hizo tanta gracia (no gracia de risa, sino de lo bien que plasma la puñetera realidad), que he decidido copiarlo aquí:

RING RING (Suena el teléfono)

- Hola, Jose, qué tal

- Hombreeee, Antonio. Cómo estamos?

- Pues mira, te llamo porque quiero comprarme una casa, y como tú eres arquitecto, pues a ver si me puedes aconsejar

- Bueno… a ver. Si quieres quedamos un día y damos una vuelta por unas cuantas immobiliarias, a ver cómo está el panorama

- Cojonodo, tío, ¡luego te invito a una birra eh!

- Vale, pues mañana por la tarde libro, quedamos a las cinco?

- Perfecto, perfecto. Hasta mañana, ¡gracias!

- Veenga, hasta mañana

(AL DÍA SIGUIENTE)

- Bueno, ya hemos visto cuatro o cinco fincas. ¿Qué te parecen?

- No sé, ¿tú qué crees? Como eres el entendido…

- Pues yo de tí me compraba esa casa de cemento, bien situada en la ciudad y que parece acogedora

- ¿De cemento? ¡Pero si yo quiero una casa de papel!

- ¿Pero para qué coño quieres una casa de papel?

- Joder, es lo que tiene todo el mundo, ¿no?

- ¡Pero si son una basura! ¿No me dijiste que precisamente Mariano había perdido la suya durante el último temporal? ¿Que salió volando con todo lo que tenía dentro?

- Es que las casas de cemento son sólo para arquitectos

- ¿Eso no te hace pensar que quizá sean mejores?

- Pero no puedo poner biombos en una casa de cemento, tendría que levantar paredes o tirar muros cuando quiera hacer reformas

- Efectivamente, y eso repercutirá en que tu casa será más segura. ¿No viste que a Luis le entraron hace poco? Se compró una puerta de conglomerado, y un ladrón se la tiró al suelo de una patada

- Mira, dirás lo que quieras, pero yo no me voy a meter en follones. Compraré la casa de papel
- ¿Ni aun a igualdad de precio?
- No

- ¿Entonces para qué quieres mi consejo?

- Nada hombre, te lo agradezco mucho, pero me quedo con la de papel

- En fin…

(AL CABO DE UNA SEMANA)

RIIING

- Hola, ¿Jose?

- Hombre, Antonio, qué tal con tu casa nueva

- Pues de eso te quería hablar. Resulta que quiero poner un par de biombos para separar habitaciones, y te llamaba para ver si me los podrías colocar tú

- ¿Yo? ¿Por qué no llamas al carpintero? ¿No te hicieron un presupuesto global? Puedes decirles que te los coloquen por el mismo precio

- Ya, pero es que me fío más de tí

(Claro, como el día que fuimos a mirar casas)

- Bueeeeno, vale, me pasaré por allí el sábado.

- ¿Puedes traerte biombos de casa?

- ¿Cómorrr?

- Sí, es que como son muy caros pues tú que tienes contactos a ver si puedes robar un par y traérmelos para mí

- ¿No te estás pasando?

- Venga joder, que a tí no te cuesta nada. Si no le digo a mi vecino que me dé un par, que conoce a un tío que se encarga de pillarlos y le salen tirados de precio

- Tú mismo.

(SÁBADO)

- Joder, suerte que vienes, Jose

- ¿Qué pasa?

- Se me ha derrumbado una pared. Es que ayer llovió bastante, se deshizo el papel y me he quedado sin pared

- ¿Te extraña?

- Venga, a ver si me lo puedes arreglar

- (pfffff…) Veré lo que puedo hacer

- Muchas gracias eh, luego te invito a una birra

(LUNES)

RIIING

(Es Antonio… ¿le cojo el teléfono?)

- Jose, Jose

- Quéeeee

- Pues que ayer por la noche mientras estaba en el bar, entró un chorizo en casa y me ha birlado la tele

- ¿Y eso?

- Pues que los biombos que me pasó mi vecino eran robados, y por lo visto alguien tenía una copia de la cerradura

- Normal

- ¿Puedes venir a arreglármelo?

- NO

- Joder tío no seas borde

- SI

- ¿Pero no eres arquitecto? Es que yo no entiendo de esto…

- Ya ví cómo te dejaste aconsejar cuando compraste la casa

- Pero es que yo la quería de papel

- Entonces asume las consecuencias

- Hostia, ¿no me puedes hacer el favor?

- NO. Si quieres te doy el teléfono de una immobiliaria que se dedica cambiar casas de papel por casas de cemento. Necesitarás hacer alguna reforma, pero como mínimo no te entrarán a robar cada dos por tres ni tendrás que contratar vigilancia privada, ni se derrumbará el techo cuando llueva. Tú mismo.

- Vale, vale, ya lo capto. Llamaré a Felipe para que me venga a arreglar el biombo. Muchas gracias por nada, ¿eh?

- …

Esta situación ocurre todos los días en cualquier punto del planeta, pero en vez de ser el tema la arquitectura y las casas, es la informática. Siempre hay gente que por que eres informático, teleco, o simplemente sabes de ordenadores te pide siempre consejos, que les eches una mano por que tienen un problema o lo que sea, pero después de haberte molestado, arreglarles el problema y decidle cómo evitar esa misma situación, ves como pasan de ti, vuelven a hacer lo mismo y a los tres días te vuelven a llamar.

Pues joder, haced un poco de caso a la persona a la que pedís ayuda, y si os da un consejo, será por que sabe de lo que habla, sino no le pediríais ayuda. Y si tenéis que acostumbraros a un navegador nuevo, a un programa diferente, o dejad de instalar las mil chorradas o barras de búsqueda que os "obligan" a instalar el programa "X" o no se qué, pues dejadlo.

Un saludo.

Lo mejor de la ¿Cocina?

Como me reí con este capítulo de Muchachada Nui:

Pasar paquetes de una máquina a otra sin Internet

Imagina que quieres instalar un programa en una máquina que no tiene conexión a Internet. ¿Cómo hacerlo?

Bueno, es más o menos simple instalarlo si tienes otra máquina con Internet y te lo instalas en ésta última o te lo instalaste. Para que todo esto funcione bien (aunque siempre hay casos en lo que no funciona y nunca te explicas por qué), lo mejor sería que las dos máquinas tuvieran la misma versión de Ubuntu, por que sino, posiblemente tendremos problemas con las dependencias de paquetes, o que en la máquina sin Internet está instalada no se qué versión anterior y te da problemas con otro paquete, o a saber qué (os cuento esto por que intenté el otro día instalar la nueva versión de Python en un Ubuntu Hoary -- sí, es muy antiguo pero es una máquina del curro que no se puede tocar mucho-- y todavía no lo he conseguido).

Total, vayamos al lío. Cada vez que nosotros nos instalamos un programa o utilidad con apt-get install o aptitude install, lo primero que hace el comando es descargarse el paquete.deb y después lo instala. Es exactamente igual que si nos descargamos el paquete, por ejemplo de aquí, y luego lo instalamos con dpkg -i.

Antes de continuar, decir que esta información la he obtenido, entre otros muchos sitios de Ubuntu Life y Entre tuxes y pepinos.

Total, que nosotros cada vez que nos instalamos un paquete, una aplicación o lo que sea usando apt-get install o aptitude install o synaptic, el paquete que nos descargamos se guarda en /var/cache/apt/archives/, así que ahora cogemos de ahí el paquete que queramos lo guardamos en un pendrive y lo llevamos a la otra máquina; hacemos:

$ dpkg -i <el_paquete> 

y listo.

Pero si lo quieres hacer más profesional lo podemos hacer así:

Copiamos los paquetes que queremos a una carpeta:

$ cd  /home 

$ mkdir paquetes 

$ cp /var/cache/apt/archives/<paquetes_deb> /home/paquetes 

ahora nos informamos de cada uno de ellos de que depende por si queremos descargarnos sus dependencias por si acaso (por ejemplo de esta página):

$ aptitude show <paquete_a_informarnos> 

y aparecerá algo así:

$ aptitude show unrar

Paquete: unrar
Estado: sin instalar
Versión: 1:3.7.3-1~edgy1
Prioridad: opcional
Sección: multiverse/utils
Desarrollador: Martin Meredith <mez@ubuntu.com>
Tamaño sin comprimir: 233k
Depende de: libc6 (>= 2.4-1), libgcc1 (>= 1:4.1.1-12), libstdc++6 (>= 4.1.1-12)
Tiene conflictos con: rar (<= 2.60-1)
Descripción: Unarchiver for .rar files (non-free version)
Unrar can extract files from .rar archives. If you want to create .rar
archives, install package rar.
 
This package is auto-buildable
 
Homepage: http://www.rarlabs.com/

y como verás te dice de qué depende y con qué tiene conflictos. Esto puede ser un poco pesado, sobre todo con paquetes grandes o con versiones distintas en las máquinas, pero es lo que hay.

Luego, una vez que lo tenemos TODO (vaya ilusos que somos, fijo que nos falta siempre alguna cosilla), hacemos lo siguiente:

$ cd /home/

$ dpkg-scanpackages paquetes /dev/null | gzip > paquetes/Packages.gz<

Lo que hacemos con el comando dpkg-scanpackages es leer todos los archivos *.deb que tenemos en el directorio y creamos el archivo Packages.gz con gzip que luego más adelante indicará a la máquina donde lo instalemos que paquetes hay.

Guardamos Packages.gz en el pendrive y lo llevamos al otro ordenador. Lo descomprimimos en algún sitio y editamos /etc/apt/sources.list y añadimos:

deb file:/<ruta_y_nombre_de_donde_hemos_descomprimido>

guardamos,

$ apt-get update

y ahora

$ aptitude install <los_paquetes>

Bueno, parece lioso (incluso puede llegar a serlo) pero espero que os funcione y os sea útil.

Un saludo. 

Ubuntu Gutsy Gibbon

Ya andamos todos bastante histéricos. Cada vez esté más cerca el día que salga la nueva versión de Ubuntu. Las fechas son:

4 de Octubre: Versión final del Kernel.

11 de Octubre:ReleaseCandidate finalizada.

18 de Octubre: Versión final de Ubuntu Gutsy Gibbon.

Los cambios más importantes:

Kernel 2.6.22

Gnome 2.20

El nuevo Ubuntu consume mucha menos batería, las máquinas se calientan menos y se necesita menos trabajo de CPU.

Compiz Fusion activado si tu tarjeta gráfica lo puede soprtar.

Mejorado el gestor de drivers privativos.

Configuración gráfica para las X11.

Instalación automática de las impresoras.

AppArmor incluído, para mayor seguridad.

"Customizar" Firefox

 Firefox 

Uffff, perdonar la tardanza. Ya me gustaría publicar todos los días, pero entre pitos y flautas últimamente no paro. Bueno, ahora que tengo un ratillo, ahí va:

Aunque está apunto de salir la versión de Firefox  3.0 o Gran Paradiso , voy a contaros unos truquillos que llevo usando desde hace mucho tiempo, y otros que leí el otro día en el Blog de Kartones  para que el Firefox que tenéis os inicie un poco más rápido, no consuma tanta RAM y las páginas se carguen más deprisa.

Abrid una ventana de Firefox, y en la "pestaña"  de rutas escribid about:config. Se os abrirá una ventana con toda la configuración de Firefox.

Acelerar la carga de las páginas:

Ahora buscad estas claves network.http.pipelining y network.http.proxy.pipelining y cambiad su valor de FALSE a TRUE. Ahora cambiar el valor de network.http.pipelining.maxrequests a 30. Con todo esto hemos permitido la carga de varias páginas a la vez.

Creamos ahora un entero llamado nglayout.initialpaint.delay y le ponemos con valor 0. Así no esperamos a que firefox nos muestre la información recibida.

Y por último cambiamos los valores de las siguientes claves (las que no encontréis, os las creáis como enteros o strings): network.dns.disableIPv6 a FALSE, content.notify.backoffcount a 5, plugin.expose_full_path a TRUE y ui.submenuDelay a 0.

Reducir Memoria RAM utilizada en minimizado (10Mb):

Vamos a crear un booleano llamado config.trim_on_minimize y le damos como valor TRUE.

Reducir uso de memoria RAM:

Buscamos browser.sessionhistory.max_total_viewer  y le cambiamos a 0 su valor.

Controlar caché:

Buscamos browser.cache.memory.capacity y le damos un valor pequeño. Determina si la cache de Firefox ha de usar memoria RAM. Cuanto menor sea el número menos memoria RAM ocupará, pero también disminuirá el rendimiento de Firefox. Ahí jugad un poco con los valores.

Después de todo esto reiniciáis Firefox, y notaréis cómo va más deprisa.

More Posts Next page »