
Table des matières
Sauvegarder votre Raspberry Pi n’a pas besoin d’être compliqué. Bien qu'il existe de nombreuses solutions de sauvegarde sophistiquées, l'approche la plus simple est parfois la plus efficace. Dans cet article, je vais vous montrer comment utiliser rsync – un outil de ligne de commande petit mais puissant, parfait pour créer des sauvegardes locales fiables de votre configuration Raspberry Pi.
Pourquoi Rsync est le meilleur outil pour sauvegarder votre Pi
Rsync (synchronisation à distance) est un puissant outil de synchronisation et de transfert de fichiers préinstallé sur votre Raspberry Pi.
À la base, rsync copie efficacement les fichiers d'un emplacement à un autre, mais c'est beaucoup plus intelligent qu'une simple opération de copie. Il transfère uniquement les parties des fichiers qui ont été modifiées, économisant ainsi du temps et des ressources système. Ceci est particulièrement utile lors de la sauvegarde de fichiers volumineux qui changent fréquemment.
J'utilise principalement rsync pour sauvegarder mes données utilisateur importantes sur le Pi. Par exemple, je gère un serveur de galerie de photos sur mon Raspberry Pi, et rsync est parfait pour conserver une copie de sauvegarde de toutes ces précieuses images sur un disque externe, avec des fichiers nouveaux ou modifiés automatiquement détectés et copiés.
Contrairement aux outils de sauvegarde qui copient des fichiers entiers, rsync ne transfère que les parties modifiées, ce qui rend les sauvegardes beaucoup plus rapides et réduit l'usure de votre carte SD. Son interface de ligne de commande le rend parfait pour l'automatisation des tâches cron, tandis que la somme de contrôle intégrée garantit l'intégrité de la sauvegarde. Mieux encore, la nature légère de rsync signifie qu'il ne ralentira pas votre Pi à moins qu'un processus de sauvegarde ne soit en cours d'exécution, et qu'il n'occupera pas non plus trop d'espace de stockage sur la carte SD.
Pour ces raisons, rsync est la meilleure solution pour mes besoins, et je pense que c'est un choix idéal pour de nombreux autres utilisateurs de Raspberry Pi qui souhaitent un système de sauvegarde fiable et efficace.
Utiliser Rsync pour sauvegarder les fichiers et dossiers Raspberry Pi
Le moyen le plus simple de sauvegarder un répertoire consiste à utiliser la commande :
rsync -av /source/directory /backup/location
Par exemple, pour sauvegarder mon répertoire personnel sur un disque externe monté sur « /media/backup », j'utilise la commande :
rsync -av --delete /home/david/immich-app /media/backup
pour sauvegarder la base de données de ma photothèque.

Voici ce que font les différentes options :
-a
active le mode d'archivage, qui préserve les autorisations, la propriété et les horodatages des fichiers-v
fournit une sortie détaillée afin que je puisse voir ce qui est copié.--delete
supprime les fichiers de l'emplacement de sauvegarde qui n'existent plus dans la source.
Note: Vous devez également savoir que rsync est particulièrement attentif aux barres obliques finales dans les chemins. Une barre oblique finale sur la source signifie « copier le contenu de ce répertoire » plutôt que le répertoire lui-même. Par exemple, rsync -av --delete /home/pi/folder /media/backup
copie le contenu du « dossier » directement dans « sauvegarde », tout en omettant la barre oblique, copie le répertoire « dossier » lui-même dans « sauvegarde ».
Vérifiez votre sauvegarde Raspberry Pi
Avant de vous fier à votre sauvegarde, vous devez vérifier qu'elle a fonctionné correctement. Le moyen le plus simple de vérifier consiste à utiliser l'option d'exécution à sec avec rsync, qui peut être spécifiée comme suit : -n
ou --dry-run
. Exécution de la commande :
rsync -avn --delete /home/pi/folder /media/backup
ne devrait montrer aucun fichier devant être transféré si votre sauvegarde est à jour.

