GNU/Linux >> Tutoriels Linux >  >> Linux

Comment utiliser Rsync pour synchroniser des fichiers nouveaux ou modifiés/modifiés sous Linux

En tant qu'administrateur système ou utilisateur expérimenté de Linux, vous avez probablement rencontré ou même utilisé à plusieurs reprises l'outil polyvalent Linux Rsync, qui permet aux utilisateurs de copier ou de synchroniser rapidement des fichiers localement et à distance. C'est aussi un excellent outil couramment utilisé pour les opérations de sauvegarde et de mise en miroir.

Certaines de ses caractéristiques et avantages éminents incluent; il est exceptionnellement polyvalent en ce sens qu'il peut copier localement, vers/depuis un shell distant ou un rsync distant, il est également remarquablement flexible, permettant aux utilisateurs de spécifier n'importe quel nombre de fichiers à copier.

Lecture suggérée : 10 exemples pratiques de commande Rsync sous Linux

De plus, il permet la copie de liens, d'appareils, de propriétaires de fichiers ou de répertoires, de groupes et d'autorisations. Il prend également en charge l'utilisation sans privilèges root et bien d'autres.

Un différentiel impératif de rsync par rapport aux autres commandes de copie de fichiers sous Linux est son utilisation du protocole de mise à jour à distance, pour ne transférer que la différence entre les fichiers ou le contenu des répertoires.

Par conséquent, dans cet article, nous examinerons comment rsync peut nous aider à synchroniser uniquement les fichiers ou le contenu des répertoires nouveaux ou modifiés lors des sauvegardes et au-delà sous Linux.

Pour commencer, vous devez vous rappeler que la forme conventionnelle et la plus simple d'utilisation de rsync est la suivante :

# rsync options source destination 

Cela dit, plongeons-nous dans quelques exemples pour découvrir comment le concept ci-dessus fonctionne réellement.

Synchronisation locale des fichiers à l'aide de Rsync

En utilisant la commande ci-dessous, pouvoir copier des fichiers de mes Documents répertoire vers /tmp/documents répertoire local :

$ rsync -av Documents/* /tmp/documents

Dans la commande ci-dessus, l'option :

  1. -a – signifie le mode d'archivage
  2. -v - signifie verbeux, montrant les détails des opérations en cours

Par défaut, rsync copie uniquement les fichiers nouveaux ou modifiés d'une source vers une destination, lorsque j'ajoute un nouveau fichier dans mes Documents répertoire, voici ce qui se passe après avoir exécuté la même commande une seconde fois :

$ rsync -av Documents/* /tmp/documents

Comme vous pouvez l'observer et le remarquer à partir de la sortie de la commande, seul le nouveau fichier est copié dans le répertoire de destination.

Lecture suggérée : Comment synchroniser deux serveurs Web/sites Web Apache à l'aide de Rsync

Le --update ou -u l'option autorise rsync pour ignorer les fichiers qui sont encore nouveaux dans le répertoire de destination, et une option importante, --dry-run ou -n nous permet d'exécuter une opération de test sans apporter de modifications. Il nous montre quels fichiers doivent être copiés.

$ rsync -aunv Documents/* /tmp/documents

Après avoir exécuté un test, nous pouvons supprimer le -n et effectuer une opération réelle :

$ rsync -auv Documents/* /tmp/documents

Synchroniser des fichiers de Linux local à distant

Dans l'exemple ci-dessous, je copie des fichiers de ma machine locale vers un serveur distant avec l'adresse IP - 10.42.1.5 . Afin de ne synchroniser que les nouveaux fichiers sur la machine locale, qui n'existent pas sur la machine distante, nous pouvons inclure le --ignore-existing choix :

$ rsync -av --ignore-existing Documents/* [email protected]:~/all/

Par la suite, pour synchroniser uniquement les fichiers mis à jour ou modifiés sur la machine distante qui ont changé sur la machine locale, nous pouvons effectuer un essai avant de copier les fichiers comme ci-dessous :

$ rsync -av --dry-run --update Documents/* [email protected]:~/all/
$ rsync -av --update Documents/* [email protected]:~/all/

Pour mettre à jour les fichiers existants et empêcher la création de nouveaux fichiers dans la destination, nous utilisons le --existing option.

Vous pouvez parcourir le man rsync page pour découvrir des options supplémentaires utiles pour une utilisation avancée, comme je l'avais mentionné plus tôt, rsync est un outil Linux très puissant et polyvalent, et de nombreux administrateurs système et utilisateurs expérimentés de Linux savent à quel point il est avantageux.

Plus important encore, vous pouvez également partager votre point de vue sur les exemples que nous avons couverts ici ou, mieux encore, nous offrir de précieux conseils sur l'utilisation de cet outil de ligne de commande essentiel via la section des commentaires ci-dessous.


Linux
  1. Comment utiliser Netcat pour transférer des fichiers sous Linux

  2. Comment trouver des fichiers modifiés au cours des 30 derniers jours sous Linux ?

  3. Comment utiliser la commande Rsync sous Linux ?

  4. Comment utiliser la commande Linux find pour rechercher des fichiers

  5. Comment utiliser FTP sous Linux pour transférer des fichiers

Synchronisation des fichiers et répertoires Linux avec rsync

Comment trouver des fichiers modifiés au cours des dernières 24 heures sous Linux

Comment synchroniser des fichiers dans les deux sens à l'aide du script Osync sous Linux

Comment utiliser les commandes FTP de Linux

Comment utiliser PhotoRec pour récupérer des fichiers supprimés sous Linux/Ubuntu

Comment utiliser Rsync pour copier/synchroniser des fichiers entre des serveurs