Come Eseguire il Backup del Tuo Raspberry Pi

Eseguire il backup del tuo Raspberry Pi non deve essere complicato. Anche se ci sono molte soluzioni di backup sofisticate disponibili, a volte l’approccio più semplice è il più efficace. In questo articolo, ti mostrerò come usare rsync – un piccolo ma potente strumento da riga di comando perfetto per creare backup locali affidabili della tua configurazione Raspberry Pi.
Perché Rsync È Il Miglior Strumento Per Eseguire il Backup del Tuo Pi
Rsync (remote sync) è un potente strumento di sincronizzazione e trasferimento file che viene preinstallato sul tuo Raspberry Pi.
Alla sua base, rsync copia in modo efficiente i file da una posizione all’altra, ma è molto più intelligente di un semplice operazione di copia. Trasferisce solo le parti dei file che sono cambiate, risparmiando tempo e risorse di sistema. Questo è particolarmente utile quando si eseguono backup di file di grandi dimensioni che cambiano frequentemente.

Utilizzo principalmente rsync per eseguire il backup dei miei dati utente importanti sul Pi. Ad esempio, mantengo un server di galleria fotografica sul mio Raspberry Pi, e rsync è perfetto per mantenere una copia di backup di tutte quelle preziose immagini su un’unità esterna, con nuovi file o file modificati automaticamente rilevati e copiati.
A differenza degli strumenti di backup che copiano interi file, rsync trasferisce solo le parti cambiate, rendendo i backup significativamente più veloci e riducendo l’usura sulla tua scheda SD. La sua interfaccia da riga di comando lo rende perfetto per l’automazione con i cron job, mentre i controlli di checksum integrati garantiscono l’integrità del backup. Migliore di tutto, la natura leggera di rsync significa che non rallenterà il tuo Pi a meno che un processo di backup non sia in esecuzione al momento, né occuperà troppo spazio di archiviazione sulla scheda SD.
Per queste ragioni, rsync è la migliore soluzione per le mie esigenze, e credo sia una scelta ideale per molti altri utenti di Raspberry Pi che desiderano un sistema di backup affidabile ed efficiente.
Usare Rsync Per Eseguire il Backup di File e Cartelle del Raspberry Pi
Il modo più semplice per eseguire il backup di una directory è con il comando:
rsync -av /source/directory /backup/locationAd esempio, per eseguire il backup della mia directory home su un’unità esterna montata in “/media/backup”, utilizzo il comando:
rsync -av --delete /home/david/immich-app /media/backupper eseguire il backup del mio database della libreria fotografica.

Ecco cosa fanno le diverse opzioni:
-aattiva la modalità archivio, che preserva i permessi, la proprietà e i timestamp dei file.-vfornisce un’uscita verbosa in modo che io possa vedere cosa viene copiato.--deleterimuove i file dalla posizione di backup che non esistono più nella sorgente.
Nota: Dovresti anche sapere che rsync è particolare riguardo agli slash finali nei percorsi. Uno slash finale sulla sorgente significa “copia il contenuto di questa directory” piuttosto che la directory stessa. Ad esempio, rsync -av --delete /home/pi/folder /media/backup copia il contenuto di ‘folder’ direttamente in ‘backup’, mentre omettendo lo slash copia la directory ‘folder’ stessa in ‘backup’.
Verifica Il Tuo Backup Del Raspberry Pi
Prima di fare affidamento sul tuo backup, dovresti verificare che funzioni correttamente. Il modo più semplice per controllare è utilizzare l’opzione dry run con rsync, che può essere specificata come -n o --dry-run. Eseguendo il comando:
rsync -avn --delete /home/pi/folder /media/backupnon dovrebbero comparire file da trasferire se il tuo backup è aggiornato.

