Sauvegarde des données à l'aide de FreeFileSync et 7-zip

Anamnèse, pour ainsi dire :

Serveur Fujitsu rx300 s6, RAID6 de 6 disques de 1 To, XenServer 6.2 installé, plusieurs serveurs tournant, dont Ubuntu avec plusieurs boules, 3,5 millions de fichiers, 1,5 To de données, tout cela grandit et gonfle petit à petit.

Tâche : mettre en place une sauvegarde des données à partir d'un serveur de fichiers, en partie quotidiennement, en partie hebdomadaire.
Nous avons une machine de sauvegarde Windows avec RAID5 (une unité système standard médiocre avec un contrôleur RAID intégré à la mère) plus un disque séparé de 2 To pour la copie intermédiaire de l'état actuel des fichiers. Il était possible d'utiliser n'importe quelle distribution Linux, mais cette machine était déjà disponible avec un RAID Array et une licence Windows.

Installer sur un serveur de sauvegarde FreeFileSync, nous mettons en place un « miroir » de tout ce qui se trouve à la suite de tous les partages du serveur de fichiers une fois par jour le soir après 18 heures en l'exécutant via le planificateur.

Un point important : lors de l'enregistrement d'une tâche batch, veillez à cocher « Fermer la fenêtre de la tâche une fois terminée », sinon les processus se multiplieront et se multiplieront.

Nous jetons les fichiers temporaires dans les exceptions de masque : *.dwl, *.dwl2, *.tmp.

FreeFileSync utilise extrêmement bien le réseau, la copie s'effectue sur plusieurs threads, la vitesse atteint 80 Mbps lors de la copie de gros fichiers, aucun blocage n'a été trouvé sur les petits fichiers.

L'archivage sera effectué sur un serveur de sauvegarde local, au lieu de celui utilisé précédemment Le Copieur avec archivage réseau. Au fait, TheCopier est génial ! Mais avec de tels volumes, il n'a tout simplement pas le temps de tout transférer, malgré l'interface 1Gbps sur la sauvegarde et 2Gbps sur celle des fichiers (liaison de deux cartes réseau).

Également utilisé précédemment SyncToy, mais lorsque le nombre de fichiers dépassait 1,5 à 2 millions, il a cessé de fonctionner normalement, il n'a tout simplement plus pu s'en sortir.

Pour archiver les dossiers nécessaires, nous écrivons un fichier batch pour 7-zip:

défini maintenant=%TIME:~0,-3%
définir maintenant=%maintenant::=.%
définir maintenant=%maintenant : =0%
définir maintenant=%DATE:~-4%.%DATE:~3,2%.%DATE:~0,2%_%now%
C:"Program Files"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_10-04.zip E:10-04
C:"Program Files"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_35-110.zip E:35-110
C:"Program Files"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_asu.zip E:asu
C:« Program Files »7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_director.zip E:director
C:« Program Files »7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_gpr.zip E:gpr
C:"Program Files"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_otiz.zip E:otiz
C:« Program Files »7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_ps.zip E:ps
C:« Program Files »7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_pto.zip E:pto
C:« Program Files »7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_rza.zip E:rza
C:« Program Files »7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_smeta.zip E:smeta

::a - création d'une archive
:: -tzip ou -t7z - type d'archive (le zip est 1.5 à 2 fois plus rapide)
:: -mx=1 — taux de compression (1 valeurs minimales, 9 valeurs maximales x=[0 | 1 | 3 | 5 | 7 | 9 ])
:: -mmt=on - active le multithreading là où il n'est pas activé
:: -mtc=off - désactive les horodatages du système de fichiers (lors de l'enregistrement, de la modification, etc.)
:: -ssw - compresse également les fichiers ouverts en écriture
:: -xr!.Sync* - exclut les fichiers temporaires BtSync de l'archivage, laissant les fichiers permanents

La construction de set now=% et ainsi de suite vous permet de sauvegarder le format de l'heure d'enregistrement dans un nom de fichier sans les problèmes qui survenaient lorsque le numéro du jour ou du mois était inférieur à 10, c'est-à-dire que nous substituons un zéro.

Commentaire -xr!.Sync* est un rudiment restant du système initialement utilisé BTSync.

Jusqu'à 500 Go et 700 à 800 XNUMX fichiers, BTSync fonctionnait toujours correctement, synchronisé à la volée, mais avec les volumes actuels, il consommait beaucoup de ressources mémoire et processeur à la fois sur le serveur de fichiers Ubuntu et sur la sauvegarde Windows où il a été lancé par le service, et aussi simplement le système de disque violé par des lectures et des écritures constantes.

Bien que l'archiveur soit 7-zip, nous l'archivons au format zip au lieu du 7z natif, car il est beaucoup plus rapide et il n'y a pratiquement aucune différence de compression avec mx=1, cela a été vérifié par de nombreuses expériences.

Les archives sont exécutées une à une.

Le dossier contenant les archives est également nettoyé via une tâche planifiée à l'aide de l'utilitaire fpurge, laissant les archives ne datant pas de plus d'une semaine.
De ce fait, nous avons une copie des fichiers de la veille, ainsi que des archives de la semaine dernière ; FreeFileSync met les fichiers supprimés à la poubelle.

Source: habr.com

Ajouter un commentaire