Author:Juanfer

La odisea de pasar archivos grabados de más de 4GB de mi «Best Buy Easy Recording TDT» a mi disco duro

Versión corta:
Utiliza el comando ftpput para realizar la transferencia de tu archivo o archivos por FTP.

Versión larga:
Hace poco me tuve que enfrentar al pequeño problema de pasar un programa de televisión grabado en este dispositivo, a mi disco duro. El problema era que el fichero pesaba más de 4GB, que es el máximo tamaño soportado por el sistema de archivos FAT32, que es el formato del disco en el que el dispositivo en cuestión graba de la tele. Por lo tanto, cuando se hace la copia desde la interfaz del propio aparato (Playback > TDT > Edit > Convert to FAT32), el resultado es que en dicho disco aparecen varios ficheros de 4GB, es decir, se produce un troceado automático. En mi caso, un fichero de 6GB se convertía en 1 de 4GB y otro de 2GB. El problema de esto es que, después de dar muchas vueltas, no fui capaz de volver a unirlos satisfactoriamente con ningún editor de videos gratuito.

Mi primer intento de solución fue ver la opción de reformatear la partición de intercambio FAT32 convirtiéndola en NTFS (que permite guardar ficheros de longitudes mayores), sin embargo la interfaz del aparato no permite realizar este tipo de operación aislada: o reformateaba y reparticionaba todas las particiones, o ninguna.
Descartada esa opción, me conecté por telnet al aparato a ver qué me encontraba. Sorprendentemente conseguí conectar a la primera (nunca lo había hecho) utilizando como usuario «root», sin contraseña. Genial, se trata de un Linux básico. Después de trastear un poco, lo primero que hice fue intentar reparticionar manualmente el disco de intercambio, sin embargo el comando «fdisk» necesario viene capado de serie para impedir que se realice esta operación.

No me desanimé, lo segundo que intenté fue hacer un fichero comprimido en partes, que es fácil de descomprimir en uno solo, pero aunque el comando «tar» sí estaba disponible, no lo estaba el comando «split», que es el que permite hacer el troceado. También lo intenté con bzip y gzip, pero ninguno estaba disponible. Esto empezaba a ser un poco rollo, la versión de linux del aparato es completamente minimalista.

En ese momento no tenía ningún linux a mano, excepto un liveCD de Knoppix. Lo arranqué y le enchufé el aparato: sólo me reconocía la partición linux del sistema operativo, no las otras particiones de datos. Probé a instalarme en Windows un explorador de ext2 y ext3 y tampoco fui capaz de ver más que la partición del sistema operativo. Buscando en internet encontré gente que decía que las particiones en las que el aparato realiza las grabaciones son UDF. Busqué alguna forma de leer dichas particiones desde linux o windows, pero no encontré ninguna manera sencilla de realizarlo.

Recordé que tenía un pendrive usb de 8GB, lo formateé en NTFS, lo conecté y afortunadamente el sistema lo reconocía. Ejecuté un simple comando de copiado de archivos y la sorpresa fue que el sistema me informaba que el pendrive se había montado como sistema de ficheros de sólo lectura, no estaba permitido escribir en el mismo. Probé a remontarlo manualmente con permisos de escritura:
mount -o remount -w /tmp/usbmounts/sda1
Ningún error
cp 000008.ts /tmp/usbmounts/sda1
¡Ningún error!, dejé al sistema realizando la copia del archivo. 15 minutos después seguía copiando. 30 minutos después seguía copiando. 1 hora después seguía copiando. 2 horas después, seguía sin terminar. Detuve la transferencia, algo fallaba.

Ya casi sin recursos, revisé las carpetas bin y sbin en el sistema para ver si encontraba algún comando instalado que me pudiera ser útil. Al ver «ftpput» se me encendió la bombilla. Instalé un servidor de FTP en mi ordenador, creé un usuario y en el disco duro externo ejecuté por telnet:

ftpput -v -u [usuario] -p [contraseña] 192.168.1.2 000008.ts ./000008.ts

y el resultado fue:

Connecting to 192.168.1.2[192.168.1.2]:21
ftpput: cmd (null)(null)
ftpput: cmd USER [usuario]
ftpput: cmd PASS [contraseña]
ftpput: cmd TYPE I(null)
ftpput: cmd PASV(null)
ftpput: cmd ALLO 1271240704(null)
ftpput: cmd STOR 000008.ts
ftpput: cmd (null)(null)
ftpput: cmd QUIT(null)

