Installer RSYNC
Guide pas à pas pour l'installation et la configuration de Remote Synchronization (RSYNC) pour la synchronisation des données.
rsync (Remote Synchronization) est une application en ligne de commande multiplateforme permettant de synchroniser des données avec une consommation minimale de bande passante. Elle est largement utilisée pour la sauvegarde, la migration et la mise en miroir de données entre serveurs.
Par exemple, rsync permet de transférer des projets depuis un hébergement web vers un VPS, de synchroniser des répertoires entre plusieurs serveurs dédiés et de maintenir des copies à jour des fichiers au sein de l'infrastructure.
Installer rsync
Pour installer le module rsync sur le serveur, exécutez les commandes correspondantes selon votre système d'exploitation.
Pour CentOS :
yum -y install rsync
Pour Debian/Ubuntu :
sudo aptitude install rsync
Nos produits et services
Exemples d'utilisation de rsync
Synchronisation locale
sudo rsync -avh --delete /var/www/ /root/backup/www/
Cette commande synchronise le contenu du répertoire /var/www/ avec /root/backup/www/, en supprimant les fichiers qui n'existent plus dans la source. C'est utile pour créer un miroir de répertoire.
Synchronisation vers un serveur distant
sudo rsync -avh --delete /var/www/ root@192.168.1.50:/root/backup/www/
Dans cet exemple, les fichiers sont copiés vers un autre serveur via SSH. Pour effectuer la synchronisation, rsync doit être installé sur les deux serveurs.
Synchronisation depuis un serveur distant vers la machine locale
sudo rsync -avh root@192.168.1.50:/var/www/ /root/backup/www/
Cet exemple illustre la synchronisation de données depuis un serveur distant vers une machine locale. Cela permet de récupérer des fichiers depuis un autre serveur.
Synchronisation via SSH sur un port non standard
sudo rsync -avh -e "ssh -p 1111" root@192.168.1.50:/var/www/ /root/backup/www/
Si le serveur SSH est configuré pour utiliser un port non standard, par exemple 1111, le paramètre -e permet de spécifier ce port. Cet exemple permet de synchroniser des fichiers via SSH sur un port différent.
Exclusion de répertoires
sudo rsync -avh --exclude='dir/' --exclude='dir/tmp/' /var/www/ /root/backup/www/
Dans cet exemple, les fichiers des répertoires dir et dir/tmp sont exclus de la synchronisation. C'est utile pour ne pas inclure des données temporaires ou inutiles dans la sauvegarde.
Transfert de fichiers depuis un serveur distant (avec suppression de la source)
sudo rsync -avh --remove-source-files root@192.168.1.50:/var/www/ /var/www/
Cet exemple copie les fichiers depuis un serveur distant tout en les supprimant du répertoire source. Cela est particulièrement utile lors de la migration de données d'un serveur à un autre.
Copie d'une base de données MySQL vers un autre disque
sudo rsync -vrplogDtH --progress /var/lib/mysql/ /newhdd/var/lib/mysql/
Cet exemple permet de copier l'intégralité d'une base de données MySQL, y compris sa structure et ses fichiers. L'option --progress permet de suivre la progression du transfert.
Paramètres et flags rsync couramment utilisés
-v— mode verbeux (verbose) : affiche des informations détaillées sur le processus de copie.-r— copie récursive (recursive) : utilisée pour copier des répertoires.-a— mode archive (archive) : préserve les permissions, les liens symboliques, les horodatages et la structure des répertoires.-b— mode sauvegarde (backup) : crée des copies des fichiers modifiés avant de les remplacer.-c— vérification par somme de contrôle (checksum) : garantit que les données ont été synchronisées correctement.--delete— supprime les fichiers qui n'existent plus dans le dossier source.-h— affichage lisible (human-readable) : affiche les tailles de fichiers dans un format compréhensible (par exemple en mégaoctets).-n— simulation sans modification (dry-run) : montre ce qui serait fait sans effectuer les changements.-p— préservation des permissions (permissions) : garantit que les droits d'accès aux fichiers sont conservés.-z— compression des données lors du transfert (compress) : réduit le volume de données transférées.-H— préservation des liens physiques (hard links) s'ils sont présents dans les données sources.-x— restriction à un seul système de fichiers (one-file-system).
La liste complète des options disponibles se trouve dans le manuel :
man rsync
Aide
Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !