Zálohovanie dát pomocou FreeFileSync a 7-zip

Anamnéza, takpovediac:

Server Fujitsu rx300 s6, RAID6 6 1TB diskov, nainštalovaný XenServer 6.2, niekoľko točících sa serverov, medzi nimi Ubuntu s niekoľkými loptičkami, 3,5 milióna súborov, 1,5 TB dát, to všetko postupne rastie a narastá.

Úloha: nastaviť zálohovanie dát zo súborového servera, čiastočne denne, čiastočne týždenne.
Máme zálohovací stroj Windows s RAID5 (zlá štandardná systémová jednotka s RAID radičom zabudovaným v matke) plus samostatný 2TB disk na medzikopírovanie aktuálneho stavu súborov. Bolo možné použiť akúkoľvek linuxovú distribúciu, ale tento stroj bol už dostupný s raid poľom a licenciou Windows.

Nainštalujte na záložný server FreeFileSync, nastavíme „zrkadlenie“ všetkého v rade zo všetkých zdieľaní súborového servera raz denne večer po 18 hodinách spustením cez plánovač.

Dôležitý bod: pri ukladaní dávkovej úlohy nezabudnite zaškrtnúť „Po dokončení zavrieť okno úlohy“, inak sa procesy znásobia a znásobia.

Dočasné súbory hodíme do výnimiek masky: *.dwl, *.dwl2, *.tmp.

FreeFileSync využíva sieť mimoriadne dobre, kopírovanie prebieha vo viacerých vláknach, rýchlosť pri kopírovaní veľkých súborov dosahuje 80 Mbps, na malých súboroch nebolo zistené žiadne blokovanie.

Archivácia bude vykonaná na lokálnom záložnom serveri namiesto toho, ktorý sa používal predtým TheCopier so sieťovou archiváciou. Mimochodom, TheCopier je skvelý! Ale pri takýchto objemoch jednoducho nestihne preniesť všetko, napriek 1Gbps rozhraniu na zálohe a 2Gbps na súborovej (väzba dvoch sieťových kariet).

Tiež predtým používané SyncToy, ale keď počet súborov prekročil 1,5-2 milióny, prestal normálne fungovať, jednoducho si nevedel poradiť.

Na archiváciu potrebných priečinkov napíšeme dávkový súbor pre 7-zip:

nastaviť teraz=%TIME:~0,-3%
nastaviť teraz=%teraz::=.%
nastaviť teraz=%teraz: =0%
nastaviť teraz=%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=zapnuté -mtc=vypnuté -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 - vytvorenie archívu
:: -tzip alebo -t7z - typ archívu (zip je 1.5-2 krát rýchlejší)
:: -mx=1 — kompresný pomer (1 minimum, 9 maximálnych hodnôt x=[0 | 1 | 3 | 5 | 7 | 9 ])
:: -mmt=on - povolí multithreading tam, kde nie je povolený
:: -mtc=off - zakáže časové značky súborového systému (pri ukladaní, úprave atď.)
:: -ssw - komprimuje aj súbory otvorené na zápis
:: -xr!.Sync* - vylúči dočasné súbory BtSync z archivácie a ponechá trvalé

Konštrukcia set now=% a pod. umožňuje uložiť formát nahrávacieho času do názvu súboru bez problémov, ktoré nastali, keď číslo dňa alebo mesiaca bolo menšie ako 10, čiže dosadíme nulu.

Komentár -xr!.Sync* je základ, ktorý zostal z pôvodne použitého BTSync.

Do 500 GB a 700-800 tisíc súborov BTSync stále fungoval dobre, synchronizoval sa za chodu, ale pri súčasných objemoch veľmi spotrebovával pamäť a zdroje procesora na súborovom serveri Ubuntu aj na zálohe Windows, kde bol spustený službu a tiež jednoducho znásilnený diskový systém neustálym čítaním a zápisom.

Archivátor je síce 7-zip, ale namiesto natívneho 7z ho archivujeme vo formáte zip, pretože je oveľa rýchlejší a v kompresii s mx=1 prakticky nie je rozdiel, to je overené mnohými experimentmi.

Archívy sú vykonávané jeden po druhom.

Priečinok s archívmi sa tiež vyčistí prostredníctvom naplánovanej úlohy pomocou nástroja fpurge, pričom archívy nebudú staršie ako týždeň.
Výsledkom je, že máme kópiu súborov za predchádzajúci deň, ako aj archívy za posledný týždeň; FreeFileSync umiestňuje odstránené súbory do koša.

Zdroj: hab.com

Pridať komentár