Genial. Problema resuelto por los pelos, justo cuando estaba a punto de tirar la toalla. Tiempo de transferencia: 32 minutos. Tiempo que tardé en conseguirlo: 3 horas largas divididas en 2 días.

Comandos útiles:
Comando para comprobar el estado de los discos duros : df -h
Comando para comprobar las particiones existentes : fdisk -l
tar + split, inservible para este caso : tar czf – ejemplo/ | split -b 1000m – troceado.tgz.

Eliminar el borde de puntos alrededor de un enlace al que se ha hecho click en IExplorer 7 y 8

Este molesto comportamiento del navegador de Microsoft es particularmente antiestético cuando se utiliza un mapa poligonal de coordenadas que llama a funciones Ajax (por lo que no abandonamos la página que contiene el enlace clicado). Por ejemplo:

Problema de focus en iexplorer 7 y 8

Aunque a simple vista parece una tontería, la realidad es que se puede perder mucho tiempo intentando eliminar dicho borde punteado a través de CSS y luego a través de Javascript mediante complicados gestores de eventos.

Sin embargo, una vez conocido el truco, en realidad es bastante sencillo. La clave está en el hecho de que dicho borde se presenta sobre el enlace activo (el último que ha recibido el focus) por lo que lo que se debe hacer es quitar el foco de atención (focus) del objeto sobre el que hemos hecho click, en el mismo instante en el que se fija dicho foco de atención.

Los elementos clave de la solución son:

  • Método para quitar el foco de un objeto : objeto.blur();
  • Evento al que debemos estar atentos : objeto.onFocus();

Personalmente prefiero realizar el truco utilizando jQuery, que facilita la elección del elemento o elementos sobre los que deseamos actuar, por lo que el código que realiza el la magia sería algo así:

$(".elementos_sobre_los_que_actuar").focusin(function(){
	$(this).blur();
});

Si se prefiere utilizar Javascript puro, la selección del elemento o elementos sobre los que actuar debe hacerse de manera más artesanal utilizando las funciones getElementById o getElementsByTagName y bucles para recorrer los arrays devueltos, pero la idea es la misma.

Error «order creation failed» / «creación de pedido fallida» en Prestashop 1.3.1, 1.3.7 y 1.4.16

For non spanish readers, the short version:

The problem is related to your MySQL version. It fails with 5.1.x and 5.5.x versions.
Prestashop 1.3.1 : add the lines:

$order->invoice_date = '0000-00-00 00:00:00';
$order->delivery_date = '0000-00-00 00:00:00';

just before the order creation ($order->add()) in your «damaged» payment module.
Prestashop 1.4.x : modify your ps_orders table structure:

alter table ps_orders modify reference varchar(14) null;

Prestashop 1.3.7 : Presumably the error is one of both, or related with null values in that table.

Y la historia larga en castellano:

Después de varios días buscando una solución a este error y de no encontrar nada concluyente en la web, por fin he dado con ello.

El error en cuestión ocurría al intentar realizar un pago contrarreembolso (módulo cashondelivery) y también al intentar realizarlo por transferencia bancaria (módulo bankwire). El pago a través de PayPal funcionaba correctamente (por suerte).

El problema empezó a ocurrir después de realizar una migración de servidor de una máquina más antigua a una máquina más nueva.

Inicialmente pensé que el problema era una incompatibilidad entre el PHP instalado en mi nuevo servidor y el código de mi versión de Prestashop por lo que decidí actualizar la tienda a la última versión. Comprobé que el error se seguía dando en las versiones 1.3 7 y también en la 1.4.16.

Un post en http://www.prestashop.com/forums/viewthread/29422/third_party_modules/solved_order_creation_failed_with_every_payment_module_help_1_dot_2_dot_4/ me puso sobre la pista de que el problema estaba en la base de datos o en el conector a la base de datos. Después de trazar las consultas en la base de datos vi que en la versión 1.4.16 la consulta que se intentaba ejecutar :