Pour une vérification plus approfondie, vous pouvez ajouter le -c
ou --checksum
option à votre commande rsync. Bien que plus lent que la comparaison d'horodatage et de taille par défaut, cela garantit que chaque fichier est complètement identique entre la source et la sauvegarde en calculant les sommes de contrôle. Exécutez simplement :
rsync -avc --delete /home/pi/folder /media/backup
La manière la plus détaillée de vérifier votre sauvegarde consiste à utiliser le diff
commande, qui compare chaque fichier et répertoire entre vos emplacements source et de sauvegarde. Pour effectuer cette vérification, utilisez :
diff -r /home/pi/folder /media/backup/folder
Le -r
L'option indique à diff de vérifier tous les sous-répertoires de manière récursive. Si la commande ne produit aucune sortie, cela signifie que votre sauvegarde est identique à la source. S'il y a des différences, diff
vous montrera exactement quels fichiers sont différents ou manquants.
Création de sauvegardes complètes Raspberry Pi à l'aide de Rsync
Dans certaines situations, il peut être plus pratique et plus sûr de sauvegarder l'intégralité de votre carte SD Raspberry Pi au lieu de seulement une poignée de dossiers importants.
Pour créer des sauvegardes complètes de Raspberry Pi à l'aide de rsync, vous aurez besoin d'une destination de sauvegarde : soit une autre carte SD, soit un disque externe avec suffisamment d'espace pour contenir l'intégralité de votre système. Le lecteur de sauvegarde doit être formaté avec un système de fichiers compatible Linux tel que ext4 pour conserver correctement toutes les autorisations et attributs de fichiers.
La partie la plus délicate de la sauvegarde d’un système Raspberry Pi complet consiste à gérer correctement les répertoires et fichiers système spéciaux. D'après mon expérience, la solution la plus simple consiste à exclure les répertoires système qui n'ont pas besoin d'être sauvegardés ou qui pourraient causer des problèmes s'ils sont restaurés. Créez un fichier appelé « backup-exclude.txt » et ajoutez les répertoires système suivants qui doivent être exclus de la sauvegarde :
- /proc/* # Informations sur le processus d'exécution
- /sys/* # Informations sur le noyau et le système
- /dev/* # Fichiers de périphérique
- /tmp/* # Fichiers temporaires
- /run/* # Données d'exécution
- /mnt/* # Points de montage
- /media/* # Support amovible
- /home/pi/.cache/* # Fichiers de cache utilisateur
- /lost+found # Répertoire de récupération du système de fichiers
Une fois ces exclusions en place, vous pouvez fermer autant d'applications en cours d'exécution que possible, puis exécuter la commande de sauvegarde suivante :
sudo rsync -avxhP --delete --exclude-from=/home/pi/backup-exclude.txt / /media/backup/rootfs/
Le -x
L'option empêche rsync de franchir les limites du système de fichiers, ce qui pourrait entraîner des problèmes avec les répertoires système. Le -h
L'option permet à rsync d'afficher la taille des fichiers et les vitesses de transfert dans un format lisible par l'homme.
Automatisation des sauvegardes rsync
Bien que les sauvegardes complètes créées manuellement soient utiles, je préfère les automatiser à l'aide du planificateur cron intégré de Linux. Pour configurer cela, créez un fichier appelé « backup-pi.sh » dans votre répertoire personnel avec ce contenu :
#!/bin/bash BACKUP_DRIVE="/media/backup" LOG_FILE="/home/pi/backup-log.txt" # Check if backup drive is mounted if ! mountpoint -q $BACKUP_DRIVE; then echo "Backup drive not mounted at $BACKUP_DRIVE" >> $LOG_FILE exit 1 fi # Create timestamp for logging date >> $LOG_FILE # Run backup with error checking sudo rsync -avxhP --delete --exclude-from=/home/pi/backup-exclude.txt / $BACKUP_DRIVE/rootfs/ >> $LOG_FILE 2>&1 # Record backup completion echo "Backup finished at $(date)" >> $LOG_FILE echo "-------------------" >> $LOG_FILE
Rendre le script exécutable avec chmod +x backup-pi.sh
puis planifiez-le à l'aide de cron. Taper crontab -e
et ajoutez cette ligne pour exécuter la sauvegarde quotidiennement à minuit :
0 0 * * * /home/pi/backup-pi.sh

Restauration de vos sauvegardes Rsync Raspberry Pi
Pour restaurer des fichiers ou des répertoires individuels, le processus est simple. Échangez simplement la source et la destination dans votre commande rsync. Par exemple, pour restaurer votre photothèque à partir d'une sauvegarde :
rsync -av /media/backup/home/david/immich-app/ /home/david/immich-app/
Pour une restauration complète du système, vous aurez d'abord besoin d'une nouvelle installation du système d'exploitation Raspberry Pi sur votre carte SD. Commencez par installer une nouvelle copie du système d’exploitation Raspberry Pi sur votre nouvelle carte SD. Une fois cela fait, démarrez votre Pi avec la nouvelle carte SD et terminez le processus de configuration initiale. Ensuite, connectez votre lecteur de sauvegarde à votre Pi. Lorsque tout est connecté et monté correctement, vous pouvez restaurer votre sauvegarde à l'aide de la commande rsync :
sudo rsync -avxhP /media/backup/rootfs/ /
Une fois la restauration terminée, je vous recommande de redémarrer votre Pi pour vérifier si tous les fichiers restaurés sont correctement chargés. Vous devez également vérifier que vos services et configurations importants fonctionnent comme prévu.
Si certaines applications ne fonctionnent pas après la restauration, vérifiez leurs fichiers journaux (généralement dans /var/log/) pour détecter toute erreur liée aux autorisations. Vous devrez peut-être exécuter :
sudo chown -R $USER:$USER /home/$USER
pour corriger la propriété des fichiers de votre répertoire personnel. Comme vous pouvez le constater, la restauration avec rsync est aussi simple que la création de sauvegardes : il suffit d'inverser les chemins source et de destination dans vos commandes.
Bien que je préfère la simplicité de la ligne de commande de rsync, il existe plusieurs excellentes alternatives d'interface graphique si vous n'êtes pas à l'aise avec le terminal. Par exemple, Syncthing vous permet de synchroniser plusieurs dossiers sur différents systèmes, tandis que Timeshift offre une fonctionnalité d'instantané système avec une interface épurée. Quel que soit l'outil que vous choisissez, l'important est de conserver des sauvegardes régulières de votre Raspberry Pi pour protéger vos précieuses données et configurations système.