Buscando por Internet se pueden encontrar diversas formas de clonar la tarjeta de nuestra Raspberry. Personalmente he probado varios métodos, algunos no muy ortodoxos, pero el que mejor me ha funcionado ha sido sacando la imagen con «dd» en Linux para después comprimirla con PiShrink
La ventaja que tiene PiShrink es que puede coger una imagen de unos 15 gigas, comprimirla, y dejar una imagen grabable de unos 3.5 gigas. Dependiendo del tamaño de la tarjeta y lo que tengamos metido en ella el tamaño obviamente variará, pero en el caso del proyecto de las pantallas estas han sido más o menos las cifras.
Pero no acaban ahí las bondades, pues al grabar la imagen en la tarjeta, cuando arranquemos la Raspberry la partición se redimensionará para ocupar todo el espacio disponible. Una maravilla.
Instalación de PiShrink
PiShrink es Open Source y está disponible aquí:
https://github.com/Drewsif/PiShrink
El modo de instalarlo viene allí mismo, pero es el siguiente:
wget https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh chmod +x pishrink.sh sudo mv pishrink.sh /usr/local/bin
No obstante, antes de poder usar PiShrink tendremos que tener una imagen creada. Esto lo vamos a hacer con «dd»
Crear una imagen con dd
El comando «dd» (Dataset Definition) permite crear imágenes y restaurarlas de una forma verdaderamente simple. Con todo, tiene diversas opciones que se pueden consultar en su manual, pero vamos a lo simple y vamos a crear una imagen de nuestra tarjeta, que ahora mismo es lo que necesitamos, y luego quien quiera profundizar, para eso tiene el manual. Al lío:
Pinchamos la microsd y comprobamos qué unidad tiene asignada, esto lo podemos hacer con:
sudo fdisk -l
Vamos a asumir que, por ejemplo, vemos las particiones de la tarjeta en /dev/sdb1 y /dev/sdb2, así que tendremos que sacar una imagen de /dev/sdb y vamos a crearla en /home/usuario El comando sería el siguiente:
sudo dd if=/dev/sdb of=/home/usuario/imagen.img status=progress
Por supuesto, ojito con la instrucción dd que hace cosas muy chulas y de modo muy fácil pero como nos colemos… «if» es origen, «of» es destino y la opción del final «status=progress» es para que vayamos viendo el progreso, pues de otra forma se queda el cursor parado sin dar ninguna información y parece que no esté haciendo nada aunque esté currando, porque crear la imagen lleva unos minutos.

Al final tendremos imagen.img (o el nombre que le hayamos querido dar) del tamaño de la tarjeta, si es de 16 gigas, pues más o menos eso.
Comprimir la imagen con PiShrink
Llega el momento de comprimirla tanto para hacerla transportable como para poderla grabar en otra tarjeta, porque aunque tengamos otra tarjeta del mismo tamaño puede suceder que al ir a grabarla nos salga el aviso de que hace falta más espacio (a mi me pasa siempre por definición, y con tarjetas de la misma marca). Toca echar mano del programa que acabamos de instalar, PiShrink.
sudo pishrink.sh /home/usuario/imagen.img /home/usuario/imagencomp.img
Fácil a más no poder. Cuando acabe tendremos el fichero de nuestra imagen comprimida que aquí hemos llamado imagencomp.img

Luego esta imagen ya podemos meterla en un pincho usb y grabar nuestra tarjeta como queramos. En mi caso la he llevado a otro pc y la he grabado con ImgWriter tal como hice con la imagen de Raspbian y no ha habido ni el más mínimo problema. Luego la he pinchado en la Raspberry, ha hecho un primer arranque, ha redimensionado la partición (casi no da tiempo a verlo, se intuye por unas letras rojas que salen), se ha reiniciado y listo.
Podríamos haber grabado esta misma imagen con dd, pero aquí sí que hay que tener mucho cuidadito si lo hacéis, porque ¿os imagináis qué pasaría si en «of» ponéis una unidad que no es la que corresponde a la tarjeta que queréis grabar? 😉