domingo, 3 de noviembre de 2013

Instalar windows xp desde una memoria usb. Linux.

Hay mucha información por la red y algunos programas que te permiten poner una iso en el pendrive. Luego nunca arrancan o se cuelgan o lo que sea. No funciona ningún método... ¿ninguno?

Desde linux es complicado, porque aunque hay por lo menos un método válido este es un programa para windows basado en grub4dos que no tiene equivalente en linux. Una pista, estudiando el archivo menu.lst se puede comprobar que desde linux se podría hacer perfectamente (creo que requeriría un poco de trabajo extra).

Al grano,
VBoxManage internalcommands createrawvmdk -filename /home/user/VirtualBox/sda.vmdk -rawdisk /dev/sda
me ha permitido acceder al disco duro desde una máquina virtual, con lo que he podido instalar sin problemas el XP en la partición que tenía reservada para él.

Antes de reiniciar hay que acordarse de reinstalar el grub de linux por la razón que ya sabemos.

¿Qué ocurre al reiniciar? Que tenemos una bonita "blue screen of death" diciéndonos que hemos cambiado algún hardware y que no puede arrancar. Lógico, hemos sustituído el hardware virtual por uno real, y windows no está preparado para esos disgustos.

Entonces, ¿la instalación "virtual" de win XP no sirve para nada? Pues sí que sirve, sirve para preparar el pendrive (hay que habilitarlo en virtualbox).

Sólo hay que leer atentamente esta página:


Los drivers para este peazo equipo aquí:


Y ahora voy a ver si me pongo a estudiar un poco porque llevo todo el puente haciendo el calamar. ;)

Ubuntu 13.10

La culpa la ha tenido una tarjeta DVB-T que no he conseguido hacer funcionar con Debian. 

He compilado el módulo del kernel, he descargado el firmware e incluso he sido capaz de editar un archivo genérico es-miciudad para generar un channels.conf con w_scan. 

 Ni me-tv ni kaffeine ni VLC (que no tengo ni idea de cómo coño se ha de configurar) ni siquiera mplayer quieren reproducir todos los canales. Parece como si no llegara la señal con suficiente potencia y he perdido un montón de tiempo revisando cables y conectores. ¿Para qué? para nada, algo se me ha escapado y no sé lo que es. 

 Así que, aprovechando la reciente salida de la última versión de Ubuntu (ya me había olvidado de él, todo hay que decirlo) me he acordado de su proverbial soporte de hardware y le he dado un tiento. En buena hora. 

La mejor versión de Ubuntu que he probado ( a excepción de aquella 10.04, creo, para Netbooks ). 

Rápido como nunca y bastante estable (el reloj de la barra desaparece de vez en cuando y cosas así, es un Debian sid). El escritorio pulidito y los lanzadores muy bien, el menú de Unity la misma mierda de siempre pero, en general, lo han dejado niquelao. Una agradable sorpresa.

martes, 22 de octubre de 2013

No pierdas los apuntes

#####################################################
# #
# #
# ¡NO PIERDAS LOS APUNTES, JODÍO! #
# #
# #
#####################################################


#!/bin/bash

###Guárdalo todo en el mismo directorio.

fecha=`date +%F`
mkdir /mnt/sda7/bckp-APUNTES-$fecha

### Haz unos backups incrementales.

rsync -av --delete /mnt/sda7/home/jorge/APUNTES/ /mnt/sda7/jorge/bckp-APUNTES-$fecha/

### Comprímelos en condiciones.

7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on bckp-APUNTES-$fecha.7z bckp-APUNTES-$fecha
rm -rf /mnt/sda7/jorge/bckp-APUNTES-$fecha/

### y lo subes a tu nube como te parezca.

### También puedes respaldar todo tu sistema operativo.

### Puppy Linux es tu amigo.

rsync -av --delete /mnt/sda7/ /mnt/sdb4/
rsync -av --delete /mnt/sda6/ /mnt/sdb3/

### Y otro disco duro externo y ya lo bordas, salao.
Espero que no se me olvide XD.

