Saltar al contenido
GEEKnodes

Raspberry Pi

Copia de seguridad de la tarjeta SD de la Raspberry Pi

Clona la tarjeta SD de tu Raspberry Pi en Windows, macOS o Linux, comprime la imagen, restáurala y haz copias solo de tus datos con rsync.

Las tarjetas microSD fallan, y casi siempre sin avisar: un corte de luz o una tarjeta gastada y pierdes la configuración de semanas. Una copia de seguridad completa te permite volver a tener la Pi funcionando en minutos. Aquí verás cómo clonar la tarjeta desde Windows, macOS y Linux, cómo comprimir y restaurar la imagen, y cómo copiar solo tus datos con rsync.

En resumen

  • Hay dos estrategias: imagen completa de la tarjeta (restauras todo tal cual) o copia de los datos con rsync (más ligera y frecuente).
  • Raspberry Pi Imager no hace copias: solo graba imágenes. Para leer la tarjeta necesitas dd, Win32 Disk Imager, SD Card Copier o rpi-clone.
  • Con dd un error en el nombre del disco borra el disco equivocado. Comprueba el dispositivo dos veces.

Imagen completa o copia de datos

Comparativa: imagen completa de toda la tarjeta SD frente a copia de solo algunas carpetas con rsync a un disco USB
La imagen guarda la tarjeta entera; rsync, solo las carpetas que eliges.
Imagen completaCopia de datos con rsync
Qué guardaTodo: sistema, particiones y datosLas carpetas que elijas
TamañoEl de la tarjeta entera (menos si se comprime)Solo lo que ocupan tus archivos
RestaurarGrabar la imagen en una tarjetaInstalar el sistema y devolver los archivos
Frecuencia razonableTras cambios grandesDiaria o semanal
Pi apagadaSí, normalmenteNo: se hace en marcha

Lo ideal es combinar las dos: una imagen cuando tienes el sistema configurado y rsync para el día a día.

Clonar la tarjeta en Linux con dd

Apaga la Pi, saca la tarjeta y conéctala al ordenador con un lector.

Esquema de dd: la tarjeta SD /dev/sdb es el origen if y el archivo raspberry-backup.img es el destino of
if es el origen y of el destino: si los inviertes, sobrescribes la tarjeta.
  1. Identifica el dispositivo. Fíjate en el tamaño, no solo en el nombre:
lsblk

La tarjeta aparecerá como algo tipo /dev/sdb o /dev/mmcblk0, con dos particiones (bootfs y rootfs).

  1. Desmonta las particiones si el sistema las ha montado solas:
sudo umount /dev/sdb1 /dev/sdb2
  1. Lee la tarjeta entera a un archivo:
sudo dd if=/dev/sdb of=~/raspberry-backup.img bs=4M status=progress conv=fsync

if es el origen (la tarjeta) y of el destino (el archivo). Si los inviertes, sobrescribes la tarjeta con el archivo. Usa siempre el disco entero (/dev/sdb), nunca una partición (/dev/sdb1).

Clonar la tarjeta en macOS

macOS también trae dd, con nombres de disco distintos.

  1. Lista los discos y localiza la tarjeta por su tamaño:
diskutil list
  1. Desmonta la tarjeta, no la expulses. Cambia disk4 por el tuyo:
diskutil unmountDisk /dev/disk4
  1. Copia usando rdisk, que es el acceso en bruto y va bastante más rápido:
sudo dd if=/dev/rdisk4 of=~/raspberry-backup.img bs=4m

El dd de macOS no siempre muestra progreso. Pulsa Ctrl+T en la terminal para ver cuántos bytes lleva copiados.

Clonar la tarjeta en Windows

Windows no trae dd. La herramienta más usada es Win32 Disk Imager, que sí sabe leer una tarjeta:

  1. Escribe en Image File la ruta y el nombre del archivo que vas a crear, acabado en .img.
  2. Selecciona en Device la letra de la partición bootfs de la tarjeta.
  3. Pulsa Read (leer). No pulses Write: eso graba la imagen en la tarjeta.

Si Windows te ofrece formatear la tarjeta al insertarla, di que no. Ve la partición rootfs (ext4) como ilegible; es normal.

Clonar desde la propia Raspberry Pi

Si no quieres sacar la tarjeta, puedes clonarla en otra tarjeta o en un SSD conectado por USB, con la Pi en marcha.

SD Card Copier (escritorio)

Raspberry Pi OS con escritorio incluye SD Card Copier, en el menú Accesorios:

  1. Conecta la tarjeta o disco de destino con un adaptador USB.
  2. En Copy From Device elige la tarjeta interna y en Copy To Device, el destino.
  3. Pulsa Start. Borra el destino por completo.

