Slik sikkerhetskopierer Du Et Debian-system Ved Hjelp Av Backupninja
Sist oppdatert 19. September 2020 Av Gabriel C ④nepa
Forsiktighet eller katastrofeopplevelse kan lære alle sysadmin viktigheten av å ta hyppige systembackups. Du kan gjøre det ved å skrive gode gamle skallskript, eller ved å bruke en (eller flere) av de mange backupverktøyene som er tilgjengelige for jobben(F. Eks. Dermed jo flere verktøy du blir kjent med, jo bedre informerte beslutninger du vil gjøre når du implementerer en backup løsning.
i denne artikkelen vil vi presentere Backupninja
, en lett og lett å konfigurere system backup verktøy. Ved hjelp av programmer som rdiff-backup
, duplicity
, mysqlhotcopy
Og mysqldump
, Backupninja tilbyr vanlige backup funksjoner som ekstern, sikker og inkrementell filsystem backup, kryptert backup, Og MySQL/MariaDB database backup. Du kan selektivt aktivere status – e-postrapporter, og kan også sikkerhetskopiere generell maskinvare-og systeminformasjon. En viktig styrke Backupninja er en innebygd konsoll-basert veiviser (kalt ninjahelper
) som lar deg enkelt lage konfigurasjonsfiler for ulike backup scenarier.
ulempen, så å si, er At Backupninja krever at andre hjelpeprogrammer installeres for å dra full nytte av alle funksjonene. Mens Backupninjas RPM-pakke er tilgjengelig For Red Hat-baserte distribusjoner, Er Backupninjas avhengigheter optimalisert For Debian og dets derivater. Derfor anbefales Det ikke å prøve Backupninja For Red Hat – baserte systemer.
i denne opplæringen vil vi dekke Backupninja-installasjonen for Debian-baserte distribusjoner.
Installere Backupninja
Kjør følgende kommando som rot:
# aptitude install backupninja
under installasjonen vil flere filer og kataloger bli opprettet:
-
/usr/sbin/backupninja
er den viktigste bash shell script. -
/etc/cron.d/backupninja
, som standard instruerercron
å kjøre hovedskriptet en gang i timen. -
/etc/logrotate.d/backupninja
roterer loggene opprettet av programmet. -
/etc/backup.d/
er katalogen der konfigurasjonsfilene for sikkerhetskopieringshandlinger ligger. -
/etc/backupninja.conf
er hovedkonfigurasjonsfilen som inneholder generelle alternativer. Det er godt kommentert og forklarer hvert alternativ i detalj. -
/usr/share/backupninja
er katalogen der skriptene som Brukes Av Backupninja er plassert (aka handlers). Dette er skriptene som har ansvaret for å gjøre det faktiske arbeidet. I denne katalogen finner du også.helper
filer, som brukes til å konfigurere og sette oppninjahelper
menyer. -
/usr/share/doc/backupninja/examples
inneholder maler for handlingskonfigurasjonsfiler (typen filer som opprettes gjennomninjahelper
).
Kjører ninjahelper For Første Gang
når vi prøver å starte ninjahelper
, kan vi se at en intern avhengighet kan være nødvendig. Hvis du blir bedt om det, skriver du inn yes
og trykker ENTER
for å installere dialog
(et verktøy som viser brukervennlige dialogbokser fra skallskript).
når Du trykker På Enter etter å ha skrevet ja, Vil Backupninja installere dialog og presentere følgende skjermbilde når det er gjort.
Eksempel 1: Sikkerhetskopier Maskinvare-Og Systeminfo
etter lansering ninjahelper
oppretter vi en ny sikkerhetskopieringshandling:
hvis nødvendig hjelpeprogrammer ikke er installert, vil vi bli presentert med følgende skjermbilder. Se bort fra dette trinnet hvis disse pakkene allerede er installert på systemet ditt.
neste trinn består av å velge elementene du vil være en del av denne sikkerhetskopien. De første fire er valgt som standard, men du kan fjerne dem ved å trykke på mellomromstasten.
når DU er ferdig, trykker DU PÅ OK for å fortsette. Du vil kunne velge om du vil bruke standardkonfigurasjonsfilen for denne sikkerhetskopieringshandlingen (/etc/backup.d/10.sys
), eller hvis du vil opprette en ny. I sistnevnte tilfelle vil en ny fil med samme innhold som standard bli opprettet under samme katalog, men kalt 11.sys
, og så videre for fremtidige system backup handlinger. Merk at du kan redigere konfigurasjonsfilen når den er opprettet med din foretrukne tekstredigerer.
Eksempel 2: Inkrementell Rsync Pull Backup Av En Ekstern Katalog
som du mest sannsynlig vet, rsync
er mye brukt til å synkronisere filer og mapper over et nettverk. I følgende eksempel vil vi diskutere en tilnærming til å ta inkrementelle pull-sikkerhetskopier av en ekstern katalog med hardlinking for å lagre historiske data og lagre dem i vår lokale filserver. Denne tilnærmingen vil hjelpe oss med å spare plass og øke sikkerheten på serversiden.
Trinn 1: Skriv et egendefinert skript i katalogen /etc/backup.d
med følgende innhold og chmod
det til 600
. Merk at denne katalogen kan inneholde, i tillegg til vanlige konfigurasjonsfiler, skript som du vil kjøre når Backupninja utføres, med fordelen av å bruke variabler som finnes i hovedkonfigurasjonsfilen.
# REMOTE USERuser=root# REMOTE HOSThost=dev1# REMOTE DIRECTORYremotedir=/home/gacanepa/# LOCAL DIRECTORYlocaldir=/home/gacanepa/backup.0# LOCAL DIRECTORY WHERE PREVIOUS BACKUP WAS STOREDlocaldirold=/home/gacanepa/backup.1mv $localdir $localdirold# RSYNCrsync -av --delete --recursive --link-dest=$localdirold $host:$remotedir $localdir
i den ovennevnte konfigurasjonen brukes alternativet --link-dest
til å hardlinke uendrede filer (i alle attributter)fra $localdir-old
til målkatalogen ($localdir
).
Trinn 2: før Backupninja kjøres for første gang, er den overordnede katalogen (/home/gacanepa
i dette tilfellet) tom. Første gang vi utfører:
# backupninja -n
katalogen backup.0
opprettes, og senere i prosessen endres navnet til backup.1
.
andre gang vi kjører Backupninja, blir backup.0
gjenopprettet og backup.1
beholdes.
Trinn 3: Kontroller at innholdet i backup.1
er harde koblinger til filene i backup.0
ved å sammenligne de respektive inodenumrene og katalogstørrelsene.
Konklusjon
Backupninja er ikke bare en klassisk backup verktøy, men også en lett-å-konfigurere verktøyet. Du kan skrive dine egne handlers å kjøre Backupninja som per de enkelte konfigurasjonsfiler som ligger i /etc/backup.d
, og du kan også skrive hjelpere for ninjahelper
for å inkludere dem i hovedgrensesnittet.
hvis du for eksempel oppretter en behandler som heter xmodulo
i /usr/share/backupninja
, kjører den som standard hver fil med .xmodulo
– utvidelsen i /etc/backup.d
. Hvis du bestemmer deg for å legge til din xmodulo
handler til ninjahelper
, kan du skrive den tilsvarende hjelperen som xmodulo.helper
. I tillegg, hvis Du Vil At Backupninja skal kjøre et vilkårlig skript, bare legg det til /etc/backup.d
og du er god til å gå. Se Denne Backupninja opplæringen for detaljer om å lage en tilpasset backup plan.