martes, 3 de septiembre de 2013

Flashear Galaxy mini 2 (GT-S5600D) desde Linux

No tengo windows, no puedo usar Odín y Heimdall parece ser que no funciona con este dispositivo.

No hace falta descargarse todo el SDK ni nada de eso. He estado dando muchas vueltas por la red y he encontrado que:

 - Me leo esto http://esausilva.com/2010/05/13/setting-up-adbusb-drivers-for-android-devices-in-linux-ubuntu y me descargo esto http://esausilva.com/misc/android/platform-tools-linux.tar.gz porque no me voy a poner a desarrollar en android ya que no tengo ni puta idea.

Ni modifico el $PATH ni nada porque ejecuto adb desde su directorio. fastboot tampoco reconoce el device. Pero ya tengo el adb configurado y funcionando.

-Para rotear el cacharro he leído algo sobre modificar los archivos build.prop y default.prop o no se qué líos, pero parece ser que también hace falta el fastboot u odin, así que me leo esto http://galaxy-mini-2.blogspot.com.es/2012/12/rootear-galaxy-mini-2_22.html y roteo con el método 1 (sin clockworkmod). La app poot ha tardado mucho en instalarse, pero ha funcionado bien.

-Lo de instalar el recovery cwm es lo más entretenido.

    * Lo renombro quitándole el md5, lo descomprimo con tar -xvvf cwm-6-blah.tar y obtengo un archivo recovery.img


:~/Downloads/adb/platform-tools> ./adb devices  -> Lo reconoce
:~/Downloads/adb/platform-tools> ./adb push ../../recovery.img /sdcard/
:~/Downloads/adb/platform-tools> ./adb shell
$ su -> Aquí hay que autorizarlo desde el mismo teléfono
# mount -> Y echamos un vistazo a lo que hay por ahí.
# fdisk /dev/block/mmcblk0
Command (m for help):p
Disk /dev/block/mmcblk0: 3909 MB, 3909091328 bytes
1 heads, 16 sectors/track, 477184 cylinders
Units = cylinders of 16 * 512 = 8192 bytes

Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 * 1 3 20 4d Unknown
Partition 1 does not end on cylinder boundary
/dev/block/mmcblk0p2 3 22 150 45 Unknown
Partition 2 does not end on cylinder boundary
/dev/block/mmcblk0p3 22 2582 20480 c Win95 FAT32
(LBA)
Partition 3 does not end on cylinder boundary
/dev/block/mmcblk0p4 2582 477184 3796821+ 5 Extended
Partition 4 does not end on cylinder boundary
/dev/block/mmcblk0p5 3073 3197 1000 46 Unknown
/dev/block/mmcblk0p6 3198 3322 1000 47 Unknown
/dev/block/mmcblk0p7 3323 3572 2000 5d Unknown
/dev/block/mmcblk0p8 3573 5108 12288 48 Unknown
/dev/block/mmcblk0p9 5109 5492 3072 4a Unknown
/dev/block/mmcblk0p10 5493 5876 3072 4b Unknown
/dev/block/mmcblk0p11 5877 6900 8192 90 Unknown
/dev/block/mmcblk0p12 6901 8436 12288 91 Unknown
/dev/block/mmcblk0p13 8437 8948 4096 92 Unknown
/dev/block/mmcblk0p14 8949 9460 4096 93 Unknown
/dev/block/mmcblk0p15 9461 9524 512 95 Unknown
/dev/block/mmcblk0p16 9525 73524 512000 82 Linux swap
/dev/block/mmcblk0p17 73525 92724 153600 94 Unknown
/dev/block/mmcblk0p18 92725 212276 956416 83 Linux
/dev/block/mmcblk0p19 212277 213812 12288 65 Unknown
/dev/block/mmcblk0p20 213813 216884 24576 9a Unknown
/dev/block/mmcblk0p21 216885 217396 4096 63 GNU HURD or
SysV
/dev/block/mmcblk0p22 217397 223796 51200 67 Unknown
/dev/block/mmcblk0p23 223797 464363 1924534 64 Unknown
/dev/block/mmcblk0p24 464363 464875 4096 58 Unknown
/dev/block/mmcblk0p25 464875 477184 98474 a0 Thinkpad
hibernation
Command (m for help): q -> ¿Cual será la partición recovery?

