Descifrando al César en Bash

Después de ver cómo se descifra al César en Python, me he encontrado con un par de maneras elegantes de hacerlo desde Bash. Cifrado César Con tr: $ echo "lorem ipsum dolor sit amet" | tr 'a-z' 'd-za-c' oruhp lsvxp groru vlw dphw $ echo "oruhp lsvxp groru vlw dphw" | tr 'd-za-c' 'a-z' lorem ipsum dolor sit amet Con sed también se puede conseguir, aunque es bastante más laborioso: $ echo "lorem ipsum dolor sit amet" | sed -e "y/abcdefghijklmnopqrstuvwxyz/defghijklmnopqrstuvwxyzabc/" oruhp lsvxp groru vlw dphw $ echo "oruhp lsvxp groru vlw dphw" | sed -e "y/abcdefghijklmnopqrstuvwxyz/defghijklmnopqrstuvwxyzabc/" lorem ipsum dolor sit amet ROT13 Con tr: ...

February 16, 2011 · 1 min · 205 palabras · Nacho Cano

Descifrando al César en Python

Si lo que pretendemos es, dada una cadena, sustituir una serie de caracteres por otra, en Python es tan sencillo como pasarle al método maketrans una cadena con los caracteres que queremos cambiar y otra con los caracteres a utilizar en su lugar. Ambas cadenas deberán tener la misma longitud. Este método devuelve una tabla de traducción, un objeto susceptible de ser usado por el método translate el cual se aplica sobre un string, como veremos. ...

February 16, 2011 · 5 min · 935 palabras · Nacho Cano

Cambiar la dirección MAC

A veces, nos puede interesar cambiar la MAC de nuestra tarjeta de red, ya sea porqué nos conectamos a una red en la que no queremos que quede registrada nuestra MAC real (todavía se podría ser más paranoico), ya sea porqué hay un filtrado por MAC y la nuestra no se encuentra en la lista de las MAC autorizadas para conectarse. Fuente: wikipedia Para conocer la MAC de nuestras interfaces de red: ...

February 9, 2011 · 2 min · 413 palabras · Nacho Cano

32 ó 64 bits

Para saber si el procesador es de 64 bits, ejecutamos el siguiente comando: $ grep flags /proc/cpuinfo | grep -Eo " lm " && echo "64" || echo "32" 32 Otro comando que nos dirá si la arquitectura es de 32 ó 64 bits es lshw: $ sudo lshw -C CPU | grep width width: 32 bits Para saber si el sistema operativo es de 32 ó 64 bits ejecutamos el siguiente comando: $ getconf LONG_BIT 32 $ uname -m i686 $ arch # es lo mismo que la anterior i6868 Otro comando útil es dpkg-architecture: ...

January 18, 2011 · 1 min · 116 palabras · Nacho Cano

SWI-Prolog conoce el sentido de la vida, del universo y de todo lo demas

Ejecutamos swipl, uno de los compiladores de Prolog libres: $ swipl Y si le interrogamos por el valor de una variable de la cual no puede inferir ningún valor… % library(swi_hooks) compiled into pce_swi_hooks 0.00 sec, 2,060 bytes Welcome to SWI-Prolog (Multi-threaded, 32 bits, Version 5.8.2) Copyright (c) 1990-2009 University of Amsterdam. SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. Please visit http://www.swi-prolog.org for details. For help, use ?- help(Topic). or ?- apropos(Word). ?- K. % ... 1,000,000 ............ 10,000,000 years later % % >> 42 << (last release gives the question)

January 18, 2011 · 1 min · 104 palabras · Nacho Cano

Personalizando el arranque gráfico en Ubuntu Maverirk Meerkat

Tras arreglar un par de problemas que tenía con el arranque, ya que estamos, vamos a darle un toque distinto al asunto. Temas de Plymouth Instalamos algunos de los temas para Plymouth: $ sudo apt-get install plymouth-theme-{fade-in,glow,sabily,script,solar,spinfinity,text,ubuntu-logo,text} Cambiamos por el que queramos: $ sudo update-alternatives --config default.plymouth Y actualizamos el initramfs: $ sudo update-initramfs -u Cuando reiciniemos habremos cambiado el tema de Playmouth. Splashscreen de Grub2 Editamos el archivo /etc/grub.d/05_debian_theme, y modificamos la línea: WALLPAPER="/usr/share/images/desktop-base/moreblue-orbit-grub.png" para que apunte a la ruta de la imagen que queramos. ...

January 18, 2011 · 1 min · 128 palabras · Nacho Cano

