Cómo abrir un fichero winmail.dat en Linux

Hoy he recibido un correo en el que venía adjunta una información en un formato que no había visto en mi vida. un misterioso fichero llamado «winmail.dat» se asomaba a mi Evolution y no daba señas de poder abrirse con nada. Lo copié en el Escritorio, pero nones. Si el correo hubiera venido de una fuente de la que no me fiase mucho, el ficherito (y el correo) conocerían los placeres de una redirección a /dev/null, pero como en este caso a) me fiaba del remitente y b) quería ver el contenido, pregunté al Oráculo de Apolo en Delphi escribiendo en mi navegador http://www.google.es.

En la primera búsqueda me encuentro con un post que describe qué son estos ficheros, cómo evitar enviarlos y, sobre todo, cómo leerlos si los has recibido. De las diferentes herramientas que aparecen para leer estos ficheros únicamente he prodado Fentum. Es una pequeña aplicación (descargaos la versión estática, esto es, incluyendo todas las bibliotecas que necesita para evitar problemas de incompatibilidades, total, ocupa 341 Kb) que, si la lanzamos desde una terminal, nos permite ver el contenido de los ficheros winmail.dat y extraer los ficheros que contienen.

Fentum Funcionando

Uso:

 ./fentunStatic winmail.dat

Muy pequeña, muy útil y sencilla de usar. Una pequeña joya.

j j j

Aviso apocalíptico de Virus

Los mails avisando de virus son un clásico en el mundo de la Informática. A los que llevamos algo más de tiempo en ésto (bueno, pensando en Alan Turing, Brian kernighan o Bill Gates tampoco llevo tanto tiempo) ya nos suenan estos correos un poco como los clásicos de los 80. Con aroma a HOAX y todo.

Os lo pego porque me ha resultado un poco tierno el tono apocalíptico utilizado:

GRAVE VIRUS NUEVO

POR FAVOR, HAGA CIRCULAR ESTE E-MAIL ENTRE SUS AMIGOS, FAMILIA, CONTACTOS

Estén atentos en los próximos días

No abran ningún mensaje con un archivo llamado COPA DEL MUNDO 2006, independientemente de quien se lo envie.

Este virus vendrá de una persona conocida que tenga su nombre en su lista de correos, por ello debe enviar este mensaje a todos sus contactos.

Es preferible recibir este mensaje 25 veces que recibir el virus al abrirlo.

Si recibe un mensaje llamado COPA DEL MUNDO 2006 ¡no lo abra y apague su ordenador inmediatamente!

Se trata del peor virus conocido y se ha anunciado su existencia en la CNN.

Microsoft lo ha clasificado como el más destructivo que jamás haya existido.

El virus fue descubierto hace poco por McKafee y no existe anti-virus,

El virus destruye el Sector Cero del Disco Duro, en el que se guardan las informaciones vitales para su funcionamiento.

ENVÍA COPIA DE ESTE E-MAIL A TODOS TUS AMIGOS Y CONTACTOS. AL HACERLO CIRCULAR ESTÁS AYUDANDO A TODOS.

En mi opinión, es un HOAX clásico. Veamos la forma de detectar un HOAX:

1. Se nos trata de asustar, poniéndonos en tensión, para responder al correo: «estén atentos en los próximos días», «no abra ningún mensaje…independientemente de quien se lo envíe»

2. Se promociona su reenvío (como todo buen HOAX): «Es preferible recibir este mensaje 25 veces», «HAGA CIRCULAR ESTE E-MAIL», «ENVÍA COPIA DE ESTE E-MAIL»

3. Cita fuentes «de confianza» pero no los enlaces a sitios donde podamos verificarlo: «CNN», «Microsoft», «McAfee» (por cierto, la empresa de antivirus se llama así)