# find / -name recovery
/cache/recovery
/system/bin/recovery
# ls /cache/recovery
last_log
# vi last_log -> Este es el comando mágico, ¿te acuerdas de busybox?
# dd if=/sdcard/recovery.img of=/dev/block/mmcblk0pXX -> Y este el que puede arruinarlo todo.

Por suerte todo ha salido bien y ha quedado el cwm perfectamente instalado con  lo que ya he podido flashear alguna que otra rom. Pero esa es otra historia, al final me he quedado con una stock, roteada y con cwm. Perfecto. Hay que decir que el aparato era libre.

Para terminar hay que aclarar que todo esto lo hago bajo mi responsabilidad y que si me cargo el teléfono es por mi culpa, no por lo que he leído en la internet.
También que para tener un log de recovery habrá que hacer algo con el stock recovery antes.

martes, 6 de agosto de 2013

Información meteorológica en conky

Lo primero será conseguir datos fiables. Para mi localización geográfica creo que los más adecuados serán los de http://www.aemet.es. Esta web proporciona los datos en un archivo xml con la predicción para siete días.

Suponiendo que sea Horcajuelo de la sierra (Madrid) descargaré este fichero:

wget http://www.aemet.es/xml/municipios/localidad_28071.xml

Para hacerlo más fácilmente legible he filtrado el archivo con este comando:

sed -e '1,/\/origen/d;s/<\/[^>]*>//g;s/<//g;s/>/ /g;s/elaborado //' localidad_28071.xml

Ahora vamos a ver que pone.

- la fecha y hora en la que se ha generado el archivo
- la localidad
- la provincia
- la predicción para hoy en intervalos de 6 horas
- la de mañana y pasado en intervalos de 12 horas
- la de los cuatro días siguientes en un formato menos detallado

Bien, creo que será suficiente descargar este archivo únicamente una vez al día por lo cual crearé una tarea cron para obtenerlo.

Para conseguir los datos actuales en tiempo real (cada hora) escogeré la estación meteorológica que más me conviene desde esta dirección:


En este caso, la estación más cercana a Horcajuelo es la de Buitrago de Lozoya así que descargaré este archivo:

wget "http://www.aemet.es/es/eltiempo/observacion/ultimosdatos?k=mad&l=3110C&w=0&datos=img&x=h24&f=Todas" -O ultimosdatos

ponemos la dirección entre comillas porque si no se va quedar en el primer ampersand ( & ).

Una vez más, hay que filtrar el archivo. Estudiándolo un poquito se ve que resulta suficiente ejecutar el siguiente comando:

grep "\[23 ,[^ ]" ultimosdatos | sed -e 's/\[23 ,//g;s/\]//g'

para obtener los últimos datos de 

-Temperatura
-Viento
-Rachas
-Precipitaciones
-Presión
-Humedad

Así que podemos también crear otra tarea cron que se ejecute cada hora para descargar los datos.

Creo que usaré los iconos /usr/share/icons/gnome/48x48/status

domingo, 4 de agosto de 2013

Montar imágenes .vdi

La herramienta vditool no está disponible. Dándole unas cuantas vueltas y gracias a esta información:

http://www.vicente-navarro.com/blog/2008/07/27/montar-imagenes-de-disco-vdi-de-virtualbox/

https://www.virtualbox.org/ticket/4843


# VBoxManage internalcommands dumphdinfo reactos.vdi


Con lo cual ya se puede montar tranquilamente
# mount -t vfat -o loop,offset=$((12288+63*512)) reactos.vdi /mnt

¿De dónde sale ese 63? De aquí:
# aptitude install qemu kvm
# modprobe nbd 
# qemu-nbd -c /dev/nbd0 VirtualBox\ VMs/reactos/reactos.vdi
# sfdisk -d /dev/nbd0