Comment utiliser la commande rsync pour Copier des fichiers sur Ubuntu
rsync est un outil pour copier des fichiers. rsync est utilisé pour copier des fichiers de votre ordinateur vers une machine distante, d’une machine distante vers votre ordinateur, d’un répertoire vers un autre répertoire du même ordinateur, de votre ordinateur vers un disque dur externe ou un partage réseau, etc. rsync peut également être utilisé pour effectuer des sauvegardes incrémentielles.
Dans cet article, je vais vous montrer comment utiliser la commande rsync pour copier des fichiers et des répertoires et effectuer une sauvegarde incrémentielle. Je vais utiliser Ubuntu pour la démonstration. Mais toute distribution Linux moderne devrait très bien fonctionner. Alors, commençons.
Installation de rsync :
rsync devrait déjà être installé sur Ubuntu. Mais, s’il n’est pas installé sur votre ordinateur pour une raison quelconque, vous pouvez facilement l’installer à partir du référentiel de paquets officiel d’Ubuntu avec la commande suivante :
Format de la commande rsync:
Le format de base de la commande rsync est,
- la source peut être un fichier, un répertoire ou un chemin réseau.
- la destination peut être un répertoire ou un chemin réseau.
- rsync a de nombreuses options. Vous pouvez modifier le comportement de rsync à l’aide de ces options. Nous examinerons certaines des options les plus courantes en cours de route.
Lorsque vous utilisez rsync, vous devez connaître les éléments suivants:
- Si vous mettez un / après le nom du répertoire dans la source de rsync tel que myfiles /, cela signifie copier tous les fichiers de l’intérieur du répertoire uniquement vers la destination.
- Si vous ne mettez pas un / après le nom du répertoire dans la source de rsync tel que myfiles, rsync copiera tous les fichiers du répertoire vers la destination, y compris le répertoire.
- Si vous saisissez un chemin de répertoire de destination qui n’existe pas, rsync le créera automatiquement selon les besoins.
Sauvegarde des fichiers et Répertoires locaux avec rsync:
Vous pouvez copier des fichiers d’un répertoire vers un autre répertoire de votre ordinateur très rapidement avec rsync.
Par exemple, disons que vous avez des fichiers importants dans le répertoire ~/Downloads. Maintenant, vous voulez sauvegarder tous les fichiers du répertoire ~/Downloads sur votre clé USB /dev/sdb1 montée dans le répertoire /mnt/myusb.
Faisons quelques fichiers factices dans le répertoire ~/Downloads.
Maintenant, copiez tous les fichiers du répertoire ~/Downloads dans le répertoire /mnt/myusb avec la commande rsync suivante:
Les fichiers doivent être copiés.
Comme vous pouvez le voir, les fichiers sont dans le répertoire /mnt/myusb.
Vous pouvez également copier l’ensemble du répertoire ~/Downloads sur votre clé USB comme suit:
Comme vous pouvez le voir, tout le répertoire est copié sur la clé USB.
Encore une fois, si vous vouliez copier tous les fichiers du répertoire ~/Downloads vers un autre répertoire (disons mydownloads /) sur votre clé USB, exécutez rsync comme suit:
Comme vous pouvez le voir, les fichiers sont correctement copiés sur la clé USB.
Sauvegarde des fichiers et répertoires distants avec rsync :
Avec rsync, vous pouvez copier les fichiers et répertoires d’un serveur distant vers votre système de fichiers local ou votre clé USB à des fins de sauvegarde. Vous pouvez également copier des fichiers et des répertoires de votre système de fichiers local vers votre serveur de sauvegarde distant. rsync utilise SSH pour copier des fichiers et des répertoires vers/depuis un serveur distant.
Vous devez avoir le package serveur SSH (openssh-server sur Ubuntu) et le package rsync installés sur le serveur distant si vous souhaitez utiliser rsync à des fins de sauvegarde de fichiers.
Par exemple, disons que vous voulez copier tout le contenu (y compris le répertoire) du répertoire /www de votre serveur distant www.example1.com sur votre clé USB montée sur le chemin /mnt/myusb sur votre système de fichiers local.
Pour ce faire, vous pouvez utiliser la commande rsync suivante :
REMARQUE: Ici, root est le nom d’utilisateur distant, www.example1.com est le nom DNS du serveur distant et /www est un chemin d’accès au répertoire sur le serveur distant. Vous pouvez également utiliser l’adresse IP du serveur distant au lieu du nom DNS si vous le souhaitez.
Vous pouvez voir le message suivant si vous vous connectez au serveur distant pour la première fois. Tapez simplement yes, puis appuyez sur < Entrez >.
Maintenant, tapez le mot de passe de l’utilisateur distant (dans mon cas, c’est root) et appuyez sur < Entrez >.
Tous les fichiers et répertoires du répertoire /www, y compris le répertoire /www, doivent être copiés sur la clé USB comme vous pouvez le voir dans la capture d’écran ci-dessous.
Vous pouvez également copier des fichiers de votre système de fichiers local sur votre serveur distant avec rsync.
Dans l’exemple précédent, vous avez effectué une sauvegarde du répertoire /www sur le serveur distant. Maintenant, disons que certains fichiers du serveur distant sont endommagés et que vous souhaitez les récupérer à partir de la sauvegarde.
Pour ce faire, exécutez la commande rsync comme suit :
Maintenant, tapez le mot de passe de votre serveur distant et appuyez sur < Entrez >.
Les fichiers doivent être copiés depuis votre système de fichiers local vers le serveur distant.
Effectuer des sauvegardes incrémentielles avec rsync:
Dans ce type de sauvegarde, les répertoires source et de destination sont synchronisés. Si un fichier est ajouté au répertoire source, il est également ajouté au répertoire de destination. De la même manière, si un fichier ou un répertoire du répertoire source est supprimé, il est également supprimé du répertoire de destination.
rsync est un excellent outil pour effectuer des sauvegardes incrémentielles.
Disons que vous avez un répertoire ~/cloud dans le répertoire PERSONNEL de votre utilisateur. Maintenant, vous souhaitez effectuer une sauvegarde incrémentielle du répertoire sur une clé USB montée sur le chemin /mnt/usb1 sur un serveur distant backup.example.com .
REMARQUE: Les packages openssh-server et rsync doivent être installés sur votre serveur distant pour que cela fonctionne.
Pour effectuer une sauvegarde incrémentielle du ~/cloud, exécutez la commande suivante :
Maintenant, tapez le mot de passe de votre utilisateur distant et appuyez sur < Entrez >.
Le contenu du répertoire ~/cloud doit être copié sur la clé USB du serveur distant.
Comme vous pouvez le voir, tous les fichiers sont copiés sur la clé USB montée sur le serveur de sauvegarde distant.
Maintenant, supprimons un fichier du système de fichiers local et voyons ce qui se passe.
Maintenant, utilisez rsync pour synchroniser à nouveau les répertoires avec la même commande qu’auparavant.
Comme vous pouvez le voir, les paquets de fichiers.txt est également retiré de la clé USB montée sur le serveur de sauvegarde distant.
Où aller ensuite:
Vous pouvez trouver plus d’informations sur rsync dans la page de manuel de rsync. La page de manuel de rsync contient une description détaillée de toutes les options de rsync. Je vous recommande fortement de vérifier cela.
Vous pouvez accéder à la page de manuel de rsync avec la commande suivante :
C’est ainsi que vous utilisez rsync pour copier des fichiers et effectuer des sauvegardes incrémentielles sur Ubuntu. Merci d’avoir lu cet article.
Leave a Reply