4. Nos lo pinta como algo nuevo e increíblemente destructivo: «borra el Sector Cero» (todo en mayúsculas, claro, que así asusta más). El sector cero son unos humildes 512 bytes que guardan información sobre el cargador del S.O. Si se borra, a los datos no les pasa nada. El problema es que el ordenador no arrancará, pero con volver a restaurar el S.O. (si es Windows), reinstalar GRUB (si es Linux) o bien arrancar desde un CD, llave USB o diskette, listo.

No creo que se trate del «peor virus conocido» ni que sea algo nuevo (¿alguien se acuerda del Viernes 13?).

5. Nos calma frente a su auténtica acción: hacernos perder el tiempo. Recibir esto 25 veces es un petardo absoluto.

6. Aporta soluciones de alto calado técnico: «¡no lo abra y apague su ordenador inmediatamente!», «no existe anti-virus»

Releyendo estas líneas empiezo a pensar que estos HOAX los escriben los fabricantes de Antivirus. Por cierto, como no es obligatorio saber lo que es un HOAX (y estoy abusando deliberadamente de la palabrita) os pego su definición más abajo.

j j j

¿Existen enlaces simbólicos en Windows?

Hay veces que necesitamos crear un enlace simbólico en Windows, pero no podemos. Esto nos frustra, ya que en UNIX/Linux sí es posible. ¿No hay manera de arreglar ésto?

Pues si. Aunque cueste creerlo, Windows (NT, 2000, XP) es capaz de crear enlaces simbólicos como en UNIX. En la página web de Sysinternals disponemos de la utilidad Junction, que permite crearlos desde la línea de comandos.

La pregunta ahora es porqué se oculta esto y no está en el explorer… misterios del márketing.

En el artículo Enlaces simbólicos en Win2K lo explico con todo lujo de detalles.

j j j

Preguntas inocentes

Sucedió el pasado Domingo 24 de Julio. Mi mujer se había descargado de Internet unos documentos en formato PDF que quería imprimir. Mala suerte, porque el autor de los PDF los había protegido para que no se pudieran imprimir, de forma que tuvieras que leerlos en la pantalla del ordenador. Yo estoy acostumbrado a mirar la pantalla durante horas, por lo que no entiendo que a alguien le cueste. Pero les cuesta. Además, a mi me gusta leer los libros de informática con forma de libro.

Es entonces cuando surgió la pregunta inocente: «Diego, ¿estos PDF no se pueden imprimir de alguna manera?». Yo aún no sabía cuánto dolor estaba encerrado en esas diez palabras.

«Bueno, puedo intentarlo» – le contesté.

Sencillo, a fin de cuentas, para un freaky de la informática como yo. Bastaba con copiar uno de los PDF a la carpeta compartida pública de mi servidor Linux (mi mujer usa Windows XP). Para ser totalmente ordenado, dentro de /public creé una carpeta Paqui. Una vez situado, desde una terminal tecleé:

$ cd /public/Paqui $ pdf2ps nombre-fichero.pdf

¡Exito! El fichero se había convertido de PDF a PS (PostScript) y ahora sí que se podía imprimir usando el visor de PostScript de GNOME gvv (Gnome Ghostview). Ahora mismo alguien de la audiencia estará pensando «bueno, sí, eres muy listo, pero eso es precisamente lo que el autor del PDF quería impedir». Pues sí, me confieso. Los casados entre la audiencia me entenderán.

Un momento de triunfo

Exultante por mi triunfo (conseguido en apenas cinco minutos) me dirigí a la mesa de mi mujer con los papeles prueba de mi triunfo en la mano. «Listo» – le dije con una gran sonrisa.

«Gracias, está muy bien, pero… ¿y cuándo tú no estés?. ¿No hay alguna manera de automatizar el proceso para que lo pueda hacer yo sola?»

El mundo pareció enmudecer. Me sentía cada vez más pequeño. Ese es el tipo de preguntas inocentes que suelen hacer los usuarios y que normalmente suelen llevar aparejados un tremendo marrón.

