Datensicherung mit FreeFileSync und 7-zip

Anamnese sozusagen:

Fujitsu rx300 s6 Server, RAID6 aus 6 1-TB-Festplatten, XenServer 6.2 installiert, mehrere Server laufen, darunter Ubuntu mit mehreren Bällen, 3,5 Millionen Dateien, 1,5 TB Daten, all das wächst und schwillt allmählich an.

Aufgabe: Datensicherung von einem Fileserver einrichten, teils täglich, teils wöchentlich.
Wir verfügen über eine Windows-Backup-Maschine mit RAID5 (eine schlechte Standardsystemeinheit mit einem in die Mutter integrierten RAID-Controller) sowie eine separate 2-TB-Festplatte zum Zwischenkopieren des aktuellen Stands der Dateien. Es war möglich, jede Linux-Distribution zu verwenden, diese Maschine war jedoch bereits mit einem Raid-Array und einer Windows-Lizenz verfügbar.

Auf einem Backup-Server installieren FreeFileSync, richten wir einmal am Tag abends nach 18 Stunden einen „Spiegel“ von allem in einer Reihe von allen Fileserver-Freigaben ein, indem wir ihn über den Scheduler laufen lassen.

Ein wichtiger Punkt: Achten Sie beim Speichern einer Batch-Aufgabe darauf, das Kontrollkästchen „Aufgabenfenster nach Abschluss schließen“ zu aktivieren, da sich die Prozesse sonst immer weiter vervielfachen.

Wir werfen temporäre Dateien in Maskenausnahmen: *.dwl, *.dwl2, *.tmp.

FreeFileSync nutzt das Netzwerk hervorragend aus, das Kopieren erfolgt in mehreren Threads, beim Kopieren großer Dateien erreicht die Geschwindigkeit 80 Mbit/s, bei kleinen Dateien wurde keine Blockierung festgestellt.

Die Archivierung erfolgt auf einem lokalen Backup-Server statt auf dem bisher genutzten Der Kopierer mit Netzwerkarchivierung. TheCopier ist übrigens großartig! Aber bei solchen Volumina bleibt einfach keine Zeit, alles zu übertragen, trotz der 1-Gbit/s-Schnittstelle beim Backup und 2 Gbit/s bei der Datei eins (Verbindung zweier Netzwerkkarten).

Auch früher verwendet SyncToy, aber als die Anzahl der Dateien 1,5 bis 2 Millionen überstieg, funktionierte es nicht mehr normal, es kam einfach nicht mehr zurecht.

Um die notwendigen Ordner zu archivieren, schreiben wir eine Batchdatei für 7-zip:

set now=%TIME:~0,-3%
set now=%now::=.%
setze jetzt=%jetzt: =0%
set now=%DATE:~-4%.%DATE:~3,2%.%DATE:~0,2%_%now%
C:"Programme"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_10-04.zip E:10-04
C:"Programme"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_35-110.zip E:35-110
C:"Programme"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_asu.zip E:asu
C: „Programme“7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_director.zip E:director
C: „Programme“7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_gpr.zip E:gpr
C:"Programme"7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_otiz.zip E:otiz
C: „Programme“7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_ps.zip E:ps
C: „Programme“7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_pto.zip E:pto
C: „Programme“7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_rza.zip E:rza
C: „Programme“7-Zip7z.exe a -tzip -mx=1 -mmt=on -mtc=off -ssw D:backupsAll%now%_smeta.zip E:smeta

::a – Erstellen eines Archivs
:: -tzip oder -t7z – Archivtyp (zip ist 1.5-2 mal schneller)
:: -mx=1 — Komprimierungsverhältnis (1 Minimum, 9 Maximalwerte x=[0 | 1 | 3 | 5 | 7 | 9 ])
:: -mmt=on – aktiviert Multithreading, wo es nicht aktiviert ist
:: -mtc=off – deaktiviert Zeitstempel des Dateisystems (beim Speichern, Ändern usw.)
:: -ssw – komprimiert auch zum Schreiben geöffnete Dateien
:: -xr!.Sync* – schließt temporäre BtSync-Dateien von der Archivierung aus und lässt permanente Dateien übrig

Die Konstruktion von set now=% usw. ermöglicht es Ihnen, das Format der Aufzeichnungszeit in einem Dateinamen zu speichern, ohne dass die Probleme auftraten, die auftraten, wenn die Zahl des Tages oder Monats kleiner als 10 war, d. h. wir ersetzen eine Null.

Kommentar -xr!.Sync* ist ein Rudiment, das von der ursprünglich verwendeten Funktion übrig geblieben ist BTSync.

Bis zu 500 GB und 700–800 Dateien funktionierte BTSync immer noch gut und synchronisierte sich im laufenden Betrieb, aber bei den aktuellen Volumina verbrauchte es sehr viel Speicher und Prozessorressourcen sowohl auf dem Ubuntu-Dateiserver als auch auf dem Windows-Backup, von dem es gestartet wurde der Dienst, und auch einfach das Festplattensystem durch ständige Lese- und Schreibvorgänge vergewaltigt.

Obwohl der Archiver 7-zip ist, archivieren wir ihn im Zip-Format statt im nativen 7z, weil es viel schneller ist und es praktisch keinen Unterschied in der Komprimierung mit mx=1 gibt, dies wurde durch viele Experimente bestätigt.

Archive werden einzeln ausgeführt.

Der Ordner mit den Archiven wird auch durch eine geplante Aufgabe mit dem Dienstprogramm fpurge bereinigt, so dass die Archive nicht älter als eine Woche sind.
Als Ergebnis haben wir eine Kopie der Dateien des Vortages sowie Archive der letzten Woche; FreeFileSync legt die gelöschten Dateien in den Papierkorb.

Source: habr.com

Kommentar hinzufügen