Kaip kurti serverio atsargines kopijas naudojant „rsync“
Atsarginės kopijos turėtų užimti svarbią vietą planuojant serverio veiklą. Atskiras atsargines kopijas galima greitai sukonfigūruoti ir sukurti naudojant nemokamą sinchronizavimo įrankį arba „rsync“ protokolą.
Kaip nustatyti „rsync“ atsargines kopijas „Linux“ serveriuose
Norėdami naudoti „rsync“ Linux operacinėse sistemose, įdiekite protokolą iš to paties pavadinimo paketo ir kurkite atsargines kopijas naudodami terminalo komandas. Toliau pateiktame skyriuje, remdamiesi „Ubuntu“ pavyzdžiu, parodysime svarbiausius žingsnius, kaip sukonfigūruoti atsarginių kopijų kūrimo procesus naudojant „rsync“. Taip pat pateikiame praktinius pavyzdžius.
„Rsync“ Ubuntu sistemoje jau yra įdiegta pagal numatytuosius nustatymus. Jei taip nėra, ją įdiekite naudodami šią komandą:
sudo apt-get install rsyncbashJei įdiegta programa „rsync“, galite naudoti terminalo komandas, kad nurodytumėte šaltinio ir paskirties katalogus bei atsarginės kopijos parinktis. Kaip šaltinio ir paskirties kelius reikia nurodyti atitinkamą šaltinio katalogą ir katalogą, kuriame „rsync“ turi išsaugoti atsarginę kopiją. Pavyzdžiui, standartinis režimas („Archive“) vykdomas taip:
rsync -a source directory target directorybashNaudokite bandomąjį paleidimą -n, kad patikrintumėte, ar nurodyti parametrai ir katalogai yra teisingi. Netinkamai įvesti duomenys blogiausiu atveju gali sukelti duomenų praradimą. Jei kai kurie failai nėra nukopijuojami taip, kaip turėtų, dažniausiai tai atsitinka dėl nepakankamų prieigos teisių. Jei taip nutinka, pabandykite komandą paleisti administratoriaus teisėmis, prieš ją įrašydami sudo.
Penki pavyzdžiai, kaip naudoti „rsync“ atsarginę kopiją
Išmokę pagrindines komandas, „rsync“ taps puikiu įrankiu failams kopijuoti ir atsarginėms kopijoms kurti. Galite išbandyti ir taikyti atskiras komandų konfigūracijas arba naudoti patikrintas galimų „rsync“ parametrų kombinacijas. Toliau pateikiame penkis populiariausius būdus, kaip atlikti atsargines kopijas naudojant „rsync“.
Įprasta atsarginė kopija su archyvavimo režimu
Archyvavimo režimas nukopijuoja visus failus iš šaltinio katalogo į paskirties katalogą, įskaitant visus pakatalogius. Visi leidimai, laiko žymos ir įrenginio duomenys išlieka. Daugeliu atvejų tai yra idealus ir paprasčiausias sprendimas, nes jis viename parametrą apjungia įvairias galimybes. Jei šį režimą derinsite su -v parametru, atsarginės kopijos kūrimo proceso metu taip pat gausite išsamią informaciją apie būseną.
rsync -av Source directory Target directorybashKaip šaltinio ir paskirties katalogus reikia nurodyti atitinkamą šaltinio katalogą ir katalogą, kuriame „rsync“ turi išsaugoti atsarginę kopiją.
Tiksli šaltinio katalogo kopija
„rsync“ ne tik gali perkelti failus iš A į B, bet ir sukurti identiškas aplankų ar visų katalogų kopijas. Atlikus įprastą archyvavimą, failai, kurie buvo tikslinėje aplankėje prieš atliekant „rsync“ atsarginę kopiją (bet kurių nėra šaltinio aplanke), yra ištrinami.
rsync -av --delete Source directory Target directorybash„rsync“ atsarginė kopija, neįtraukiant tam tikro formato failų
Jei norite atlikti „rsync“ atsarginę kopiją, neįtraukiant tam tikro formato failų, galite tai padaryti naudodami komandą --exclude “. Šis parametras leidžia apibrėžti individualų simbolių modelį, kurį „rsync“ naudoja kaip žymę, kad failas būtų ignoruojamas. Toliau pateiktame pavyzdyje neįtraukiami .txt failai.
rsync -av --exclude'*.txt' Source directory Target directorybashFailų, kurių dydis yra mažiausias arba didžiausias, atsarginės kopijos kūrimas
Jei norite, kad rsync atsarginės kopijos kūrimo metu tam tikrų failų neįtraukimą lemtų ne konkretus simbolių modelis, o failo dydis, galite naudoti parametrus --max-size ir --min-size. Naudodami šią komandą, bus kopijuojami tik tie failai, kurių dydis yra nuo mažiausiai 10 MB iki daugiausiai 100 MB:
rsync -av --min-size=10MB --max-size=100MB Source directory Target directorybashAtsarginė kopija, įskaitant simbolių formato konvertavimą
Gali prireikti konvertuoti failus į kitą simbolių kodavimo formatą paskirties kataloge. Pavyzdžiui, jei norite perkelti duomenis iš „Mac“ į „Linux“ serverį, reikės įtraukti simbolių kodavimo konversiją. „Apple“ įrenginiai pagal numatytuosius nustatymus naudoja UTF8-MAC kodavimą, kurio nėra „Linux“ sistemose ir kuris sukeltų problemų su specialiais simboliais. --iconv parinktis leidžia lengvai pritaikyti simbolių kodavimą kaip dalį „rsync“ atsarginės kopijos kūrimo proceso (žemiau pateiktame pavyzdyje – iš UTF8-MAC į UTF8):
rsync -av --iconv=UTF8-MAC,UTF8 Source directory Target directorybashSvarbiausių „rsync“ atsarginių kopijų kūrimo parinkčių apžvalga
Naudodami įvairias parinktis, kurias galima nurodyti trumpiniais arba pilnais pavadinimais, galite nustatyti individualius „rsync“ atsarginių kopijų parametrus. Toliau pateiktoje lentelėje apibendrinti svarbiausi parametrai, kuriuos prireikus galima derinti tarpusavyje:
| Parinktis | Funkcija |
|---|---|
-r, --recursive
|
rsync atsarginė kopija įtraukia visus pakatalogius |
-u, --update
|
Nurodymas praleisti tiksliniame kataloge esančius failus, kurie yra naujesni už šaltinio kataloge esančius failus |
-c, --checksum
|
Šaltinio ir tikslo failų atskyrimas pagal kontrolines sumas |
-l, --links
|
Simbolinės nuorodos kopijuojamos kaip tokios (o ne kaip failai) |
-p, --perms
|
Failų leidimai išsaugomi |
-g, --group
|
Grupės failų leidimai išlieka |
-t, --times
|
Išsaugomi failų laiko žymos (paskutinis pakeitimas) |
-o, --owner
|
Failų savininkai išsaugomi (tik jei jie yra administratoriai) |
-D, --devices
|
Išsaugomi įrenginio duomenys |
-z, --compress
|
Automatinis perduodamų failų suspaudimas |
--compress-level=NUM
|
Nustato suspaudimo lygį; galimos reikšmės („NUM“) nuo 0 (nesuspaudžiama) iki 9 (maksimalus suspaudimas) |
-v, --verbose
|
Išsamesnė informacija atsarginių kopijų kūrimo proceso metu |
-q, --quiet
|
Paslėpti visą informaciją apie atsarginės kopijos kūrimo procesą (išskyrus klaidų pranešimus) |
-a, --archive
|
Archyvavimo režimas naudojamas kaip standartinis režimas ir yra identiškas parinkčių deriniui — rlptgoD |
-n, --dry-run
|
Bandomasis paleidimas, kurio metu nėra daromi jokie realūs pakeitimai |
-h, --help
|
Pagalbinis meniu (gali būti naudojamas tik nenurodant šaltinio ir tikslo katalogų ar kitų argumentų) |
--bwlimit=KBPS
|
Pralaidumo apribojimas (kilobaitai per sekundę); pvz., --bwlimit=30 (ribojimas iki 30 kbit/s)
|
--exclude=SAMPLE
|
Išskirti modelį iš sinchronizacijos; pvz., --exclude sample folder (aplankas „sample folder“ nėra sinchronizuojamas.)
|
--delete
|
Ištrinti visus failus, kurie yra tikslinėje kataloge, bet nėra šaltinio kataloge |
--progress
|
Rodyti „rsync“ atsarginių kopijų trukmę ir perdavimo greitį |
--list-only
|
Rodyti failų sąrašą vietoj atsarginės kopijos |
--stats
|
Išsami ataskaita apie perduotus duomenis (skaičių, dydį) |
--max-size=SIZE
|
Nustatyti maksimalų failo dydį; pvz., --max-size=10MB (perduodami tik failai, kurių dydis neviršija 10 MB).
|
--ignore-errors
|
Užkirsti kelią atsarginės kopijos kūrimo proceso nutraukimui įvykus klaidai |