Ubuntu

Comment utiliser la commande rsync pour copier des fichiers sur Ubuntu

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 sur le 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. J'utiliserai Ubuntu pour la démonstration. Mais toute distribution Linux moderne devrait fonctionner correctement. 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 packages officiel d'Ubuntu avec la commande suivante :

$ sudo apt install rsync -y

Format de la commande rsync :

Le format de base de la commande rsync est,

$ rsync options source destination

Lorsque vous utilisez rsync, vous devez connaître les éléments suivants :

Sauvegarde des fichiers et répertoires locaux avec rsync :

Vous pouvez copier des fichiers d'un répertoire vers un autre répertoire sur votre ordinateur très rapidement avec rsync.

Par exemple, disons que vous avez des fichiers importants dans le ~/Téléchargements annuaire. Maintenant, vous voulez sauvegarder tous les fichiers du ~/Téléchargements répertoire sur votre clé USB /dev/sdb1 monté dans le répertoire /mnt/myusb.

Créons des fichiers factices dans le ~/Téléchargements annuaire.

$ touch ~/Téléchargements/test1… 100

Maintenant, copiez tous les fichiers du ~/Téléchargements répertoire vers /mnt/myusb répertoire avec la commande rsync suivante :

$ rsync -avzh ~/Téléchargements/ /mnt/myusb

Les fichiers doivent être copiés.

Comme vous pouvez le voir, les fichiers sont dans le /mnt/myusb annuaire.

Vous pouvez également copier l'ensemble ~/Téléchargements répertoire sur votre clé USB comme suit :

$ rsync -avzh ~/Téléchargements /mnt/myusb

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 ~/Téléchargements répertoire vers un autre répertoire (disons mes téléchargements/) sur votre clé USB, exécutez rsync comme suit :

$ rsync -avzh ~/Téléchargements/ /mnt/myusb/mydownloads

Comme vous pouvez le voir, les fichiers sont correctement copiés sur la clé USB.

Sauvegarde de fichiers et de répertoires distants avec rsync :

Avec rsync, vous pouvez copier des fichiers et des 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 le serveur distant.

Vous devez avoir un package de serveur SSH (serveur openssh sur Ubuntu) et rsync package installé 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 /www répertoire de votre serveur distant www.Exemple 1.com à 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 :

$ rsync -avzh [email protected] 1.com:/www /mnt/myusb

REMARQUE: Ici, racine est le nom d'utilisateur distant, www.Exemple 1.com est le nom DNS du serveur distant et /www est un chemin de 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 Oui puis appuyez sur .

Maintenant, tapez le mot de passe de l'utilisateur distant (dans mon cas, c'est racine) et appuyez sur .

Tous les fichiers et répertoires à l'intérieur du /www répertoire comprenant le répertoire /www doit être copié 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 vers votre serveur distant avec rsync.

Dans l'exemple précédent, vous avez effectué une sauvegarde du /www répertoire sur le serveur distant. Maintenant, disons que certains des 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 :

$ rsync -avzh /mnt/myusb/www/ [email protected] 1.com:/www

Maintenant, tapez le mot de passe de votre serveur distant et appuyez sur .

Les fichiers doivent être copiés de votre système de fichiers local vers le serveur distant.

Effectuer des sauvegardes incrémentielles avec rsync :

Dans ce type de sauvegarde, le la source et destination les répertoires sont synchronisés. Si un fichier est ajouté au la source répertoire, il est ajouté au destination répertoire aussi. De la même manière, si un fichier ou un répertoire du la source répertoire est supprimé, il est supprimé du destination répertoire aussi.

rsync est un excellent outil pour effectuer une sauvegarde incrémentielle.

Disons que vous avez un répertoire ~/nuage dans votre utilisateur DOMICILE annuaire. 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 sauvegarde.Exemple.com.

REMARQUE: Vous devez avoir serveur openssh et rsync packages installés sur votre serveur distant pour que cela fonctionne.

Pour effectuer une sauvegarde incrémentielle du ~/nuage, exécutez la commande suivante :

$ rsync -avzh --delete --progress ~/cloud/ [email protected]:/mnt/usb1/backup

Maintenant, saisissez le mot de passe de votre utilisateur distant et appuyez sur .

Le contenu du ~/nuage le répertoire 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.

$ rm ~/cloud/paquets.SMS

Maintenant, utilisez rsync pour synchroniser à nouveau les répertoires avec la même commande qu'avant.

$ rsync -avzh --delete --progress ~/cloud/ [email protected]:/mnt/usb1/backup

Comme vous pouvez le voir, le fichier paquets.SMS 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 a 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 :

$ man rsync

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.

Comment utiliser AutoKey pour automatiser les jeux Linux
AutoKey est un utilitaire d'automatisation de bureau pour Linux et X11, programmé en Python 3, GTK et Qt. En utilisant ses fonctionnalités de script e...
Comment afficher le compteur FPS dans les jeux Linux
Les jeux Linux ont reçu une impulsion majeure lorsque Valve a annoncé la prise en charge de Linux pour le client Steam et leurs jeux en 2012. Depuis l...
Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...