INSERT INTO `ps_orders` (`id_address_delivery`,`id_address_invoice`,`id_c
art`,`id_currency`,`id_lang`,`id_customer`,`id_carrier`,`secure_key`,`payment`,`
module`,`conversion_rate`,`recyclable`,`gift`,`gift_message`,`shipping_number`,`
total_discounts`,`total_paid`,`total_paid_real`,`total_products`,`total_products
_wt`,`total_shipping`,`carrier_tax_rate`,`total_wrapping`,`invoice_number`,`deli
very_number`,`invoice_date`,`delivery_date`,`valid`,`date_add`,`date_upd`) VALUE
S ('15','15','690','1','3','3','15','8ebb6bdaaabe8e9daa8f15d774042747','Cash on
delivery (COD)','maofree_cashondeliveryfee','1','0','0','BLA:10','','0','91.67',
'91.67','81.67','81.67','10','0','0','0','0','0000-00-00 00:00:00','0000-00-00 0
0:00:00','0','2011-03-18 20:02:32','2011-03-18 20:02:32');

tiraba el error :

ERROR 1364 (HY000): Field 'reference' doesn't have a default value

Lo cual nos llevaba directamente a la causa del problema: en versiones anteriores de la base de datos o del conector, mysql gestionaba los nulls y/o cadenas vacías de manera diferente. Lo solucioné modificando la estructura de la base de datos permitiendo que el valor de ese campo por defecto fuese null:

alter table ps_orders modify reference varchar(14) null;

En la versión 1.3.1 el error en la consulta no venía de este campo sino de los campos invoice_date y delivery_date, a los que no se les asigna un valor por defecto. En este caso la solución podría haber sido la misma, pero preferí modificar el código PHP del módulo cashondelivery añadiendo las líneas :

$order->invoice_date = '0000-00-00 00:00:00';
$order->delivery_date = '0000-00-00 00:00:00';

en el fichero principal del módulo, en la parte en la que se crea la orden, justo antes de la instrucción $order->add() que la añade a la base de datos.

He de decir que inicialmente intenté esta misma solución por código para el caso de la versión 1.4, pero ninguna de las líneas

$order->reference = "null";
$order->reference = "";

añadidas en el sitio adecuado surtió el efecto deseado y el error persistió.

Este error está relacionado con la utilización de MySQL 5.5.x y por los reportes de error que he leído en algunos posts, también con MySQL 5.1.x.

No investigué el error exacto en Prestashop 1.3.7, pero presumiblemente es alguno de estos 2, o está relacionado con valores null en esta tabla.

Al instalar Bind : «Unable to create account for the service» en Windows 2008

For non-spanish readers the short answer:

Use a longer and more complex password, Windows password policies are preventing Bind from creating the necessary account. Works like charm 😉

Y la historia larga en castellano:

Hoy tuve que instalar el servidor de DNSs Bind en un Windows 2008 y al hacerlo me di con el mensaje de error «Unable to create account for the service». Después de dicho mensaje, el sistema no permitía hacer nada y por supuesto Bind no se instalaba.

Después de buscar en diferentes foros y encontrar muchos casos similares sin solución, encontré alguien que sugería crear la cuenta de usuario desde Windows y luego asignar dicha cuenta a Bind. Me pareció razonable, así que fui a crear un usuario con una contraseña del tipo «1234» y, oh sorpresa, Windows no me dejaba:

«The password does not meet the password policy requirements. Check the minimum password length, password complexity and password history requirements.»

Visto lo visto supuse que era lo mismo lo que le estaba ocurriendo internamente a Bind, así que volví a ejecutar el instalador y esta vez elegí una contraseña más larga, con puntos, números y letras. Voilá, la instalación funcionó a las mil maravillas.

Resumen de la entrevista a Julio Anguita realizada por El Follonero

Hace unos días un amigo me pasó una pequeña entrevista (menos de 15 minutos) que El Follonero le realizó a Julio Anguita en un programa dedicado a hablar sobre los problemas de la izquierda. Anguita dijo verdades como templos, la entrevista me pareció redonda, y decidí hacer un resumen de las frases e ideas que me gustaron más y publicarlo aquí.

  • Están bien los símbolos de vez en cuando, pero [de] cara al exterior, lo que tiene que hablar por nosotros son nuestras acciones.
  • [Ser de izquierdas es] creer profundamente en que los seres humanos somos iguales económicamente hablando.
  • [Ahora] se está viviendo en la edad media. […] Cuando hay contratos basura, un 34% de contratos sin seguridad social, eso es vivir en plena edad media.
  • En toda riqueza está la base del robo […] honradamente nadie se hace multimillonario […] si usted invierte dinero en una entidad bancaria y esa entidad bancaria invierte por mecanismos oscuros en el tráfico de armas y a usted eso le produce una fortuna, en el origen [de esa fortuna] está el robo, el genocidio y el asesinato.
  • Una persona que tiene un mercedes y una casa en la sierra ¿puede ser de izquierdas?
    Si tiene un mercedes y combate y lucha para cambiar la sociedad y predica con el ejemplo, y si ese empresario es un empresario que no explota de la manera que se está explotando hoy en día, sería tolerable, pero en un diseño de sociedad futura yo creo que el mercedes es precisamente prescindible.
  • Es más cómodo someterse -no te metas en líos- que pensar […] esa es la moral del esclavo, no quiere pensar en por qué está así […] prefiere besar la mano de quien le domina a meterse en líos que le pueden costar el sueño.
  • Refundar el capitalismo es imposible […] el capitalismo en su propia esencia lleva [consigo] que yo trabajo para conseguir el máximo beneficio.
  • Nos hemos cargado la democracia. la democracia es una caricatura, es un puro rito de ir a votar, no a quien gobierna sino a los capataces de quien gobierna, porque los poderes económicos, los mercados, esos no se presentan a las elecciones.
  • Ser de izquierdas es hacer una banca pública. Nacionalizar la banca, así de claro.
  • Yo me considero representado por la revolución venezolana.
  • Cuando se defiende la democracia, yo en mi horizonte teórico nunca he desterrado la violencia. No iniciarla yo, no me gusta, pero la historia está llena [de ejemplos de] que a veces hay que jugarse la vida defendiendo el bienestar general, y si hay que hacerlo se hace.
  • Aznar es responsable de haber apoyado aquel genocidio [guerra de Irak]

Y aquí la entrevista completa:

De la vida y de la muerte

Anoche ví la película “Más allá de la vida”. Por la tarde estuvimos viendo algunos trailers por internet para intentar decidir qué película nos llamaba más la atención. Hacía tiempo que no íbamos al cine ni estábamos pendientes de la cartelera, así que no teníamos predisposición por ver ninguna película en particular; es más, incluso estábamos un poco apáticos y no estaba claro que ninguna nos fuese a llamar la atención especialmente, sin embargo el trailer de Más allá de la vida fue el segundo que vimos e inmediatamente lo tuvimos claro.

Así que fuimos. No pasaron ni quince minutos y la película ya nos había sorprendido, tensado, emocionado y puesto la piel de gallina. Las historias contadas son todas sencillas, llenas de esa realidad que abofetea y que te impulsa a seguir adelante.

Hacia la mitad de la película ya se podía decir que sin duda la estábamos disfrutando, excepto quizá por las palomitas: si vas al cine a verla, no te compres palomitas pues es una película muy tranquila, llena de silencios agradables, necesarios, que se ven rotos por el crujir de un popcorn que no viene a cuento.

Durante algunos momentos parece que pierde velocidad, sin embargo nunca deja de avanzar, como la vida, a veces un poco más despacio y a veces un poco más rápido, sin dejar que lo trascendental haga mella en lo cotidiano y el final es redondo, ¿tal vez algo previsible?, sí, es posible, pero no por ello deja de ser fantástico, tierno, emocionante.
Salimos encantados del cine, pensativos y alegres, porque a pesar de que el tema es la muerte, se intenta cambiar la concepción que tenemos de la misma, convirtiéndola del acto trágico y oscuro que nos viene impuesto por la cultura en la que estamos embebidos, en un cambio de estado maravilloso lleno de posibilidades.

Algo está ocurriendo, una nueva consciencia está despertando. Lo sé porque hay películas como esta, técnicamente perfectas y aún mejor en todo lo demás. Un diez sobre diez.

El psicoanalista, de John Katzenbach

Lo primero que me llamó de este libro no fue el libro en sí, sino el formato en el que se vendía. No había oído hablar ni de la novela ni del autor, pero sí del formato: «libros verticales» (librinos). Desde que lo oí me dio curiosidad y de los libros editados por EdicionesB en este formato, El psicoanalista fue el que más me llamó la atención.

Sobre el libro puedo decir que está bien. Te mantiene enganchado de principio a fin; es una especie de thriller con leves toques psicológicos (que nadie se espere un gran despliegue de psicoanálisis). Es algo largo aunque en ningún momento se me hizo pesado ni aburrido, y se puede leer tranquilamente con pausas de varios días sin perder el hilo, pues sólo hay 4 personajes bien definidos y la acción transcurre de modo totalmente lineal, lo que hace difícil perderse.

Trata de un psicoanalista que se ve obligado a pasar a la acción debido a las amenazas de alguien relacionado con un antiguo paciente suyo. Este intenta que el psicoanalista se suicide como castigo a una negligencia de su pasado.

Sobre el novedoso formato en que lo leí, he de decir que es fantástico, ligero, muy fácil de llevar en cualquier bolsillo a pesar de su extensión, y según dicen en su web, reducen el impacto medioambiental debido a su tamaño y al tipo de papel utilizado en la impresión. La única pega es que ese tipo de papel (como de biblia) a veces hace un poco difícil pasar las páginas, pero se soluciona con una pizca de saliva en los dedos 🙂

Enviado desde mi iPad/Pod/Phone

Puf, no puedo con la frasecita y cada vez recibo más correos con la molesta coletilla. Es igual de absurdo que redactar una carta y terminarla diciendo: «escrito con mi boli bic». Lo curioso es que ese mensaje se puede quitar, pero parece que la gente prefiere cacarear a los 4 vientos que posee un cacharro de esos como símbolo de modernidad o de yo qué sé qué.

—-
Escrito en el salón de mi casa, con mi portátil de 11 pulgadas en el suelo con las piernas cruzadas. EA.

La sal de la vida, de Anna Gavalda

Hace poco leí este libro atendiendo a los comentarios de varios medios que lo ponían por las nubes.
Está claro que no hay nada más dañino para un libro (y quizá para un gran número de otras coas) que una crítica maravillosa, pues el lector se espera encontrar eso y la mayoría de las veces es decepcionante.
Eso me pasó con este libro. No es que sea malo, es que es un libro sencillo, no la obra maestra que uno se espera cuando lee críticas como «una bocanada de aire primaveral, una copa de champán de burbujas ligeras», o «hace que te brillen los ojos, te da alas, una vacuna contra la gripe, la tristeza y el mal humor».
En mi opinión no es nada de eso. Es un libro simple, algo predecible, deja algún molesto cabo suelto y la prota se hace un poco pesada, pero se deja leer y te arranca alguna sonrisa. Es de lectura fácil y muy cortito, así que es ideal para leer en pequeños ratos muertos como de camino al trabajo.

Qué triste, ya no hay CNN+

Ayer por la noche, entre las 9:30 y las 10:30, estuve viendo la última emisión de CNN+. Me dio pena ver las postales de despedida que habían preparado y también la despedida del presentador del noticiero de la noche, así como la de algún corresponsal.

Esta mañana al levantarme mi primer objetivo fue encender la televisión para ver qué había en el sitio en el que solía estar CNN+. Qué impotencia, qué indignación al ver que había una portada bastante pobre de «Gran Hermano 24 Horas» que se repetía una y otra vez sin cesar como un mantra de evocador de los tiempos absurdos en los que vivimos.

Tiempos absurdos estos en los que un canal de noticias y entrevistas de gran calidad es sustituido por un canal de bazofia televisiva debido a su -dijeron- «inviabilidad económica».

No sé cuánto de cierto hay en ello ni tampoco me interesa saberlo. Ciertamente, si llevas 10 años perdiendo dinero con un proyecto que no consigues rentabilizar, no queda más remedio que darle finiquito. Lo grave no es que lo hayan cerrado por inviable, lo grave es que un proyecto de infinitamente peor calidad y nulo contenido sí salga rentable.

¿De verdad la gente es tan mema?. Intento consolarme pensando que el rollo de la inviabilidad económica no es más que una excusa barata y que en realidad lo que ocurre es que se está llevando a cabo un enorme plan a escala internacional para convertir al ser humano en un ente desinformado sin capacidad crítica para que los cuatro poderosos de turno lo tengan más fácil a la hora de controlarnos.

Vaya maneras tengo de consolarme…

En fin, querida cadena CNN+ que el 28 de diciembre de 2010 emitiste por última vez: Hasta siempre. Borraré el canal de mi televisor. No estoy dispuesto a ver aquello por lo que te han sustituido ni siquiera haciendo zapping.

{ Piensa / Think }

"This is a waste of life. [...] the entire educational system in the modern day is nothing more than a cookie cutter processing plant that prepares humans for mostly predefined occupational roles. This element of human life has become so traditionally ingrained, that many falsely consider the nature of ‘having a job’ some form of human instinct. Even parents will ask their kids “What do you want to be when you grow up?” as though there was only one thing. This is disturbing and a violation of human potential." - The Zeitgeist Movement


"He aprendido que hay cosas que pueden ser comprendidas pero que nunca podrán ser explicadas con palabras sin desvirtuar su grandeza" - Andrés Pascual


"You never change things by fighting the existing reality. To change something, build a new model that makes the existing model obsolete." - Buckminster Fuller


"... I am the master of my fate. I am the captain of my soul." - William Ernest Henley