Grub error 24: Actualizando a Ubuntu 9.04 con ext4

Ver Comentarios

Posted on : 26-04-2009 | By : Carlos Cordero | In : Software

Ha costado un poquito más de lo deseado. Ayer hice la actualización a Ubuntu 9.04, a la primera y sin ningún problema. Todo fue bien hasta que mi “frikismo” me empujó a actualizar el sistema de ficheros a ext4, todo para ver que tal funcionaba, y a pesar de ciertos comentarios en foros que no invitaban a hacerlo por los peligros que conllevaba. La migración fue muy sencilla y rápida dado que el cambio a ext4 no implica cambios en los ficheros actuales, más bien en como se crearán a partir de ese momento. También se supone que no hay que instalar Grub2 dado que el último parche incluído en la 9.04 de Grub 0.97 tiene soporte ext4. Pues bien, la actualización perfecta, los dos primeros reinicios perfectos, pero al tercero me encontré con un marrón de calibre mayor.

error 24: attempt to access block outside partition

Lo que se suele llamar, “te has quedado sin poder iniciar sesión”. Algo de investigación en foros indicaba posible corrupción del disco e invitaba a ejecutar un “e2fsck /dev/PARTICION” desde cualquier live cd (o “live pen”). Aunque no me convenció, lo hice y el resultado fue nulo; tal y como suponía, el disco estaba perfecto, la partición también, y el problema no venía de ahí. Se me ocurrió que quizás por algún motivo grub no se había instalado como debía y que la mejor solución pasaba por reinstalarlo. Así lo hice y funcionó a la primera. Por supuesto, os dejo los pasos.

1) Arrancar un live-cd o live-pen. Acceder a un terminal
2) Ejecutar la siguiente secuencia de comandos:

$ sudo su
# mount /dev/sda1 /mnt
(en mi caso sda3, si tu disco es sda, un simple fdisk -l /dev/sda te indicará el número de la partición /).
# mount --bind /dev /mnt/dev
# mount --bind /dev/pts /mnt/dev/pts
# mount --bind /dev/shm /mnt/dev/shm
# mount -t proc none /mnt/proc
# mount -t sysfs none /mnt/sys
# chroot /mnt /bin/bash
# grub-install /dev/sda --root-directory=/ --recheck

¿Un bug de ubuntu? ¿bug de grub? No lo sé, en cualquier caso es un bug serio, pero su solución es rápida, ¿Verdad?

Me presentaron a… Python

Ver Comentarios

Posted on : 10-04-2009 | By : Carlos Cordero | In : Linux, Software

Quizás esto de la programación sea como la filología, cada cierto tiempo entra el gusanillo de aprender un nuevo lenguaje de programación. Hace unos días me picó el gusanillo, un compañero de trabajo que estaba mirando algo de documentación sobre Python y al día siguiente, casi sin darme cuenta, me estaba leyendo una de esas biblias de Python que existen por la red. Casi como un flechazo oiga, herencia múltiple… con lo que la echo yo de menos en Java y PHP…

La elección de Python está motivada por el cada vez mayor uso que hacen de el en entornos de administración y configuración bajo GNU/Linux. Cada día hay más aplicaciones que lo utilizan (dejando de lado a mi odiado Perl). Primera conclusión: me encanta. Quizás la herencia múltiple sólo sea una de las puntas de aguja de un lenguaje que invita a ser estudiado y practicado. La indentación como control de encapsulación es magnífica, se evita así encontrar código escrito con la punta de…l pie.

Dejando de lado el “hola mundo”, mi primera prueba de concepto con Python se basa en el uso de wxPython y Google Data API para el acceso a sus aplicaciones. En cristiano, una pequeña aplicación gráfica que sirve para realizar búsquedas de videos en Youtube. El código no es ninguna maravilla, pero oye… es que la he hecho en un rato mientras mi hija jugaba a mi lado, tampoco pidamos milagros ;)

Por aquí la dejo colgada por si le pica el gusanillo a alguien. Descarga

Escrita en entorno Linux, por aquí me ha hecho falta Python 2.5, wxPython2.8 y el Api de Google que se puede descargar e instalar desde aqui

Para Windows hará falta lo mismo… pero todavía no lo he probado :)

Vulnerabilidad en los Nokia con Symbian

Ver Comentarios

Posted on : 08-01-2009 | By : Carlos Cordero | In : Software

Una breve nota para destacar una grave vulnerabilidad en varios modelos Nokia y algunos de otras marcas que utilizan la serie S60 de Symbian y que, con sólo la recepción de un sms con un formato adecuado, dejarán al teléfono sin recibir sms ni mms hasta que se efectúe un hard reset sobre el mismo.

NewsML – XML para las noticias

Ver Comentarios

Posted on : 16-12-2008 | By : Carlos Cordero | In : Internet, Java, Software

No creo que sea un misterio que en la actualidad trabajo en un proyecto muy relacionado con el mundo del periodísmo por lo que día a día voy conociendo un poco más sus “tripas”.

Posiblemente una de las cosas que más me ha llamado la atención es el intercambio de información entre las agencias de noticias y sus clientes. Aunque no todas trabajan igual… sería facilitar demasiado el trabajo, si existen algunas normativas al respecto que se cumplen en mayor o menor medida: NITF y NewsML.

