Preparar una imagen de disco creada con Clonezilla para restaurar en discos más pequeños | Algo de Linux

viernes, 21 de noviembre de 2014

Preparar una imagen de disco creada con Clonezilla para restaurar en discos más pequeños

Uno de los problemas que tenemos a la hora de clonar discos con Clonezilla es que no podemos restaurar una imagen de un disco más grande en uno más pequeño. Alguien dirá que ésto es lógico puesto que si el disco de origen es más grande, no va a caber en el más pequeño.

Bien. Esto es cierto. ¿Pero qué pasa si reduzco proporcionalmente las particiones para que quepan en el disco de destino? Pues sencillamente que tampoco podemos restaurar la imagen. Por lo que he podido ver, ésto se debe a que Clonezilla guarda el tamaño del disco, además del tamaño de las particiones, y si el tamaño del disco de origen es mayor que el de destino, no realiza la restauración.

Ahora bien, si abrimos el directorio que contiene todos los archivos que forman parte de la imagen, encontraremos uno que guarda la información del disco y la tabla de particiones: sda-pt.parted

Como podéis deducir, este archivo está generado con la herramienta de gestión de particiones parted.

Si reducimos las particiones para que quepan en el disco de destino y retocamos manualmente la información de tamaño de disco almacenado en el archivo sda-pt.parted, podremos restaurar la imagen sin ningún problema.

Por lo tanto, lo que podemos hacer es ejecutar, en el disco de destino, el comando:
# parted /dev/sda unit s print
Con ésto, le estamos diciendo a parted que muestre la información del disco en sectores. A continuación tomamos nota del número de sectores que tiene este disco y lo modificamos en el fichero sda-pt.parted de la imagen.

Veamos un ejemplo:
Supongamos que vamos a restaurar una imagen de un disco de 500GB y hemos reducido las particiones para que quepan en un disco de 320GB. En el disco más pequeño, tendremos que ejecutar el comando:
# parted /dev/sda unit s print 
Obtendremos una salida parecida a la siguiente:
Model: ATA ST9320325AS (scsi)
Disk /dev/sda: 625142448s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start       End         Size        Type      File system     Flags
 1      1s          585937s     585937s     primary   ext3            boot
 2      585938s     39656250s   39070313s   primary   ext4
 3      39656251s   78726562s   39070312s   primary   ext4
 4      78726563s   625137344s  546410782s  extended                  lba
 5      78726564s   82632812s   3906249s    logical   linux-swap(v1)
 6      82632814s   312576704s  229943891s  logical   ext4
 7      312576768s  321798014s  9221247s    logical   ext3
 8      321798078s  441916019s  120117942s  logical   ext4
A continuación, nos fijamos en la línea que he resaltado en color rojo y tomamos nota del tamaño del disco.

Por último, abrimos la carpeta donde se encuentran almacenados los archivos que forman la imagen de clonación, editamos el fichero sda-pt.parted y modificamos la información de tamaño de disco para que tenga el tamaño del disco de destino.
Publicado por primera vez en http://enavas.blogspot.com.es

3 comentarios:

Claudio dijo...

Hola
Miré tutoriales en inglés y español tratando de encontrar solución a mi situación: disco ssd (sda) donde están / y swap comenzó a dar fallos. Cloné ese disco en otro más grande para usarlo momentáneamente mientras compraba un sustituto para sda, reinstale kubuntu actualizándolo y sin formatear /home (sdb). La actualización funcionó de maravilla, solo que mi sda provisional era muy grande para su función. Con el reemplazo en mano ahora necesitaba clonar el disco provisional (grande) en el nuevo ssd, más pequeño. Su solución para clonar un disco grande en otro más pequeño no la encontré en otro lugar. Funciona al 100%.
De paso vi algunas entradas a su blog y me parecieron muy interesantes, le estaré visitando frecuentemente.
Gracias

Jorge dijo...

Funciona, gracias llevaba tiempo buscando una solucion a esto.

Dirección: dijo...

HAY QUE HACER OTRA CORRECCIÓN MÁS !!!! He seguido los pasos de este blog porque es la mejor solución encontrada, pero hay que hacer un paso adicional:

Abran todos los archivos que estén en el directorio, y cambien el número de sectores en los otros archivos que se encuentran en la carpeta que contiene la imagen, no solo en el archivo "sda-pt.parted" que indica este blog, ya que seguirá indicando el error de que el disco no es lo suficientemente grande en rojo cuando intentamos restaurar la imagen.

Abrazo Grande. Javier