március 6, 2022

Hogy egy Debian rendszer segítségével Backupninja

Utolsó frissítés szeptember 19-én, 2020-ra a Gabriel Cánepa

Prudence vagy tapasztalat által katasztrófa lehet tanítani minden rendszergazda a fontosságát, hogy a gyakori rendszer mentések. Ezt úgy teheti meg, hogy jó régi shell szkripteket ír, vagy a munkához rendelkezésre álló sok biztonsági mentési eszköz közül egyet (vagy többet) használ (például Clonezilla, Duplicity). Így minél több eszközt ismer meg, annál jobban tájékozott döntéseket fog hozni egy biztonsági mentési megoldás végrehajtásakor.

ebben a cikkben bemutatjuk a Backupninja-et, egy könnyű és könnyen konfigurálható rendszermentési eszközt. Olyan programok segítségével, mint rdiff-backup, duplicity, mysqlhotcopy és mysqldump, a Backupninja közös biztonsági mentési funkciókat kínál, mint például a távoli, biztonságos és növekményes fájlrendszer-biztonsági mentések, a titkosított biztonsági mentés és a MySQL/MariaDB adatbázis-biztonsági mentés. Szelektíven engedélyezheti az állapot e-mail jelentéseket, és biztonsági másolatot készíthet az általános hardver-és rendszerinformációkról is. Az egyik legfontosabb erőssége Backupninja egy beépített konzol-alapú Varázsló (az úgynevezett ninjahelper), amely lehetővé teszi, hogy könnyen létrehozhat konfigurációs fájlokat a különböző mentési forgatókönyvek.

a hátránya, hogy a Backupninja más segítő programok telepítését igényli annak érdekében, hogy teljes mértékben kihasználhassa az összes funkcióját. Míg a Backupninja RPM csomagja elérhető a Red Hat alapú disztribúciókhoz, a Backupninja függőségei a Debianra és annak származékaira vannak optimalizálva. Ezért nem ajánlott, hogy próbálja Backupninja Red Hat alapú rendszerek.

ebben az oktatóanyagban a Debian-alapú disztribúciók Backupninja telepítésével foglalkozunk.

Backupninja telepítése

futtassa a következő parancsot gyökérként:

# aptitude install backupninja

a telepítés során több fájl és könyvtár jön létre:

  • /usr/sbin/backupninja a fő Bash shell szkript.
  • /etc/cron.d/backupninja, alapértelmezésben utasítja cron futtatni a fő script óránként egyszer.
  • /etc/logrotate.d/backupninja elforgatja a program által létrehozott naplókat.
  • /etc/backup.d/ az a könyvtár, ahol a biztonsági mentési műveletek konfigurációs fájljai találhatók.
  • /etc/backupninja.conf a fő konfigurációs fájl, amely általános beállításokat tartalmaz. Jól kommentálta, és részletesen elmagyarázza az egyes lehetőségeket.
  • /usr/share/backupninja az a könyvtár, ahol a backupninja által használt szkriptek találhatók (más néven kezelők). Ezek azok a szkriptek, amelyek felelősek a tényleges munka elvégzéséért. Ebben a könyvtárban .helper fájlokat is talál, amelyek a ninjahelper menük konfigurálására és beállítására szolgálnak.
  • /usr/share/doc/backupninja/examplessablonokat tartalmaz a műveletkonfigurációs fájlokhoz (a ninjahelper – en keresztül létrehozott fájlokhoz).

a ninjahelper első futtatása

amikor megpróbáljuk elindítani a ninjahelper programot, láthatjuk, hogy belső függőségre lehet szükség. Ha a rendszer kéri, írja be a yes értéket, majd nyomja meg a ENTER gombot a dialog telepítéséhez (egy eszköz, amely felhasználóbarát párbeszédpaneleket jelenít meg a shell parancsfájlokból).

amikor megnyomja az Enter billentyűt a yes beírása után, a Backupninja telepíti a párbeszédpanelt, és a következő képernyőt jeleníti meg, ha elkészült.

1. példa: hardver-és Rendszerinformációk biztonsági mentése