Especialmente me resulta curioso NewsML, todo un sistema de intercambio de información XML con un DTD muy bien definido y que permite incluir mucha información (texto, imagen, sonido, video, documental…). Facilita mucho la vida parsear esta clase de información y crear todos los contenedores de objetos; aunque no se cumpla al 100%, desde luego hay menos cosas a modificar que si cada agencia te envía su fichero de texto plano con su propio formato.

Por cierto, en mi caso lo estoy haciendo sobre Java y por si alguien quiere echarle un vistazo, Reuters publicó bajo open source una completa librería de parseo: http://newsml-toolkit.sourceforge.net/

pata_hpt37x … kernel 2.6.2x … HighPoint RocketRaid

Ver Comentarios

Posted on : 14-12-2008 | By : Carlos Cordero | In : Internet, Linux, Software

Si has llegado aquí, tienes una controladora RAID/SATA de HighPoint y tu flamante última distribución de GNU/Linux recien tostadita en CD no arranca… o lo que es peor, tu última actualización de kernel te ha dejado el PC frito… ¡enhorabuena! tienes un grave problema.

Más allá de mi ironía por tener que presenciar esta clase de errores que pueden ser tan graves en ciertos entornos, voy a facilitaros la búsqueda a todos aquellos que veáis como las distribuciones Live CD de Ubuntu 8.10, Fedora 10 y posiblemente alguna más no arrancan.

Básicamente las últimas versiones del kernel habilitan nuevos drivers como módulos, y dejan de habilitar otros. En el caso que nos afecta, la versión 2.6.27 que traen las nuevas distribuciones deshabilitan casi en su totalidad los drivers de la rama /drivers/ide para utilizar aquellos de /drivers/ata. En este caso, se habilita el driver pata_hpt37x como controlador de las las PCI HighPoint RocketRAID, controladoras RAID/SATA (con un funcionamiento bastante eficiente por otro lado…); el problema es que dicho driver parece no funcionar como debe, sobre todo con la rama HPT3xx (y no es la única). Al intentar arrancar el sistema, veremos toda clase de errores, el más común aquel que incluye pata_hpt37x 0000:05:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 – pata_hpt37x 0000:05:01.0: PCI INT A disabled.

Por desgracia, para empeorar el problema, no viene compilado como módulo ninguno de los drivers que funcionan bien, ni los de la serie “ide” ni el HPT366. Ya existe una notificación de bug abierta para Ubuntu, pero por el momento no se ha solucionado, ni siquiera en la release 2.6.27-10.

Pocas solucionen existen:
1) Si se está intentando instalar una versión nueva de Ubuntu o Fedora, instalar una más antigua.
2) No actualizar el kernel oficial (y si se prueba a hacer, mantener la versión anterior por si acaso)
3) Sólo para “aventureros”: Recompilar el kernel con los sources de la distribución o el kernel oficial habilitando CONFIG_BLK_DEV_HPT366=m (también se puede habilitar CONFIG_PATA_HPT3X2N=m, pero algunos mensajes indican que bloquea el sistema al examinar los discos)

Referencias:
Launchpad Ubuntu – Bugs
Ubuntu Forums
4 horas peleándome con un equipo (mi experiencia cuenta ;) )

Como eliminar un trabajo de impresión que está bloqueado

Ver Comentarios

Posted on : 11-12-2008 | By : Carlos Cordero | In : Software

Alguna vez me ha ocurrido que al intentar imprimir un documento, este se ha quedado bloqueado en la cola de impresión y al intentar eliminarlo, se ha quedado indefinidamente con el estado “eliminando…”. El mayor problema es que cuando intentar imprimir otro documento, se pone “segundo a la cola” y no se imprime…

Normalmente con apagar y encender de nuevo la impresora es suficiente, pero a veces esto no ocurre y tenemos que reiniciar el equipo… ¿no? Pues no! Con estos sencillos comandos solucionamos el problema.

Para Windows XP y Vista
(En vista tendremos que iniciar el cmd como Administradores)

1) Arrancamos una sesión de “cmd” (Inicio, Ejecutar -> cmd)
(En Vista buscamos cmd, pulsamos en el botón secundario del ratón y ejecutamos como administradores)

2) Ejecutamos los siguientes comandos:
net stop spooler
del %systemroot%\system32\spool\printers\*.shd
del %systemroot%\system32\spool\printers\*.spl
net start spooler

Ya tendremos solucionado el problema y podremos imprimir de nuevo.

Consejos para comentar el código fuente

Ver Comentarios

Posted on : 28-11-2008 | By : Carlos Cordero | In : Software

Leo en el blog variablenotfound un post que incluye 13 buenos consejos para comentar el código fuente de las aplicaciones.

Quizás me quede con esta frase… contribuirán a hacerlo más inteligible y por tanto a incrementar su mantenibilidad a lo largo del tiempo, algo que muchas veces no ocurre y crea muchos problemas a la hora de realizar un mínimo mantenimiento evolutivo de cualquier aplicación.

Feliz Viernes!