Säkerhetskopiering av data med FreeFileSync och 7-zip

Anamnes, så att säga:

Fujitsu rx300 s6-server, RAID6 på 6 1TB-diskar, XenServer 6.2 installerad, flera servrar snurrar, bland dem Ubuntu med flera bollar, 3,5 miljoner filer, 1,5 TB data, allt detta växer och sväller gradvis.

Uppgift: ställa in säkerhetskopiering av data från en filserver, dels dagligen, dels veckovis.
Vi har en Windows backup-maskin med RAID5 (en dålig standardsystemenhet med en RAID-kontroller inbyggd i mamman) plus en separat 2TB-disk för mellankopiering av filernas nuvarande tillstånd. Det var möjligt att använda vilken Linux-distribution som helst, men den här maskinen var redan tillgänglig med en raid-array och en Windows-licens.

Installera på en backupserver FreeFileSync, sätter vi upp en "spegel" av allt i rad från alla filserverdelningar en gång om dagen på kvällen efter 18 timmar genom att köra det genom schemaläggaren.

En viktig punkt: när du sparar en batchuppgift, se till att markera "Stäng uppgiftsfönstret när det är klart", annars kommer processerna att multiplicera och multiplicera.

Vi kastar temporära filer i maskundantag: *.dwl, *.dwl2, *.tmp.

FreeFileSync använder nätverket extremt bra, kopiering sker i flera trådar, hastigheten når 80 Mbps vid kopiering av stora filer, ingen blockering hittades på små filer.

Arkivering kommer att utföras på en lokal backupserver, istället för den som användes tidigare Kopiatorn med nätverksarkivering. Förresten, TheCopier är jättebra! Men med sådana volymer har den helt enkelt inte tid att överföra allt, trots 1Gbps-gränssnittet på backupen och 2Gbps på fil ett (bindning av två nätverkskort).

Har även använts tidigare SyncToy, men när antalet filer översteg 1,5-2 miljoner slutade den att fungera normalt, den klarade sig helt enkelt inte.

För att arkivera nödvändiga mappar skriver vi en batchfil för 7-zip:

ställ in nu=%TIME:~0,-3%
ställ in nu=%nu::=.%
ställ in nu=%nu: =0%
set now=%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 - skapa ett arkiv
:: -tzip eller -t7z - arkivtyp (zip är 1.5-2 gånger snabbare)
:: -mx=1 — kompressionsförhållande (1 minimum, 9 maximala värden x=[0 | 1 | 3 | 5 | 7 | 9 ])
:: -mmt=on - aktiverar multithreading där det inte är aktiverat
:: -mtc=off - inaktiverar filsystemets tidsstämplar (när de sparas, ändras, etc.)
:: -ssw - komprimerar också filer som öppnas för skrivning
:: -xr!.Sync* - utesluter tillfälliga BtSync-filer från arkivering och lämnar permanenta filer

Konstruktionen av set now=% och så vidare låter dig spara formatet för inspelningstid i ett filnamn utan de problem som uppstod när numret på dagen eller månaden var mindre än 10, det vill säga vi ersätter en nolla.

Kommentar -xr!.Sync* är ett rudiment som är över från det ursprungligen använda BTSync.

Upp till 500 GB och 700-800 tusen filer, BTSync fungerade fortfarande bra, synkroniserat i farten, men med nuvarande volymer krävde det mycket minne och processorresurser både på Ubuntu-filservern och på Windows-säkerhetskopian där den lanserades av tjänsten, och också helt enkelt våldtog disksystem genom konstant läsning och skrivning.

Även om arkivet är 7-zip, arkiverar vi det i zip-formatet istället för det ursprungliga 7z, eftersom det är mycket snabbare, och det finns praktiskt taget ingen skillnad i komprimering med mx=1, detta har verifierats av många experiment.

Arkiv exekveras ett efter ett.

Mappen med arkiv rensas också genom en schemalagd uppgift med hjälp av verktyget fpurge, vilket gör att arkiven inte är äldre än en vecka.
Som ett resultat har vi en kopia av filerna för föregående dag, såväl som arkiv för den senaste veckan; FreeFileSync lägger de raderade filerna i papperskorgen.

Källa: will.com

Lägg en kommentar