a ninjahelper elindítása után új biztonsági mentési műveletet hozunk létre:

ha szükséges segítő programok nincsenek telepítve, akkor a következő képernyőket mutatjuk be. Hagyja figyelmen kívül ezt a lépést, ha ezek a csomagok már telepítve vannak a rendszerére.

a következő lépés a biztonsági mentésben részt venni kívánt elemek kiválasztása. Az első négy alapértelmezés szerint van kiválasztva, de a szóköz megnyomásával törölheti őket.

ha végzett, nyomja meg az OK gombot a folytatáshoz. Kiválaszthatja, hogy az alapértelmezett konfigurációs fájlt használja – e ehhez a biztonsági mentési művelethez (/etc/backup.d/10.sys), vagy újat szeretne létrehozni. Ez utóbbi esetben egy új, az alapértelmezettel azonos tartalmú fájl jön létre ugyanabban a könyvtárban, de 11.sys néven, és így tovább a jövőbeli rendszermentési műveletekhez. Vegye figyelembe, hogy a konfigurációs fájlt szerkesztheti, miután létrehozta a kívánt szövegszerkesztővel.

2. példa: Növekményes rsync Pull Backup egy távoli könyvtár

mint valószínűleg tudja, rsync széles körben használják, hogy szinkronizálja a fájlokat és mappákat a hálózaton keresztül. A következő példában egy olyan megközelítést fogunk megvitatni, amely egy távoli könyvtár inkrementális pull biztonsági mentését végzi a hardlinking segítségével, hogy elmentse a történelmi adatokat, és tárolja őket a helyi fájlkiszolgálónkban. Ez a megközelítés segít megtakarítani a helyet és növelni a biztonságot a szerver oldalon.

1.lépés: írjon egy egyéni szkriptet a /etc/backup.d könyvtárba a következő tartalommal, és chmodírja be a 600 könyvtárba. Vegye figyelembe, hogy ez a könyvtár a sima konfigurációs fájlok mellett olyan szkripteket is tartalmazhat, amelyeket a Backupninja végrehajtásakor futtatni szeretne, azzal az előnnyel, hogy a fő konfigurációs fájlban található változókat használja.

# 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

a fenti konfigurációban a --link-dest rsync opció a változatlan fájlok (minden attribútumban) hardlinkelésére szolgál $localdir-olda célkönyvtárba ($localdir).

2.lépés: a Backupninja első futtatása előtt a szülőkönyvtár (ebben az esetben/home/gacanepa) üres. Az első alkalommal, amikor végrehajtjuk:

# backupninja -n

a backup.0könyvtár létrejön, majd a folyamat során a neve backup.1 – re változik.

a Backupninja második futtatásakor a backup.0 újra létrejön, és backup.1 megmarad.

3.lépés: Ellenőrizze, hogy a backup.1 tartalma kemény hivatkozás-e a backup.0 fájlokra a megfelelő inode számok és könyvtárméretek összehasonlításával.

következtetés

Backupninja nem csak egy klasszikus biztonsági mentési eszköz, hanem egy könnyen konfigurálható segédprogram. A Backupninja futtatásához írhatsz saját kezelőidet a /etc/backup.d – ben található egyedi konfigurációs fájlok szerint, és még a ninjahelper – hez is írhatsz segítőket, hogy felvehesd őket a fő felületére.

ha például létrehoz egy xmodulo nevű kezelőt a /usr/share/backupninja – ban, akkor alapértelmezés szerint minden .xmodulo kiterjesztésű fájlt lefuttat a /etc/backup.d – ban. Ha úgy dönt, hogy hozzá szeretné adni a xmodulo kezelőt a ninjahelper – hez, akkor a megfelelő segítőt xmodulo.helpernéven írhatja. Ezenkívül, ha azt szeretné, hogy a Backupninja tetszőleges szkriptet futtasson, csak adja hozzá a /etc/backup.d – hez, és készen áll. Az egyéni biztonsági mentési terv létrehozásával kapcsolatos részletekért olvassa el ezt a Backupninja oktatóanyagot.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.