Multipliser kryptert Linux sikkerhetskopiering med Horcrux

Horcrux er et utmerket wrapper rundt rsync-baserte Duplicity, for lett å håndtere automatiserte, krypterte sikkerhetskopier til flere steder.

Horcrux bruker hva forfatteren, Chris Poole, kaller Voldemort tilnærming, som er flere sikkerhetskopier til flere lokasjoner. Hvis du ikke er en Harry Potter fan, kan en mørk trollmann eller heks skjule et fragment av sin sjel i et fysisk objekt. Dette kalles en Horcrux. Så hvis den fysiske kroppen er ødelagt, kan heksen eller wizard gjenoppstå. Opprette flere malacruxer er en måte å oppnå udødelighet. Det er en pris å betale, men. Hver Horcrux krever en handling av mord, og hver og en reduserer menneskeheten av sin skaper.

Heldigvis bruker Chris Poole Horcrux ikke krever noen forferdelige gjerninger, men bare redigere noen konfigurasjonsfiler. Hvis du allerede er en Duplicity bruker, legger Horcrux muligheten til enkelt å sende sikkerhetskopier til forskjellige steder, for å kryptere dem, og til å tilpasse hver enkelt hvis du ønsker det. Horcrux inkluderer også en enkel måte å teste sikkerhetskopiene.

Installasjon

Horcrux er et bash script. Kopiere den fra nedlastingssiden inn i en ny tekstfil, gi den et navn, gjør det kjørbar og legg den i en katalog som er i veien. Gjør det eies av en bruker med tilstrekkelige tillatelser til å lese filene du vil sikkerhetskopiert. Deretter kjører den med ingen alternativer til å generere sin globale filkonfigurasjonen, ~ /.horcrux /horcrux.conf. På min server er det eid av root: root, and.horcrux /horcrux.conf er i /root

La oss ta en spasertur gjennom horcrux.conf

source = "//".. spesifiserer rotkatalogen som kilde katalog, slik at du kan sikkerhetskopiere alle filer i filsystemet. Hvis du foretrekker det, kan du begrense det ned til en bestemt kilde katalogen:

 source = "/bare /dette /katalog /" 

Bruk alltid hele banen og ikke glem skråstrek <. br>

encrypt_key = 123456 er nøkkelen ID av GPG krypteringsnøkkel. Dette er valgfritt, men sterkt anbefalt for backuper. Det er en pasquillion tipsene om å opprette og administrere GPG nøkler, så jeg skal ikke gjenta dem her. Jeg vil gi deg et godt tips: den enkle måten å generere nok entropi når du oppretter GPG nøkler er å kjøre denne kommandoen i en egen terminal:

 $ ls -R /

Det rekursivt viser alle filene på din filsystem, som vil generere mer enn nok entropi å holde GPG fornøyd.

use_agent = sant, fordi Horcrux trenger din GPG frasen, og gpg-agenten er den beste måten å administrere GPG passord. (Igjen, se noen av de mange gode GPG tipsene for å lære hvordan du bruker gpg-agenten.)

remove_n = 3 betyr at du ikke vil ha mer enn tre full backup, fordi hvis du oppretter en fjerde full backup den eldste vil bli fjernet. Bruke dette i forbindelse med full_if_old = for å kontrollere hvor mange fulle backup skal kjøres og lagres.

vol_size = 250 deler backup til 250MB volumer. Standard er 25 MB, noe som betyr at store backup skape et stort antall filer. Du kan kjøre inn filsystem eller kvotegrenser med mindre volum størrelser. Mulige fallgruver med større volum størrelser er upålitelige filoverføringer, og filsystemer som ikke håndterer større filer vel, som jeg ikke tror er mye av et problem i disse dager.

full_if_old = 60 bestemmer hvor ofte Horcrux vil kjøre en full backup. Standard er 360 dager. På min server en full backup til ekstern backup serveren tar tre dager, så jeg har det kjøre en full backup bare hver 60. dag.

Hvor å Sende Backup

