News - Logiciels Libres

Retour sur la sauvegarde des 1 million de fichiers! rsync tar find ?

| | Logiciels Libres | 6 Commentaires | 511
Retour sur la sauvegarde des 1 million de fichiers! rsync tar find ?
Bonjour à tous,

J'avais fait un article récemment nommé 2 jours pour sauvegarder beaucoup de fichiers pour 100Go c est long !! Help !

Suite aux différentes pistes, qui m'oint été proposées j'en ai gardé quelques unes, écarté d'autres.

D'abord, dd m'a été proposé, le disque source contenant beaucoup plus de données (j'en avais besoin que de 20%) , et ayant besoin de pouvoir prendre un fichier à l'unité au cas où semblait compliqué (sauf si on dd la source sur la cible et non pas un fichier). De plus, le système de fichiers à copier est constamment occupé à lire et écrire des données. Quid de l'utilisation de dd ?
Il m'a été proposé git ... je pensais à tout sauf à ça. Je n'ai pas essayé, ça veut dire qu'il faut mettre en oeuvre git, et je n'ai pas encore pratiqué cela.
J'ai noté aussi borgbackup et freefilesync, je garde ces solutions au chaud, et j’étudierai ça, ça me semble trop usine à gaz pour une simple copie initiale.
rsnapshot a aussi fait partie des suggestions, mais il s'appuie sur rsync donc je ne suis pas allé plus loin. (c'est un très bon outil que j'utilise pour des snapshots sur un serveur samba.

J'ai donc tenté les 3 solutions : rsync, find+cp et tar le tout tourner toute la nuit, via cette magnifique commande :

Code BASH :
 date ; echo "Taille :" ; du -sh app ; ls -l app/ordo/ | wc -l ; mkdir hdd/ordo ; echo "Temps rsync : " ; date ; rsync -a app/ordo/ hdd/ordo/ ; date ; rm -rf hdd/ordo ; mkdir hdd/ordo ; echo "Temps find et cp : " ; date ; find app/ordo -exec cp -p {} hdd/ordo/ \; ; date ;  rm -rf hdd/ordo ; mkdir hdd/ordo ; echo "Temps tar : " ; date ; cd /mnt/app/ordo/ ; tar -c . | tar -xf - -C /mnt/hdd/ordo/ ; date
 


En gros, j'affiche les dates avant et après chaque copie, en ayant pris soin de supprimer la copie de destination de l'opération précédente.

Et voici les résultats :



Donc, même si rsync peinait à calculer la liste de ses fichiers, il s'avère très efficace !
Si vous avez donc bien calculé :
- rsync : 40mn
- find + cp : 6h
- tar : 5h15


Même si find + cp ou tar débutent plus rapidement, ils sont plus long à effectuer les opérations. rsync est long à calculer mais dépote après !

Donc il ne faut pas se fier aux apparences, mais rsync est un très bon outil.
Le find en production qui a duré 2 jours peut paraitre excessif au vu des tests, mais j'ai fait précéder cette commande de ionice afin de soulager les disques de production et de ne pas paralyser toute l'activité :)

La traditionnelle vidéo résumant le tout :

N'hésitez pas à sélectionner la qualité HD en 720p ou 1080p !



:merci: