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
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
Har även använts tidigare
För att arkivera nödvändiga mappar skriver vi en batchfil för
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
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