J'utilise toujours cet outil de sauvegarde Linux vieux de 30 ans, et vous devriez aussi
Créer des sauvegardes de mes fichiers a toujours été un problème pour moi et j'ai perdu beaucoup de données à plusieurs reprises à cause de cela. Il s'avère que c'est parce que je travaillais dur au lieu d'être intelligent. Au lieu de copier-coller des dossiers entre mon PC et mon disque externe, je pourrais simplement utiliser un outil qui envoie uniquement les modifications de fichiers. La sauvegarde des fichiers avec cette approche prend quelques secondes et je peux le faire en exécutant une seule commande.
Sommaire
Qu’est-ce que rsync et à qui s’adresse-t-il ?
Remote Sync ou rsync est un programme gratuit et open source qui existe depuis 1996 et constitue désormais un standard pour les systèmes Linux. Il s'agit d'un outil de ligne de commande conçu pour copier des fichiers et des répertoires entre deux points.
Fondamentalement, il vous permet de copier progressivement des fichiers ou des répertoires entre deux emplacements. Contrairement aux utilitaires de copie comme cpil ne copie pas l'intégralité du fichier à chaque fois. Il peut comparer les modifications entre un fichier à deux endroits et transférer uniquement les modifications, réduisant ainsi considérablement la bande passante et les temps de transfert.
Puisqu'il adopte cette approche incrémentielle, rsync synchronise essentiellement les fichiers et répertoires entre deux emplacements. Il exécute des sommes de contrôle pour vérifier qu'aucun contenu de fichier n'a été perdu ou corrompu pendant le transport. Les deux points n'ont même pas besoin d'être locaux car rsync possède également des fonctionnalités de mise en réseau, lui permettant de transférer des données via le protocole réseau crypté SSH.
La fonction de rsync semble simple sur le papier, mais c'est ce qui la rend incroyablement puissante. Les administrateurs système le conservent dans leur boîte à outils pour sauvegarder et mettre en miroir les serveurs. Les développeurs et les organisations l'utilisent pour déployer du code ou mettre en miroir de grands dépôts de logiciels.
Pour les utilisateurs réguliers comme nous, rsync est le moyen idéal pour sauvegarder des fichiers et des médias personnels. Si vous conservez un disque externe de sauvegarde, vous n'êtes pas obligé de copier des répertoires ou des fichiers entiers à chaque fois que vous créez une sauvegarde. Vous pouvez exécuter une seule commande et regarder rsync transférer uniquement les fichiers modifiés ou nouveaux sur le disque externe.
Que pouvez-vous faire avec rsync
En plus des sauvegardes incrémentielles, vous pouvez utiliser rsync pour créer des répliques parfaites de répertoires après avoir apporté des modifications à la source. Avec une seule commande, rsync peut effacer tous les fichiers présents dans le répertoire cible mais pas dans le répertoire source.
Il conservera les autorisations, la propriété, les horodatages et les liens symboliques lors de la mise en miroir de ces répertoires. Copier et coller des fichiers avec les gestionnaires de fichiers GUI peuvent modifier leurs métadonnées (date de création ou autorisations), mais rsync crée des copies parfaites, des métadonnées et tout.
Pour les transferts de fichiers plus volumineux, rsync est la meilleure option car il peut compresser les données pendant le transfert et reprendre les transferts ayant échoué ou interrompus. Les gestionnaires de fichiers ne fonctionnent pas non plus correctement lorsqu'un grand nombre de petits fichiers sont impliqués, mais cela n'affecte pas rsync. Avec rsync, vous ne perdez aucune vitesse et ne perdez pas de temps à recopier des données.
Vous pouvez également l'utiliser pour transférer des données via un tunnel SSH tout en utilisant les fonctionnalités sécurisées disponibles pour les transferts locaux.
Pour récapituler : rsync est parfait pour créer des sauvegardes intelligentes et incrémentielles. Il peut créer des miroirs parfaits de fichiers et de dossiers, métadonnées incluses. C'est plus rapide qu'un gestionnaire de fichiers graphique. Il peut reprendre les transferts de fichiers s'ils sont interrompus. Il prend également en charge les mêmes fonctionnalités pour les transferts réseau.
Les bases de rsync
Vous pouvez installer rsync à partir des dépôts officiels de votre gestionnaire de packages. Pour les systèmes Debian ou Ubuntu, exécutez la commande suivante pour installer rsync.
sudo apt install rsync
Les utilisateurs d'Arch peuvent l'installer en utilisant pacman.
sudo pacman -S rsync
Pour Fedora et ses dérivés, essayez cette commande.
sudo dnf install rsync
Pour utiliser rsync, vous devez connaître la structure de base de ses commandes. Vous commencez par appeler le programme rsync, puis vous ajoutez un indicateur ou une combinaison de ceux-ci pour sélectionner les options à activer, et enfin vous lui donnez les chemins de répertoire de la source et de la destination.
rsync (options) (source) (destination)
De nombreuses options sont disponibles dans rsync, mais vous n'avez pas besoin de toutes les connaître pour pouvoir les utiliser. Ce sont mes drapeaux préférés.
-
Archive (-a) sert à mettre en miroir les répertoires tout en préservant parfaitement les autorisations, les liens symboliques et les métadonnées.
-
Verbose (-v) vous donne un journal des fichiers transférés en temps réel.
-
Compresser (-z) compresse les fichiers pendant le transfert pour accélérer le transfert.
-
La progression ou partielle (-p) garantit que vous pouvez reprendre le transfert de fichiers en cas d'interruption.
-
L'exécution à sec (-n) simule les modifications qui seront apportées et à quoi ressemblera la destination avant que vous ne validiez les modifications. C'est bon pour vous assurer que vous n'écrasez pas ou n'effacez pas accidentellement des fichiers importants.
Essayons de déplacer un dossier à l'aide de rsync. J'essaie de déplacer ce dossier intitulé « Apple » dans mes téléchargements vers mon dossier « OS » sur un autre lecteur.
rsync -avp /home/jellyjam/Downloads/Apple /mnt/7f1e8ebb-93ac-48eb-8138-42380cce3253/OS
Les indicateurs « -avp » déclenchent les options d'archive, verbeuse et de progression. Ensuite, j'ai simplement ajouté les chemins de mes dossiers source et destination.
Si j'avais inclus un « https://www.howtogeek.com/ » à la fin de l'un ou l'autre chemin, rsync copierait simplement le contenu du fichier à l'intérieur du dossier vers le dossier de destination. Laisser le chemin sans barre oblique à la fin garantit qu'il copie le dossier lui-même, pas seulement son contenu.
Vous pouvez utiliser rsync pour cloner l'intégralité de votre répertoire personnel sur un disque externe, comme je l'ai fait, créant ainsi une sauvegarde parfaite. De temps en temps, vous pouvez exécuter la même commande pour mettre à jour la sauvegarde avec des fichiers modifiés ou nouveaux. La mise à jour des sauvegardes avec rsync prend à peine une fraction du temps qu'il faudrait pour tout copier.