Volví cabizbajo a mi servidor Linux y pensé. «Bueno, probablemente con un pdf2ps *.pdf esté todo solucionado. Me equivocaba. pdf2ps no admite comodines. Luego para procesar varios ficheros hay que hacerse un pequeño script.

«Ese peaso de script»

Bueno, nada más fácil que un pequeño script. En cinco minuto (más) tuve escrito algo como ésto:

#!/bin/bash
 PROGRAM=pdf2ps
for f in $1
do
echo $PROGRAM $f $f.ps
$PROGRAM $f $f.ps
done
nautilus /public/Paqui

El lector avezado en programación de la BASH Linux sabrá que el bucle for recorre todos los ficheros que coincidan con un patrón, pasado como parámetro en $1. Luego este script se usa así:

$ multiple-pdf2ps.sh *.pdf

generando un fichero pdf.ps por cada pdf.

¡Bueno, segundo momento de triunfo! Ya estaba todo listo. O casi. Subí el nuevo script a la rama correspondiente del CVS y me puse a pensar.

Mi reino por un visor de PostScript para Xp

Pues eso. La conversión había tenido éxito. Pero no quería que mi mujer tuviera que lidiar con CUPS y la impresión desde Linux (entre otras cosas porque aún no he configurado el driver de impresión para sacar dos páginas por hoja, pero ese es otro tema). Luego necesitaba un visor de PostScript para XP.

Sencillo: Google me llevó a http://www.cs.wisc.edu/~ghost/ de donde me descargué el visor Ghostview para Windows y el propio GhostScript (un intérprete de PostScript Software Libre; PostScript es de Adobe y los visores de PostScript valen pasta o en cualquier caso no son Software Libre). Dejé los ficheros en /public/Paqui y desde el XP instalé ambos ficheros (por cierto, la conexión por red a \einstein\public la había automatizado con una unidad de red, F: concretamente: otra tarea de «un minuto»).

La prueba fue un éxito absoluto: podía imprimir dos páginas por hoja abriendo el .PS desde XP. ¡Triunfo! ¿Ya? No, falta algo…

Un usuario en Linux

Claro. Si quiero que mi mujer pueda hacer ésto cuando yo no esté, debe poder entrar en el servidor. Bueno, sencillo, adduser Paqui, le pongo una clave, entro en su sesión de GNOME, le pongo un escritorio bonito, le creo un lanzador en el escritorio que ponga «convertir los PDFs» y que llame al script y listo. Otros cinco minutos.

Probemos. ¡Cómo!?. No puedo acceder a los ficheros de /public/Paqui. Horror. Al montar la unidad en Linux, tengo una línea en el /etc/fstab como:

/dev/hdc1 /mnt/hdc1-xp vfat auto,user,exec,uid=1000,gid=1000 0 0

que, entre otras cosas, monta la unidad /dev/hdc1 con el usuario de uid 1000 como propietario, o sea, yo. Por eso el usuario de mi mujer no puede leer /public

Solución: meter a los dos usuarios en el grupo users (de GID 100) y en el fstab poner:

/dev/hdc1 /mnt/hdc1-xp vfat auto,user,exec,gid=100,umask=002 0 0

de ésta forma, el propietario de la carpeta es ahora el grupo 100 (al que pertenecen los dos usuarios de Linux) y la umask permite unos permisos de lectura y escritura para el grupo. Todo solucionado.

Epílogo

Hay que ver lo que puede originar una preguntita inocente. Son los «poyaques». Es decir «po ya que puedo convertir de pdf a ps, vamos a convertir en masa», «po ya que he convertido en masa, que se haga con otro usuario», «po ya que …».

Muchas veces los «poyaques» ocupan más tiempo en los proyectos que las especificaciones originales. Ojo con los «poyaques» y las preguntas inocentes. Antes de decir «sí, si eso son sólo cinco minutos» piensa no vaya a ser que sean cinco tras otros cinco tras otros cinco….

j j j