Solución de problemas con Plymouth y ATI en Ubuntu Maverick Meerkat

Se conoce que tras actualizar a Maverick Meerkat, incluso de Karmic a Lucid, algo pasaba con Playmouth, de tal manera que utilizaba una resolución inadecuada. La solución parece depender en algunos casos de la tarjeta gráfica que tengamos, así que describiré la que me funcionó con una ATI Radeon: $ lspci | grep vga 01:00.0 VGA compatible controller: ATI Technologies Inc M92 [Mobility Radeon HD 4500 Series] Instalamos el paquete v86d: $ sudo aptitude install v86d Comprobamos las resoluciones que podemos poner: ...

January 18, 2011 · 3 min · 500 palabras · Nacho Cano

w00t w00t

Si revisamos los logs del servidor web, de vez en cuando aparecen toda una serie de peticiones del tipo: 193.108.81.203 - - [12/Jan/2011:16:48:31 +0100] "GET /w00tw00t.at.blackhats.romanian.anti-sec:) HTTP/1.1" 404 488 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:34 +0100] "GET /db/scripts/setup.php HTTP/1.1" 404 471 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:35 +0100] "GET /mysql/scripts/setup.php HTTP/1.1" 404 473 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:35 +0100] "GET /typo3/phpmyadmin/scripts/setup.php HTTP/1.1" 404 480 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:38 +0100] "GET /phpmyadmin/scripts/setup.php HTTP/1.1" 404 477 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:38 +0100] "GET /pma/scripts/setup.php HTTP/1.1" 404 472 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:39 +0100] "GET /web/phpMyAdmin/scripts/setup.php HTTP/1.1" 404 479 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:39 +0100] "GET /xampp/phpmyadmin/scripts/setup.php HTTP/1.1" 404 480 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:39 +0100] "GET /web/scripts/setup.php HTTP/1.1" 404 472 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:39 +0100] "GET /websql/scripts/setup.php HTTP/1.1" 404 474 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:40 +0100] "GET /webadmin/scripts/setup.php HTTP/1.1" 404 476 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:40 +0100] "GET /sqlweb/scripts/setup.php HTTP/1.1" 404 474 "-" "ZmEu" 193.108.81.203 - - [12/Jan/2011:16:48:40 +0100] "GET /websql/scripts/setup.php HTTP/1.1" 404 474 "-" "ZmEu" En este caso, la IP parece ser del Reino Unido, pero va variando, así como la petición característica que hace al principio y el user agent del final, “Zemu”. En otras ocasiones, la petición es /w00tw00t.at.ISC.SANS.DFind:). ...

January 17, 2011 · 4 min · 698 palabras · Nacho Cano

pci_add_option_rom: failed to find romfile "pxe-rtl8139.bin"

Trasteando con qemu y Damn Small Linux, creamos una imagen de disco de 500 MB: $ qemu-img create -f qcow hd-500m.img 500M Y lanzamos el programa: $ qemu -hda hd-500m.img -cdrom dsl-4.4.10.iso -boot d -m 128 -localtime En seguida nos aparece el siguiente mensaje: pci_add_option_rom: failed to find romfile "pxe-rtl8139.bin" El error que aparece, aunque no evita que la distribución arranque, se debe a que en Ubuntu, por defecto, no están instalados los binarios para permitir que el sistema operativo emulado arranque por red. ...

January 14, 2011 · 1 min · 96 palabras · Nacho Cano

Optimizar el rendimiento de Flash

Leyendo el blog Usemos Linux, veo que podemos optimizar el rendimiento del uso de Flash, configurando el complemento para que no realice algunas comprobaciones de la GPU, con lo que se alivia el consumo de CPU y de memoria. Sin embargo, no en todos los casos se conseguirá esta mejora del rendimiento. Esto dependerá de: el contenido debe estar preparado para utilizar la GPU, de lo contrario, la reproducción hasta podría volverse más lenta. los requerimientos de hardware para la GPU en el modo GPU son importantes. no se puede garantizar la fidelidad de los píxels, ya que podrían cambiar de color. no importa si el frame rate está por encima de 60, nunca será superior. De hecho, podemos esperar que sea entre 50 y 55 fps. no se debería usar, o abusar, del modo GPU para todo el contenido Flash que se utilice en una página, ya que degradaría bastante la respuesta del navegador. el rendimiento también depende de los fabricantes y sus controladores. Para configurar el complemento, deberemos crear el fichero de configuración mms.cfg. Ejecutamos: ...

January 11, 2011 · 1 min · 203 palabras · Nacho Cano