Ajusta el tamaño de las particiones al destino, así que puedes copiar a una tarjeta más pequeña si los datos caben. La opción New Partition UUIDs sirve para usar las dos tarjetas a la vez en la misma Pi.

rpi-clone (terminal)

rpi-clone es un script que hace lo mismo desde la terminal y, en ejecuciones posteriores, solo copia los cambios con rsync, lo que lo hace muy rápido para copias periódicas. El proyecto original ya no se mantiene; usa un fork mantenido y lee sus instrucciones de instalación. El uso básico es:

sudo rpi-clone sda

Donde sda es el disco de destino, sin /dev/. El script te enseña qué va a hacer y pide confirmación.

Clonar con el sistema en marcha es práctico, pero si en ese momento hay un programa escribiendo (una base de datos, por ejemplo), la copia de esos archivos puede quedar inconsistente. Para servicios críticos, detenlos antes o haz la imagen con la Pi apagada.

Comprimir la imagen

Una imagen ocupa lo mismo que la tarjeta, aunque esté medio vacía: una tarjeta de 64 GB da un archivo de 64 GB. El espacio vacío se comprime muy bien:

HerramientaComandoComentario
gzipgzip -k raspberry-backup.imgRápido, compatible con todo
xzxz -k -T0 raspberry-backup.imgArchivos más pequeños, más lento; -T0 usa todos los núcleos
zipzip backup.zip raspberry-backup.imgCómodo para abrir en Windows

También puedes comprimir mientras copias, sin pasar por el archivo gigante:

sudo dd if=/dev/sdb bs=4M status=progress | xz -T0 > ~/raspberry-backup.img.xz

Si quieres reducir aún más, PiShrink (Linux) encoge la partición del sistema hasta el espacio usado. Así la imagen cabe en tarjetas más pequeñas y, al primer arranque, vuelve a expandirse.

Restaurar la imagen

La forma más segura es Raspberry Pi Imager: en Elegir SO baja hasta Usar personalizado y selecciona tu archivo. Acepta .img y también comprimidas como .img.xz, .gz o .zip.

Con dd en Linux:

xzcat ~/raspberry-backup.img.xz | sudo dd of=/dev/sdb bs=4M status=progress conv=fsync

Ten en cuenta que dos tarjetas de 32 GB no tienen exactamente la misma capacidad. Si la de destino es un poco más pequeña, la restauración de una imagen sin encoger fallará al final. Restaurar en una tarjeta igual o mayor evita el problema.

Copias de solo los datos con rsync

Para el día a día no necesitas clonar el sistema. Basta con guardar lo que no se puede reinstalar: tu carpeta personal, /etc y los datos de tus servicios. Con un disco USB montado en /mnt/backup:

sudo rsync -aAXH --delete /home/ /mnt/backup/home/
sudo rsync -aAXH --delete /etc/ /mnt/backup/etc/
OpciónQué hace
-aModo archivo: recursivo, conserva permisos, fechas y enlaces
-AConserva las ACL
-XConserva atributos extendidos
-HConserva enlaces duros
--deleteBorra en el destino lo que ya no está en el origen
--dry-runSimula sin copiar nada

La barra final en el origen importa: /home/ copia el contenido de la carpeta; /home crearía home/home en el destino. Prueba primero con --dry-run, sobre todo si usas --delete.

También puedes enviar la copia a otro equipo de la red por SSH:

rsync -aAXH --delete /home/tu-usuario/ usuario@192.168.1.50:/copias/raspberry/

Para que sea automática, programa estas líneas con cron o un timer de systemd.

Errores habituales

  • Equivocarse de disco en dd. Es irreversible. Comprueba el tamaño con lsblk o diskutil list justo antes y desconecta discos externos que no necesites.
  • Pensar que Raspberry Pi Imager hace copias. Solo escribe; no lee la tarjeta.
  • Guardar la copia en la misma tarjeta. Si la tarjeta muere, la copia muere con ella.
  • No probar nunca la restauración. Una copia que no has restaurado es una suposición. Grábala una vez en otra tarjeta y arranca con ella.
  • Usar --delete sin --dry-run la primera vez, con el origen y el destino cruzados.
  • Quedarse sin espacio en el ordenador. La imagen sin comprimir ocupa la tarjeta entera; comprime al vuelo si vas justo.

Relacionados

Preferencias de accesibilidad

Perfiles rápidos

Texto y lectura

Tamaño del texto
Por defecto
Altura de línea
Por defecto
Espaciado entre letras
Por defecto
Espaciado entre palabras
Por defecto

Color

Movimiento y orientación

Cursor