29 septiembre 2010

Colocar dos imágenes a la misma altura usando estilos y html

Diseñando una barra corporativa para una página web me he encontrado con una tarea que me ha llevado un rato hasta que he caido en la solución. La anoto aquí por si le es de utilidad a alguien. Se trata de colocar una barra que crezca o decrezca al cambiar el tamaño de la pantalla manteniendo en su parte izquierda un logotipo y otro en la parte derecha.

Esto es lo que buscabamos hacer:


Al redimensionar la pantalla, el espacio se reduce también y no se nota ningún salto.

La edición de las imágenes se basa en tomar los dos logos por un lado y luego una imagen que hace de fondo a lo largo del resto de la barra, con un degradado de color vertical.

Y a la hora de montarlo en HTML utilizaríamos algunos div para recogerlos:

<div id="ja-preheader">
<div id="ja-preheader_inner_left"></div>
<div id="ja-preheader_inner_right"></div>
</div>

El primer div tendrá como fondo la imagen que se va a repetir, mientras que los otros dos div tendrán cada uno el logo correspondiente.

Los estilos que hacen que funcionen son los siguientes:

#preheader {
    display: block;
    background: url(../images/ce_top_bar_back.png) repeat-x top right;
    height: 67px;
    position: relative;
    top: 0;
}

#preheader_inner_left {
    background: url(../images/ce_top_bar_01.png) no-repeat top left;
    height: 67px;
    width:260px;
    top: 0;
    left:1;
    float:left;
}

#preheader_inner_right {
    background: url(../images/ce_top_bar_02.png) no-repeat top right;
    height: 67px;
    width: 290px;
    top: 0;
    float:right;
}

La conclusión es que el truco para que funcione consiste en asignarle un ancho fijo a cada uno de los div interiores y utilizar la propiedad float para colocar cada logo en su sitio.

Y después de montar este circo uno podría pensar ¿no habrías acabado antes con una tablita? Y eso daría para un largísimo debate, pero en resumen se trata de hacer páginas web modernas, usables y accesibles.

13 septiembre 2010

Recuperar archivos después de formatear un disco duro

Hard disk dissection
Estos días he estado echando una mano para intentar recuperar unas fotos de un ordenador con las peores condiciones posibles.

El caso

Era un ordenador que tenía Linux (Ubuntu) instalado, sin particiones y en el que se realizó una instalación nueva de Ubuntu encima de la existente, por lo que se formateo la partición y se instaló de nuevo Ubuntu. Tras unos días funcionando el propietario se percató de que no había hecho copia de seguridad de las fotos, que estaban en una carpeta diferente.

Intentar recuperar ese material de un ordenador que ya llevaba un tiempo funcionando es una tarea complicada, aunque al final tuvimos suerte y conseguimos recuperar casi todas las fotos, unas 15.000.

Primeros pasos

Realmente es impresionante la cantidad de herramientas disponibles para recuperar información a través de Linux. Lo primero que deberíamos hacer es montar un pequeño laboratorio de recuperación con uno de estos dos métodos:

a) Tomar una versión Live de Ubuntu o cualquier otra versión de Linux para evitar que el ordenador vuelva a arrancar desde el disco duro. Cuanto menos operemos con el disco duro original, más posibilidades tendremos de recuperarlo todo.

b) Extraer el disco duro del ordenador y conectarlo a otro ordenador, ya sea abríendolo y conectándolo como un disco secundario más o conectándolo mediante alguna carcasa externa de las disponibles en el mercado. En este caso debemos asegurarnos de que contamos con los conectores necesarios, ATA o SATA.

Documentación

Lo siguiente es seleccionar la herramienta adecuada. La primera opción que encontré fue el uso de Testdisk, mediante esta magnífica guía:

¿Cómo recuperar datos después de formatear con Ubuntu?

Este método no fue válido porque la partición que se creo en la segunda instalación iba justo encima de la otra, no se trata de una partición eliminada de datos, como en el ejemplo, además con un nombre específico. Aquí todas las particiones se llamaban igual y era casi imposible encontrar nada útil.

Antes de tirar la toalla investigué algúnos métodos más. Ubuntu cuenta con un documento perfecto para comprobar todas nuestas opciones.

Data Recovery en Ubuntu

De estas alternativas, dos herramientas (Foremost y Scalpel) pueden revisar el disco duro sector a sector buscando cabeceras de archivos conocidas y a partir de ellas recuperar los archivos. Ambos vienen a ser versiones de los mismo, por lo que opté por Foremost.

Instalar foremost

Tras arrancar con la versión Live o con un segundo equipo con el disco conectado, en Ubuntu se hace escribiendo
sudo apt-get install foremost
 Foremost, la salvación

Una vez instalado, la línea que lo pone en marcha es
sudo foremost -d -t jpg -i /dev/sde1 -o /home/antonio/restore

El -d es fundamental, ya que sino encontrará un montón de archivos pero estarán todos corruptos o incompletos. Ese parámetro hará que siga los bloques para completar las imágenes y no se quede sólo en el bloque que contiene la cabecera.

El -t jpg hace que sólo se busque ese tipo de archivos. En mi caso sólo buscábamos imágenes, aunque hay una lista amplia de extensiones que podemos probar. Cuantas más extensiones comprobemos más tardará el proceso. Se pueden poner una detrás de otra (p.e. -t jpg,gif,doc) o directamente todas con -t all

El -i /dev/sdb1 indica el disco duro que vamos a explorar. El sdb1 cambiará probablemente para el disco en cuestión. Si no sabes en qué /dev te ha montado el disco podrás encontrar alguna pista mirando el archivo /etc/mtab

El -o /lacarpetaquesea es el lugar dónde se soltarán los archivos que se encuentren. Es fundamental que no sea en el mismo disco duro que estamos intentando recuperar, claro.

Otro aspecto fundamental es que la carpeta donde vamos a recuperar los archivos debe tener suficiente espacio libre como para terminar el proceso completo. Vamos a buscar en un disco duro, por lo que seguramente necesitaremos mucho espacio.

Este proceso tardará bastante, dependiendo del sistema de conexión del disco duro, de nuestro ordenador y del número de archivos a recuperar. Con un poco de suerte al finalizar encontraremos una carpeta por cada tipo de extensión y en su interior el material perdido. En mi caso al menos así fue.

Posteriormente sólo me quedó utilizar una herramienta para renombrar archivos y ordenarlos por su fecha de toma de la imagen, organizando así las fotos por meses.

Mucha suerte.