Per una verifica più approfondita, puoi aggiungere l’opzione -c o --checksum al tuo comando rsync. Pur essendo più lenta rispetto al confronto di timestamp e dimensioni predefinito, questo garantisce che ogni file sia completamente identico tra sorgente e backup tramite il calcolo dei checksum. Esegui semplicemente:
rsync -avc --delete /home/pi/folder /media/backupIl modo più dettagliato per verificare il tuo backup è utilizzare il comando diff, che confronta ogni file e directory tra le tue posizioni sorgente e backup. Per eseguire questa verifica, usa:
diff -r /home/pi/folder /media/backup/folderL’opzione -r dice a diff di controllare tutte le sottodirectory ricorsivamente. Se il comando non produce output, significa che il tuo backup è identico alla sorgente. Se ci sono differenze, diff mostrerà esattamente quali file sono diversi o mancanti.
Creare Backup Completi Del Raspberry Pi Utilizzando Rsync
In alcune situazioni, può essere più conveniente e sicuro eseguire il backup dell’intera scheda SD del Raspberry Pi invece di solo un paio di cartelle importanti.
Per creare backup completi del Raspberry Pi utilizzando rsync, avrai bisogno di una destinazione di backup – un’altra scheda SD o un’unità esterna con spazio sufficiente per contenere l’intero sistema. L’unità di backup dovrebbe essere formattata con un filesystem compatibile con Linux come ext4 per preservare correttamente tutti i permessi e attributi dei file.
La parte più complicata del backup di un’intero sistema Raspberry Pi è gestire correttamente le directory e i file di sistema speciali. Per la mia esperienza, la soluzione più semplice è escludere le directory di sistema che non devono essere sottoposte a backup o che potrebbero causare problemi se ripristinate. Crea un file chiamato “backup-exclude.txt” e aggiungi le seguenti directory di sistema che dovrebbero essere escluse dal backup:
- /proc/* # Informazioni sui processi in esecuzione
- /sys/* # Informazioni sul kernel e sul sistema
- /dev/* # File dispositivi
- /tmp/* # File temporanei
- /run/* # Dati di esecuzione
- /mnt/* # Punti di montaggio
- /media/* # Supporti removibili
- /home/pi/.cache/* # File di cache utente
- /lost+found # Directory di recupero filesystem
Con queste esclusioni in atto, puoi chiudere quante più applicazioni in esecuzione possibile e poi eseguire il seguente comando di backup:
sudo rsync -avxhP --delete --exclude-from=/home/pi/backup-exclude.txt / /media/backup/rootfs/L’opzione -x impedisce a rsync di oltrepassare i confini del filesystem, il che potrebbe causare problemi con le directory di sistema. L’opzione -h fa sì che rsync mostri le dimensioni dei file e le velocità di trasferimento in un formato leggibile dall’utente.
Automatizzare I Backup Rsync
Sebbene i backup completi creati manualmente siano utili, preferisco automatizzarli utilizzando il programma di pianificazione cron integrato di Linux. Per impostarlo, crea un file chiamato “backup-pi.sh” nella tua directory home con il seguente contenuto:
#!/bin/bash
BACKUP_DRIVE="/media/backup"
LOG_FILE="/home/pi/backup-log.txt"
# Controlla se l'unità di backup è montata
if ! mountpoint -q $BACKUP_DRIVE; then
echo "L'unità di backup non è montata in $BACKUP_DRIVE" >> $LOG_FILE
exit 1
fi
# Crea un timestamp per il logging
date >> $LOG_FILE
# Esegui il backup con controllo degli errori
sudo rsync -avxhP --delete \
--exclude-from=/home/pi/backup-exclude.txt \
/ $BACKUP_DRIVE/rootfs/ \
>> $LOG_FILE 2>&1
# Registra il completamento del backup
echo "Backup completato il $(date)" >> $LOG_FILE
echo "-------------------" >> $LOG_FILERendi lo script eseguibile con chmod +x backup-pi.sh, poi programmaal nelle cron. Digita crontab -e e aggiungi questa riga per eseguire il backup quotidianamente a mezzanotte:
0 0 * * * /home/pi/backup-pi.sh
Ripristinare I Tuoi Backup Rsync Del Raspberry Pi
Per ripristinare file o directory individuali, il processo è semplice. Basta scambiare la sorgente e la destinazione nel tuo comando rsync. Ad esempio, per ripristinare la tua libreria fotografica dal backup:
rsync -av /media/backup/home/david/immich-app/ /home/david/immich-app/Per un ripristino completo del sistema, avrai bisogno prima di un’installazione fresca di Raspberry Pi OS sulla tua scheda SD. Inizia installando una copia fresca di Raspberry Pi OS sulla tua nuova scheda SD. Una volta completato, avvia il tuo Pi con la nuova scheda SD e completa il processo di installazione iniziale. Poi, collega il tuo’unità di backup al tuo Pi. Quando tutto è collegato e montato correttamente, puoi ripristinare il tuo backup utilizzando il comando rsync:
sudo rsync -avxhP /media/backup/rootfs/ /Dopo che il ripristino è completo, ti consiglio di riavviare il tuo Pi per verificare se tutti i file ripristinati sono caricati correttamente. Dovresti anche verificare che i tuoi servizi e configurazioni importanti funzionino come previsto.
Se alcune applicazioni non funzionano dopo il ripristino, controlla i loro file di log (di solito in /var/log/) per eventuali errori relativi ai permessi. Potresti dover eseguire:
sudo chown -R $USER:$USER /home/$USERper correggere la proprietà dei file della tua directory home. Come puoi vedere, ripristinare con rsync è facile quanto creare backup – basta invertire i percorsi sorgente e destinazione nei tuoi comandi.
Sebbene io preferisca la semplicità della riga di comando di rsync, ci sono diversi eccellenti alternativi GUI se non ti senti a tuo agio con il terminale. Ad esempio, Syncthing ti consente di sincronizzare più cartelle tra diversi sistemi, mentre Timeshift offre funzionalità di snapshot di sistema con un’interfaccia pulita. Qualunque strumento tu scelga, la cosa importante è mantenere regolari backup del tuo Raspberry Pi per proteggere i tuoi dati e configurazioni di sistema preziosi.
Tutte le immagini di David Morelo.