Kuidas kasutada rsynci teie andmete varundamiseks Linuxis

Sisukord:

Kuidas kasutada rsynci teie andmete varundamiseks Linuxis
Kuidas kasutada rsynci teie andmete varundamiseks Linuxis

Video: Kuidas kasutada rsynci teie andmete varundamiseks Linuxis

Video: Kuidas kasutada rsynci teie andmete varundamiseks Linuxis
Video: Control PowerStrip with Gear S3 Watch! - YouTube 2024, Aprill
Anonim
rsync on Unix-tüüpi süsteemide jaoks loodud protokoll, mis pakub andmete varundamiseks ja sünkroonimiseks uskumatut mitmekülgsust. Seda saab kasutada kohapeal failide varundamiseks erinevatesse kataloogidesse või neid saab konfigureerida Interneti-ühenduse teistele hostidele sünkroonimiseks.
rsync on Unix-tüüpi süsteemide jaoks loodud protokoll, mis pakub andmete varundamiseks ja sünkroonimiseks uskumatut mitmekülgsust. Seda saab kasutada kohapeal failide varundamiseks erinevatesse kataloogidesse või neid saab konfigureerida Interneti-ühenduse teistele hostidele sünkroonimiseks.

Seda saab kasutada Windowsi süsteemides, kuid see on saadaval ainult erinevatel sadadel (nt Cygwin), nii et selles osas kirjeldame, kuidas Linuxis seda installida. Esiteks peame installima / värskendama rsync kliendi. Red Hat'i distributsioonidel on käsk "yum install rsync" ja Debianis on see "sudo apt-get install rsync".

 Red Hat / CentOS käsk pärast root sisselogimist (pidage meeles, et mõned Red Hat'i hiljutised jaotused toetavad sudo meetodit).
Red Hat / CentOS käsk pärast root sisselogimist (pidage meeles, et mõned Red Hat'i hiljutised jaotused toetavad sudo meetodit).
 Debiani / Ubuntu käsk.
Debiani / Ubuntu käsk.

Rsynci kasutamine kohalike varunduste jaoks

Selle õpetuse esimeses osas varundame failid kataloogist 1 kataloogist 2. Mõlemad kataloogid asuvad ühes kõvakettal, kuid see toimib täpselt samamoodi, kui kataloogid eksisteeriksid kahel erineval draivil. Selle saavutamiseks võime mitmel erineval viisil sõltuvalt sellest, millist varundamist soovite konfigureerida. Enamikul eesmärkidel piisab järgmisest koodist:

$ rsync -av --delete /Directory1/ /Directory2/

Ülalolev kood sünkroonib kataloogi sisu Directory2-le ja jätab kahe erinevuse vahele. Kui rsync leiab, et Directory2-l on fail, mida Directory1 ei tee, kustutab ta selle. Kui rsync leiab kataloogi1 muudetud, loodud või kustutatud faili, kajastab see kataloogis 2 samu muudatusi.

Seal on palju erinevaid lülitid, mida saate rsynci jaoks kasutada, et isikupärastada seda vastavalt teie konkreetsetele vajadustele. Siin räägib eelmainitud kood rsynci varukoopiate tegemiseks:

1. -a = rekursiivne (retsept kataloogideks), lingid (sünonüümide kopeerimine sümleinkideks), perms (säilitada õigused), ajad (säilitada muudatuste ajad), grupp (säilitada grupp), omanik (säilitada omanik), säilitada seadme faile ja säilitage erifailid. 2. -v = verbose. Põhjus, miks ma arvan, et verbose on oluline, on see, et näete täpselt seda, mida rsync varundatakse. Mõelge sellele: kui teie kõvaketas läheb halvasti ja hakkab failide kustutamist ilma teie teadmata, siis käivitate oma rsync-skripti ja see vajutab need muudatused oma varukoopiatele, kustutades sellega kõik failid, mida te ei soovinud saada vabaneda? 3. -delete = See ütleb rsync'ile kustutama kataloogis 2 olevad failid, mis ei ole Directory1-s. Kui otsustate seda võimalust kasutada, soovitame kasutada ka suuremahulisi valikuid ülalkirjeldatud põhjustel.

Eespool toodud skripti kasutamine siin on väljund, mis on loodud rsynci abil, et varundada Directory1 kataloogi 2. Pidage meeles, et ilma lojaalse lülitita ei võta te sellist üksikasjalikku teavet.

Ülaltoodud pildil näitab meile, et failid File1.txt ja File2.jpg tuvastati kataloogis 2 eksisteerivate eksemplaride kujul kas uutest või muul viisil muul viisil ning need on varundatud. Noobi nõuanded: märkige jälle kaldkriipsud käsku rsync käskude kataloogide lõpus - need on vajalikud, kindlasti pidage meeles neid.
Ülaltoodud pildil näitab meile, et failid File1.txt ja File2.jpg tuvastati kataloogis 2 eksisteerivate eksemplaride kujul kas uutest või muul viisil muul viisil ning need on varundatud. Noobi nõuanded: märkige jälle kaldkriipsud käsku rsync käskude kataloogide lõpus - need on vajalikud, kindlasti pidage meeles neid.

Läheme selle tutoriali lõpus paar mugavamat lülitit, kuid pidage meeles, et täieliku loendi kuvamiseks võite sisestada käsu "man rsync" ja vaadata täielikku loendit kasutatavatest lülititest.

See hõlmab nii kohalike varundamiste kui ka kohalike varukoopiate osas. Nagu võite öelda, on rsync väga lihtne kasutada. Selle kasutamine sünkroonib Interneti-välise hostiga seda veidi keerukamaks, kuid me näitan sulle lihtsat, kiiret ja turvalist viisi.

Rsynci kasutamine väliseks varukoopiateks

rsynci saab seadistada mitmel erineval viisil väliseks varukoopiateks, kuid me läheme läbi kõige praktilisema (ka kõige lihtsama ja turvalisema) rsync'i SSH-i tunnelimise meetodi. Enamikul serveritel ja isegi paljudel klientidel on juba SSH ja seda saab kasutada teie rsync varunduste jaoks. Näitame teile protsessi, et saada üks Linuxi masin varundada teisele kohalikule võrgule. Protsess oleks täpselt samasugune, kui üks peremees oleks kuskil internetis internetis, vaid märkake, et pordi 22 (või mis tahes muu sadama puhul, millel on SSH-i konfigureeritud) oleks vaja edastada mis tahes võrguseadmetel serveri asjades.

Serveril (arvuti, mis võtab varukoopiaid) veenduge, et SSH ja rsync on installitud.

# yum -y install ssh rsync

# sudo apt-get install ssh rsync

Kõik, mis on tõesti vaja serverisse SSH ja rsync installida, on serveris olevate hoidlate seadistamine, kus soovite failid varundada, ja veenduge, et SSH on lukustatud. Veenduge, et kasutajal, kellel te kavatsete kasutada, on keeruline parool ning võib ka olla mõte SSH-i poolt vaadatud porti lülitada (vaikimisi on 22).

Käitame sama käsku, mida me kasutasime kohaliku arvuti rsync-i kasutamiseks, kuid lisage need vajalikud tunnused rsync-i SSH-i kaudu minu kohaliku võrgu serverisse. Kasutaja "geek", mis ühendab "192.168.235.137" ja kasutab samu lülitusi nagu ülaltoodud (-av -delekt), käitame järgmiselt:

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

Kui teil on SSH-i kuulamine mõnes teises pordis peale 22, peate määrama pordi numbri, nagu näiteks selles näites, kus ma kasutan pordi 12345:

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

Nagu näete ülaltoodud ekraanipildilt, on kogu võrgu varundamisel antud väljund peaaegu sama, kui varundamine kohalikul tasandil, ainus asi, mis muudab, on käsk, mida te kasutate. Pange tähele, et see palus parooli.See on autentimine SSH-ga. Selle protsessi vahelejätmiseks saate RSA võtmeid seadistada, mis lihtsustab ka rsynci automatiseerimist.
Nagu näete ülaltoodud ekraanipildilt, on kogu võrgu varundamisel antud väljund peaaegu sama, kui varundamine kohalikul tasandil, ainus asi, mis muudab, on käsk, mida te kasutate. Pange tähele, et see palus parooli.See on autentimine SSH-ga. Selle protsessi vahelejätmiseks saate RSA võtmeid seadistada, mis lihtsustab ka rsynci automatiseerimist.

Rsync varukoopiate automatiseerimine

Cronit saab kasutada Linuxis, et automatiseerida käskude täitmist, näiteks rsync. Kasutades Croni, võib meie Linuxi süsteem käitada igapäevaseid varukoopiaid või siiski tihti soovite, et need töötaksid.

Kasutaja cron-faili muutmiseks, kuhu sisse logite, käivitage:

$ crontab -e

Selle faili muutmiseks peate olema viisaga tuttav. Sisestage tüüp "I" ja seejärel alustage cron-faili muutmist.

Cron kasutab järgmist süntaksit: tund, tund, päev tund, kuu päev, aasta kuu, nädalapäev, käsk.

Esialgu võib see olla natuke segane, nii et lubage mul anda teile näide. Järgmine käsk käivitab rsync käsku igal õhtul kell 10:

0 22 * * * rsync -av --delete /Directory1/ /Directory2/

Esimene "0" määrab tunni minuti ja "22" määrab kella 22. Kuna me tahame seda käsku käivitada iga päev, jätame ülejäänud väljad tärnid ja seejärel kleebi rsynci käsku.

Kui olete lõpetanud Croni konfigureerimise, vajutage escape ja seejärel tippige ": wq" (ilma jutumärkideta) ja vajutage sisestusklahvi. See salvestab vi muudatused.

Cron saab sellest palju põhjalikumat teavet, kuid edasi minna peaks see juhendaja ulatusest välja jääma. Enamik inimesi soovib lihtsalt iganädalast või igapäevast varundamist ja seda, mida me näitasime, saate seda kergesti saavutada. Lisateavet Croni kohta leiate mani lehtedelt.

Muud kasulikud funktsioonid

Teine kasulik asi, mida saate teha, on panna oma varukoopiad ZIP-faili. Peate määrama, kuhu soovid paigutada zip-faili, ja seejärel rsync selle kataloogi oma varukataloogi. Näiteks:

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

Ülalolev käsu võtab failid kataloogilt 1, asetab need /zippedFiles/archive.zip ja seejärel kataloogi r2dub kataloogi. Esialgu võite arvata, et see meetod osutub ebatõhusaks suurte varukoopiate jaoks, arvestades, et zip-fail muutub iga kord, kui failile tehakse väikseid muudatusi. Kuid rsync edastab ainult muutunud andmed, nii et kui teie zip-fail on 10 GB, siis lisate tekstifaili Directory1-le, siis rsync teab, et see on kõik, mida olete lisanud (kuigi see on zip-failis) ja teisaldage ainult paar kilobaiti muudest andmetest.
Ülalolev käsu võtab failid kataloogilt 1, asetab need /zippedFiles/archive.zip ja seejärel kataloogi r2dub kataloogi. Esialgu võite arvata, et see meetod osutub ebatõhusaks suurte varukoopiate jaoks, arvestades, et zip-fail muutub iga kord, kui failile tehakse väikseid muudatusi. Kuid rsync edastab ainult muutunud andmed, nii et kui teie zip-fail on 10 GB, siis lisate tekstifaili Directory1-le, siis rsync teab, et see on kõik, mida olete lisanud (kuigi see on zip-failis) ja teisaldage ainult paar kilobaiti muudest andmetest.

Rsync varukoopiate krüptimiseks on paar erinevat moodust. Lihtsaim meetod on krüpteeringu installimine kõvakettale (see, mida teie failid varundatakse). Teine võimalus on faile krüptida enne nende saatmist serverisse (või teisele kõvakettale, mis iganes teile varundamine toimub). Me käsitleme neid meetodeid hilisemates artiklites.

Ükskõik millised valikud ja funktsioonid valite, rsync osutub praegu üheks kõige tõhusamaks ja mitmekülgseks varundamisvahendiks ning isegi lihtne rsync-skript võib teie andmeid kaotada.

Soovitan: