Homepage » hogyan kell » Az rsync használata az adatok biztonsági mentéséhez Linuxon

    Az rsync használata az adatok biztonsági mentéséhez Linuxon

    Az rsync olyan Unix-szerű rendszerekre épített protokoll, amely hihetetlen sokoldalúságot biztosít az adatok biztonsági mentéséhez és szinkronizálásához. Helyileg használható a fájlok más könyvtárakba való biztonsági mentéséhez, vagy konfigurálható úgy, hogy szinkronizáljon az interneten keresztül a többi géphez.

    Használható Windows rendszereken, de csak különböző portokon keresztül érhető el (például Cygwin), így ebben a módban a Linuxról történő beállításról lesz szó. Először telepítenünk kell / frissítenünk kell az rsync klienst. A Red Hat disztribúcióknál a parancs „yum install rsync”, a Debian pedig „sudo apt-get install rsync”.


    A Red Hat / CentOS parancs a root felhasználóként való bejelentkezés után (vegye figyelembe, hogy a Red Hat néhány újabb terjesztése támogatja a sudo módszert).


    A Debian / Ubuntu parancs.

    Az rsync használata helyi mentésekhez

    A bemutató első részében a Directory1 könyvtárból a Directory2 fájlba mentjük a fájlokat. Mindkét könyvtár ugyanazon a merevlemezen van, de ez ugyanúgy működne, ha a könyvtárak két különböző meghajtón léteznek. Számos különböző módon közelíthetjük meg ezt, attól függően, hogy milyen biztonsági mentéseket szeretne beállítani. A legtöbb esetben a következő kódsor elegendő:

    $ rsync -av --delete / Directory1 / / Könyvtár2 /

    A fenti kód szinkronizálja a Directory1 tartalmát a Directory2-re, és nem hagy különbséget a kettő között. Ha az rsync úgy találja, hogy a Directory2 olyan fájl, amelyet a Directory1 nem tartalmaz, akkor törli azt. Ha az rsync olyan fájlt keres, amelyet megváltoztattak, létrehoztak vagy töröltek az 1-es könyvtárban, az ugyanazokat a változásokat tükrözi a Directory2-ben.

    Számos különböző kapcsoló található az rsync-hez, hogy személyre szabja a saját igényeit. A fent említett kód azt mondja az rsync-nek, hogy a biztonsági mentésekkel együtt jár:

    1. -a = rekurzív (ismétlődő könyvtárakba), linkek (szimbolikus linkek szimbolikus linkekként), perms (engedélyek megőrzése), idők (módosítási idők megőrzése), csoport (megőrző csoport), tulajdonos (tulajdonos megőrzése), eszközfájlok megőrzése és különleges fájlok megőrzése.
    2. -v = verbose. Az ok, amiért fontosnak tartom, hogy fontos, hogy pontosan lássuk, hogy az rsync milyen biztonsági másolatot készít. Gondolj erre: Mi van, ha a merevlemez rosszul megy, és elkezdi a fájlokat az Ön tudta nélkül törölni, akkor futtatja az rsync parancsfájlját, és a módosításokat a biztonsági másolatokra tolja el, és így törli a fájl összes példányát, amelyet nem szeretne elérni megszabadul?
    3. -delete = Ez azt mondja az rsync-nek, hogy törölje a Directory2 könyvtárban lévő fájlokat, amelyek nem szerepelnek a Directory1-ben. Ha ezt az opciót választja, a fent említett okok miatt ajánlom a verbose opciókat is.

    A fenti szkript használatával itt a kimenet az rsync használatával jön létre, hogy a Directory1 könyvtárat a Directory2-re mentse. Ne feledje, hogy a verbose kapcsoló nélkül nem kapna ilyen részletes információt.

    A fenti kép azt mutatja, hogy a File1.txt és a File2.jpg felismerték, hogy újnak vagy más módon megváltoztak a Directory2-ban található másolatoktól, és így biztonsági másolatot készítettek. Noob tipp: Figyeljük meg, hogy a rsync parancsainak végein lévő végtagok a könyvtárak végén vannak - ezek szükségesek..

    Néhány praktikusabb átkapcsolást végzünk a bemutató vége felé, de ne feledjük, hogy a teljes lista megtekintéséhez írja be a „man rsync” parancsot, és tekintse meg a használni kívánt kapcsolók teljes listáját.

    Ami a helyi biztonsági másolatokat illeti, lefedi azt. Mint mondhatod, az rsync nagyon könnyen használható. Egy kicsit bonyolultabbá válik, amikor az interneten keresztül szinkronizálja az adatokat egy külső gazdagéppel, de megmutatjuk Önnek egy egyszerű, gyors és biztonságos módját, hogy ezt megtehesse.

    Az rsync használata külső biztonsági mentésekhez

    Az rsync többféle módon konfigurálható a külső biztonsági mentésekhez, de átmegyünk az SSH-n keresztüli legmegfelelőbb (még a legegyszerűbb és legbiztonságosabb) módszerrel is. A legtöbb szerver és még sok kliens már rendelkezik SSH-val, és az rsync-mentésekhez is használható. Megmutatjuk Önnek a folyamatot, hogy egy Linux-gépet egy helyi hálózaton másoljon. A folyamat ugyanolyan lenne, ha valahol az egyik fogadó az interneten van, csak vegye figyelembe, hogy a 22-es portot (vagy bármilyen SSH-konfigurációt tartalmazó portot) továbbítani kell a hálózati kiszolgálókon a szerver oldalán..

    A kiszolgálón (a biztonsági mentést fogadó számítógépen) győződjön meg arról, hogy az SSH és az rsync telepítve van.

    # yum -y telepítse az ssh rsync-t

    # sudo apt-get install ssh rsync

    Az SSH és az rsync telepítése a szerveren kívül minden, ami valóban szükséges, az a szerver tárolóinak beállítása, ahol a fájlokat menteni szeretné, és győződjön meg róla, hogy az SSH le van zárva. Győződjön meg róla, hogy a használni kívánt felhasználónak összetett jelszava van, és jó ötlet lehet az SSH által hallgatott port (alapértelmezett érték 22)..

    Futtatjuk ugyanazt a parancsot, amit az rsync használatára tettünk egy helyi számítógépen, de tartalmazniuk kell az SSH-n keresztüli rsync alagutakhoz szükséges kiegészítéseket a helyi hálózat szerverére. Ha a „geek” a „192.168.235.137” -hez csatlakozik, és ugyanazokat a kapcsolókat használja, mint a fenti (-av -delete), akkor az alábbiakat futtatjuk:

    $ rsync -av -delete -e ssh / Directory1 / [email protected]: / Directory2 /

    Ha SSH-t hallgat valamilyen 22-es porton kívül, meg kell adnia a portszámot, például ebben a példában, ahol a 12345-ös portot használom:

    $ rsync -av -delete -e 'ssh -p 12345' / Directory1 / [email protected]: / Directory2 /

    Amint a fenti képernyőről látható, a hálózaton keresztül történő mentéskor adott kimenet meglehetősen megegyezik a helyi biztonsági mentésekkel, az egyetlen dolog, amit megváltoztat a használt parancs. Ne feledje, hogy jelszót kér. Ez az SSH-val való hitelesítés. Beállíthatja az RSA kulcsokat, hogy átugorja ezt a folyamatot, ami szintén egyszerűsíti az rsync automatizálását.

    Az rsync biztonsági mentések automatizálása

    A Cron Linuxon használható a parancsok, például az rsync végrehajtásának automatizálására. Cron segítségével Linux rendszerünket éjszaka menthetjük, vagy gyakran gyakran szeretnénk futtatni őket.

    A bejelentkezett felhasználó cron táblázatfájljának szerkesztéséhez futtassa:

    $ crontab -e

    A fájl szerkesztéséhez ismernie kell a vi-t. Írja be az „I” betűt, majd kezdje el a cron tábla fájl szerkesztését.

    A Cron a következő szintaxist használja: az óra, a nap órája, a hónap hónapja, az év hónapja, a hét napja, a parancs.

    Először egy kicsit zavaró lehet, így hadd adjak egy példát. A következő parancs minden este 10 órakor futtatja az rsync parancsot:

    0 22 * ​​* * rsync -av --delete / Directory1 / / Könyvtár2 /

    Az első „0” az óra percét adja meg, a „22” pedig 10 óra. Mivel ezt a parancsot naponta szeretnénk futtatni, a többi mezőt csillaggal hagyjuk, majd beillesztjük az rsync parancsot.

    Miután elvégezte a Cron konfigurálását, nyomja meg a menekülés gombot, majd írja be a „: wq” (idézőjelek nélkül) és nyomja meg az enter billentyűt. Ezzel a változásokat vi.

    A Cron ennél sokkal mélyebbre tehet szert, de a továbblépéshez ez a leírás nem terjed ki. A legtöbb ember csak egyszerű heti vagy napi biztonsági mentést szeretne, és azt, amit megmutattunk, könnyen elvégezhetjük. A Cronról további információt a man oldalakon talál.

    Egyéb hasznos funkciók

    Egy másik hasznos dolog, amit tehetünk, a biztonsági másolatokat egy zip fájlba helyezzük. Meg kell adnia, hogy hová szeretné helyezni a zip fájlt, majd rsyncezze a könyvtárat a mentési könyvtárba. Például:

    $ zip /ZippedFiles/archive.zip / Directory1 / & & rsync -av --delete / ZippedFiles / / Directory2 /

    A fenti parancs a Directory1 fájlból veszi a fájlokat, azokat a /ZippedFiles/archive.zip fájlba helyezi, majd a könyvtárat a Directory2-re rsyncsel. Kezdetben úgy gondolja, hogy ez a módszer a nagy biztonsági másolatok esetében nem lesz hatékony, figyelembe véve, hogy a zip fájl minden alkalommal megváltozik, amikor a legkisebb változtatás történik a fájlban. Az rsync azonban csak a módosított adatokat adja át, így ha a zip fájlja 10 GB, majd szöveges fájlt ad hozzá a Directory1-hez, az rsync tudni fogja, hogy mindössze hozzáadta (még akkor is, ha zipben van), és csak a néhány kilobájt átvitele módosított adatok.

    Néhány különböző módon titkosíthatja az rsync biztonsági mentéseit. A legegyszerűbb módszer a titkosítás telepítése a merevlemezre (az, amelyre a fájlokat biztonsági másolat készíti). Egy másik módja a fájlok titkosítása a távoli szerverre (vagy más merevlemezre való elküldésük előtt). Ezeket a módszereket későbbi cikkekben fogjuk lefedni.

    Bármelyik opciót és funkciót választja, az rsync bizonyult az egyik leghatékonyabb és sokoldalú biztonsági eszköznek, és még egy egyszerű rsync parancsfájl is mentheti meg az adatvesztését.