Lunes, Diciembre 11, 2017

Clonar particiones con partclone

previ06

A menudo nos podemos encontrar con la necesidad de respaldar nuestros datos en un disco duro externo o en cualquier otro soporte de almacenamiento seguro ante un formateo, o ante cualquier posible pérdida de datos que pueda ocurrir en un futuro imprevisto. Mucha gente recurre a soluciones privativas como Acronis, a programas libres como Clonezilla o a soluciones más clásicas como dd o rsync.

Para los que preferimos algo más simple, tenemos también partclone (software que usa Clonezilla por debajo de su interfaz), un programa libre y abierto con el que podemos crear imágenes de copia de seguridad de particiones de un disco duro de forma parecida a como se haría con dd, pero guardando únicamente el espacio utilizado por el sistema de archivos. Es decir, no se trataría de una clonación total como se realizaría por ejemplo con la utilidad dd, pero sí que sería una clonación más limpia en el que se ignorarán los bloques no usados y se guardarán solamente los que estén usados por el sistema de archivos, sin tener que preocuparte luego por redimensionar las particiones donde los vayas a volcar.

explic

Con este software podemos crear imágenes de disco usando el espacio útil de particiones con los siguientes formatos: Btrfs, exFAT, ext2, ext3, ext4, f2fs, FAT12, FAT16, FAT32, HFS+, MINIX fs, NILFS2, NTFS, ReiserFS o XFS. Para otros formatos, se puede usar partclone también, pero en modo imagen (partclone.imager o partclone.dd) para realizar clonaciones completas como se harían con dd o dd_rescue.

Esas imágenes luego las podemos usar para restaurar una partición antigua de datos en un nuevo disco duro, o también por ejemplo para instalar una misma distribución en varios equipos sin necesidad de tener que reinstalar y configurar uno por uno cada equipo. Y todos los usos que se le pueda ocurrir a uno para clonar una o varias particiones.

Ejemplo con un pendrive

Por ejemplo, vamos a clonar un pendrive con una única partición de unos 8 GB con sólo 355 GiB de datos guardados creando primero una imagen de la misma en nuestro disco duro local o en uno externo. Antes que nada, vamos a instalar partclone desde nuestro gestor de paquetes en caso de que no lo tengamos instalado aún.

# Debian, Ubuntu, Mint y otros derivados.
apt install partclone
# Arch Linux, Manjaro, Antergos y otros derivados.
pacman -S partclone

(Para otras distribuciones, mirar aquí)

A continuación vamos a comprobar dónde tenemos nuestro pendrive, qué formato tiene la partición que queremos clonar y asegurarnos de que esté desmontada:

> fdisk -l
(...)
Disco /dev/sdb: 7,4 GiB, 7948206080 bytes, 15523840 sectores
Unidades: sectores de 1 * 512 = 512 bytes
Tamaño de sector (lógico/físico): 512 bytes / 512 bytes
Tamaño de E/S (mínimo/óptimo): 512 bytes / 512 bytes
Tipo de etiqueta de disco: dos
Identificador del disco: 0x4f6956ee
Disposit. Inicio Comienzo Final Sectores Tamaño Id Tipo
/dev/sdb1 * 8192 15523839 15515648 7,4G c W95 FAT32 (LBA)
> umount /dev/sdb1

En nuestro caso tenemos un pendrive en /dev/sdb con una única partición FAT32 (/dev/sdb1) que acabamos de desmontar de unos 7,4 GiB (casi 8 GB). Con esto ya tenemos suficiente información para poder realizar la clonación correctamente con partclone.

partclone

Las distintas utilidades que tiene este software han de ser ejecutadas desde línea de comandos de la siguiente forma: partclone.[sistema de archivos]. Si quieres ver una lista de las que están disponibles, teclea en la terminal “partclone.” y ayúdate con la tecla Tabulación para encontrar cuál es la utilidad de partclone que se ajusta al sistema de archivos de la partición que quieras clonar.

En nuestro caso será partclone.fat32, que al igual que todas las demás, tiene la siguiente sintaxis básica para realizar una imagen de la partición clonada:

partclone.fat32 -c -s /dev/sdb1 -o /media/user/HDEXT/sdmcp1.vfat.pci

Siendo en el ejemplo /dev/sdb1 el bloque de dispositivo perteneciente a nuestro pendrive como hemos visto antes, y /media/user/HDEXT/sdmcp1.vfat.pci la ruta completa del archivo que queremos guardar la imagen que vaya a crear partclone. Nos tenemos que asegurar de que la partición donde se vaya a volcar la imagen de la partición clonada sea más grande que el espacio utilizado por la partición que iremos a copiar.

Si leemos el manual, veremos que el flag -c que le hemos pasado es para indicar al programa que queremos crear una imagen para clonar la partición. En caso de que queramos restaurar una partición con el contenido de una imagen que hayamos creado previamente con partclone, tendremos que pasarle en su lugar el flag -r y cambiar la ruta de origen (-s) y la ruta de destino (-o):

partclone.fat32 -r -s /media/user/HDEXT/sdmcp1.vfat.pci -o /dev/sdc1

En este último ejemplo, estamos mandando a partclone volcar el contenido de la imagen sdmcp1.vfat.pci que hemos creado antes sobre la partición /dev/sdc1 que pertenece a otro dispositivo de almacenamiento que hemos conectado (p. ej. una tarjeta SD por medio de un adaptador USB). Nos tenemos que asegurar antes de que la partición que hayamos creado sobre este nuevo disco sea más grande que el contenido de la imagen que hemos creado previamente.

En ambos casos se mostrará el proceso de las operaciones directamente en la consola. Si en su lugar queremos verlo en una interface ncurses, podemos agregarle el flag -N al comando de la operación que queramos realizar, por ejemplo:

partclone.fat32 -r -s /media/user/HDEXT/sdmcp1.vfat.pci -o /dev/sdc1 -N

partclone-1

Yo recomiendo guardar las imágenes con un nombre descriptivo donde se pueda distinguir de dónde proviene la copia y en qué formato está guardado. En mi caso lo he nombrado sdmcp1.vfat.pci por ser un sistema de archivos extraído originalmente de una tarjeta SD (SD Memory Card), por tener formato FAT32 (VFAT) y creado con partclone (PartClone Image).

No obstante, si por cualquier razón se nos olvida qué formato tenía la partición grabada en una imagen de partclone, siempre podemos recurrir a examinar la cabecera del archivo con head, o bien a la utilidad partclone.info incluida en este paquete de software:

partclone-2

 

Fuente: lignux

¿Quién está en línea?

Hay 124 invitados y ningún miembro en línea

Contador de Visitas

9070324
Hoy Hoy 163
Ayer Ayer 967
Esta semana Esta semana 163
Este mes Este mes 9091
Total de Visitas Total de Visitas 9070324

Día con más
visitantes

11-11-2017 : 2493

Gracias por su visita