Hver backupsett trenger to filer: en config-fil og en utelukke fil. Konfigurasjonsfilen inneholder den eksterne serveren destinasjon i en form som ligner på standard rsync syntaks, som dette:

 destination_path = "rsync. //Denne e-postadressen er beskyttet mot programmer som samler Du må aktivere Javascript for å se /dir /"

Du kan også sende backup til lokale vedlagte media, som dette:

 destination_path =" file: ///media /medianame /backup /"

Legg merke til at det er tre slashes-- file: //er nettadressen, og /er i begynnelsen av filepath. De ulike formatene er stavet ut i Duplicity mannen siden.

Du kan bruke ssh-agent for å administrere ssh innlogging, eller bruke passord mindre offentlig nøkkel-autentisering.

Hvilke filer til Backup

filvalg er skrevet i en -exclude fil. Gi denne filen et navn som hjelper deg å huske hva dette backup gjør; for eksempel dropbox1-utelukke. Filvalg bruker Duplicity syntaks. Dette er et enkelt eksempel med grunnleggende inkluderer og ekskluderer:

 + /home /data /home /data /tmp + /etc /etc /stuff ** /* 

+ midler omfatter, og ingen + midler utelukke. Elementer er behandlet i orden, så ta første /home /data, og deretter utelukke underkatalogen /home /data /temp. Inkluder /etc, og deretter utelukke underkatalogen /etc /ting. Du kan bruke jokertegn for å velge filer med filtyper, for eksempel velge .png filer:

 + /home/data/images/*.png

**/* på slutten betyr "Ignorer alt annet . " En enkelt stjerne er vår kjent wildcard som kan utvides til alt unntatt /og ** er en spesiell globbing mønster som betyr "alt", inkludert /. Så du kan utelukke alle midlertidige filer som dette:

 ** /* tmp 

Eller inkludere alle filer med navnet ditt i dem:

 + ** /* Carla * 

Du kan spesifisere områder i klammer, for eksempel for å angi "Carla" i enten stor eller liten er [Cc] Arla. En rekke tall er som [5-8]. Hvis du ønsker å dykke inn i underkataloger, deretter /home /data /images /* /**. Jpg matcher alle underkataloger etter bilder og velger alle JPG-filer i disse katalogene.

Første Backup
< p> Nå som du har dine tre obligatoriske konfigurasjonsfiler, kan du kjøre din første backup. Chris Poole har gjort en fin jobb med å effektivisere og forkorte falskhet bud, slik at du kan starte din første backup som dette:

 $ malacruxen auto dropbox1 

Den automatiske alternativet kjører en full backup hvis den ikke finner en inkrementell backup sett. Gode ​​gamle rsync er motoren som driver malacruxen og Duplicity, så første løp tar alltid lengst fordi den har til å kopiere alt. Så for de påfølgende sikkerhetskopier eneste endringene er lastet opp.

Du kan opprette flere sikkerhetskopier som går til forskjellige steder, inkludert lokale medier. Alt du trenger er config fil og inkluderer fil parene for hver backup. Backup filnavn må være i dette formatet: backupname-config, backupname-utelukke. backupname kan bruke bokstaver, tall og skilletegn, bortsett bindestrek.

Gjenopprette fra sikkerhetskopi

Du kan gjenopprette hele backupsett eller bestemte filer og kataloger. Dette eksemplet gjenoppretter en enkelt fil, og det angir navnet sikkerhetskopiering og gjenoppretting katalogen:

 $ malacruxen -f myfile gjenopprette dropbox1 /restore /katalog /myfile 

Du kan gå tilbake i tid og velge en eldre backup ved å angi dato i ÅÅÅÅ /MM /DD format:

 $ malacruxen -t 2012-08-22 -f myfile gjenopprette dropbox1 /restore /katalog /myfile 

Det er flere andre tids spesifikasjoner, for eksempel n
dager eller uker siden, som du finner ved å kjøre malacruxen hjelp, eller konsultere den elektroniske dokumentasjonen

Den enkleste måten å automatisere malacruxen sikkerhetskopier er med en cron jobb, slik:.

 00 * * * * malacruxen auto dropbox1 

Det går det hver kveld ved midnatt. For hjelp og mer informasjon besøk Horcrux: En wrapper for Duplicity og falskhet
.