La sauvegarde régulière des fichiers fait partie intégrante de l'administration de votre serveur.
Bien que vous puissiez télécharger chaque fichier individuel lorsque vous souhaitez les enregistrer, en utilisant rsync
facilite la tâche de sauvegarde car il ne télécharge que les fichiers qui ont été modifiés, ce qui permet d'économiser du temps et de la bande passante.
Installer rsync
rsync
est disponible sur la plupart des distributions Linux par défaut. Si vous devez l'installer manuellement, vous pouvez le faire en utilisant le gestionnaire de packages de votre distribution. Par exemple, les commandes suivantes sont des commandes courantes Linux® rsync
commandes d'installation :
Le système d'exploitation Ubuntu
sudo aptitude install rsync
Gentoo
sudo emerge rsync
CentOS
sudo yum install rsync
Remarque : Si vous téléchargez des fichiers sur un autre système, les deux systèmes doivent avoir rsync
installé.
Utiliser SSH avec rsync
Pour assurer la sécurité de vos fichiers et de votre système, assurez-vous d'utiliser le cryptage lors du chargement ou du téléchargement de fichiers. L'exemple suivant utilise le protocole Secure Shell (SSH) avec rsync
pour garder vos données en sécurité. Si vous préférez ne pas utiliser SSH, vous serez invité à entrer un mot de passe chaque fois que vous exécuterez rsync
.
Si vous utilisez rsync
pour automatiser vos sauvegardes, assurez-vous que le serveur de destination (où se trouve le répertoire de sauvegarde) a accès au serveur d'origine.
Pour sauvegarder vos fichiers d'un serveur à un autre, exécutez la commande suivante sur le serveur de destination :
rsync -e 'ssh -p 30000' -avlP --delete --stats [email protected]:/home/demo /backup
L'explication suivante couvre chaque partie de la commande :
-
-e 'ssh -p 30000'
Garantit que
rsync
utilise le protocole SSH et définit le port. -
-avl
Un raccourci contenant les options suivantes :
-
-a
Archive . Enregistre les paramètres d'autorisation pour les fichiers.
-
-v
Verbeux . Renvoie plus d'informations sur ce que
rsync
fait. Vous pouvez modifier la quantité d'informationsrsync
renvoie en éliminant-v
, ou vous pouvez demander plus d'informations avec-vv
ou-vvv
. Définir le mode verbeux avec-vvv
renvoie toutes les informations sur lersync
processus. -
-l
Liens . Préserve tous les liens symboliques (symlinks) que vous avez créés sur le serveur source.
-
-P
Progrès . Affiche la progression de chaque transfert de fichier.
-
-
--delete
Supprime les fichiers du dossier de destination qui ne sont plus nécessaires (c'est-à-dire qu'ils ont été supprimés des dossiers d'origine). Généralement, vous supprimez des fichiers pour économiser de l'espace, mais si vous pensez en avoir besoin plus tard, assurez-vous d'avoir une copie de sauvegarde avant de la supprimer.
-
--stats
Ajoute plus de sortie concernant l'état du transfert de fichier.
-
[email protected]:/home/demo
Les dossiers d'origine à sauvegarder.
Remarque :
rsync
différencie/home/demo
et/home/demo/
. Avec la barre oblique finale,rsync
copie le contenu du répertoire, mais ne recrée pas le répertoire. Cet exemple sauvegarde un dossier d'un système à un autre, donc l'omission de la barre oblique finale réplique la structure entière du répertoire. -
/backup/
Identifie le dossier sur le serveur de sauvegarde dans lequel placer les fichiers.
Votre sortie devrait ressembler à l'exemple suivant :
receiving file list ...
31345 files to consider
./
tuning-primer.sh
42596 100% 533.30kB/s 0:00:00 (xfer#2, to-check=31331/31345)
bin/
bin/Backup
618 100% 7.74kB/s 0:00:00 (xfer#3, to-check=31310/31345)
bin/Search
455 100% 5.70kB/s 0:00:00 (xfer#4, to-check=31309/31345)
configs/
configs/php.ini
114 100% 1.43kB/s 0:00:00 (xfer#5, to-check=31307/31345)
public_html/
...
...
Dans l'exemple précédent, rsync
reçoit une liste de 31 345 fichiers et, parce que c'est la première fois rsync
a été exécuté, les télécharge tous. Lorsque rsync
s'exécute à nouveau, seuls les fichiers qui ont été modifiés depuis la dernière sauvegarde sont synchronisés avec le dossier de sauvegarde.