17Aug

Водич без почетка за синхронизовање података са Рсинц

click fraud protection

Протокол рсинц може бити прилично једноставан за кориштење за обичне послове резервне копије / синхронизације, али неке од његових напреднијих функција могу вас изненадити.У овом чланку ћемо показати како чак и највећи корисници података и резервни ентузијасти могу да користе рсинц као једно решење за све њихове потребе за редунданцијом података.

Упозорење: Напредни Геекс само

Ако седите тамо размишљајући "Шта је то рсинц?" Или "Ја само користим рсинц за стварно једноставне задатке", можда бисте желели да погледате наш претходни чланак о томе како користити рсинц за бацкупваши подаци на Линук-у, који дају увод у рсинц, вас воде кроз инсталацију и приказују његове основне функције.Једном када чврсто схватите како да користите рсинц( искрено, није то сложен) и да ли вам је удобан Линук терминал, спремни сте да пређете на овај напредни водич.

Руннинг рсинц на Виндовсу

Прво ћемо добити наше Виндовс читаче на истој страници као и наши гуруи Линука.Иако је рсинц изграђен да ради на Уник-лике системима, нема разлога да не бисте могли да га користите баш тако једноставно на Виндовс-у.Цигвин производи прекрасан Линук АПИ који можемо користити за покретање рсинц-а, па пређите на њихову веб локацију и преузмите 32-битну или 64-битну верзију, зависно од вашег рачунара.

instagram viewer

Инсталација је једноставна;можете задржати све опције по подразумеваним вредностима док не дођете до екрана "Изаберите пакете".

Сада морате да урадите исте кораке за Вим и ССХ, али пакови ће изгледати мало другачије када идете да их изаберете, па ево неколико слика са екрана:

Инсталирање Вим-а:

Инсталирање ССХ-а:

Након што стеизабрали та три пакета, наставите да кликнете даље док не завршите инсталацију.Затим можете отворити Цигвин кликом на икону коју је инсталатер поставио на вашу радну површину.

команде рсинц: једноставно за напредни

Сада када су корисници Виндовса на истој страници, погледајте једноставну команду рсинц и показати како коришћење неких напредних прекидача може брзо да буде сложено.

Рецимо да имате гомилу датотека које требају резервисати - ко то не ради ових дана?Укључите ваш преносиви чврсти диск тако да можете направити резервне копије датотека рачунара и издати следећу команду:

рсинц -а /home/geek/files/ /mnt/usb/files/

Или, како ће изгледати на Виндовс рачунару помоћу Цигвин-а:

рсинц -а /cygdrive/c/files/ /cygdrive/e/files/

Прилично једноставан и ната тачка заиста нема потребе да користите рсинц, пошто бисте могли само превући и отпустити датотеке.Међутим, ако ваш други чврсти диск већ има неке од датотека и само требају ажуриране верзије плус датотеке које су креиране од последње синхронизације, ова команда је згодна јер само шаље нове податке на чврсти диск.Са великим фајловима, а посебно преносом датотека преко Интернета, то је велика ствар.

Прављење резервних копија датотека на вањски чврсти диск, а затим чување тврдог диска на истој локацији као и ваш рачунар је врло лоша идеја, па погледајте шта ће бити потребно за почетак слања датотека преко интернета на други рачунар(оне које сте изнајмили, члан породице итд.).

рсинц -ав --делете -е 'ссх -п 12345' /home/geek/files/ геек[email protected]: /home/geek2/files/

Горња команда ће послати ваше датотеке на други рачунар са ИП адресом од 10.1.1.1.Он би избрисао ванземаљске фајлове са одредишта који више не постоје у изворном директорију, излазне датотеке пренијете тако да имате идеју о томе шта се дешава, а тунел рсинц преко ССХ-а на порту 12345.

-а -в -е --делни прекидачи су неки од најосновнијих и најчешће коришћени;већ би требало да знате добар договор о њима ако читате овај водич.Хајде да пређемо на неке друге прекидаче који се понекад занемарују, али невероватно корисни:

--прогресс - Овај прекидач нам омогућава да видимо напредак преноса сваке датотеке.То је нарочито корисно приликом преноса великих датотека преко интернета, али може излазити бесмисленом количином информација само када преносе мале датотеке преко брзе мреже.

Команда рсинц са протоком --прогресс као резервна копија је у току:

- део - Ово је још један прекидач који је нарочито користан за пренос великих датотека преко интернета.Ако је рсинц прекинут из било ког разлога усред преноса датотеке, делимично пренесена датотека се чува у одредишном директоријуму, а пренос се наставља тамо где се прекинуо након што се команда рсинц изврши поново.Приликом преноса великих фајлова преко интернета( рецимо, неколико гигабајта), нема ништа лошије него што има неколико секундарних проблема са интернетом, плави екран или људски грешак у вашем преносу датотеке и морате поново да почнете.

-П - овај прекидач комбинира --прогресс и -партиал, тако да га користите уместо тога и учинит ће вам рсинц команда нешто мало.

-з или --цомпресс - Овај прекидач ће учинити рсинц компримирати податке о датотекама док се преносе, смањивањем количине података који треба послати одредишту.То је заправо прилично уобичајени преклопник, али је далеко од суштинског значаја, само вам је стварно корисно за трансфер између споро повезивања и не ради ништа за сљедеће типове датотека: 7з, ави, бз2, деб, г, з исо, јпег, јпг,мов, мп3, мп4, огг, рпм, тбз, тгз, з, зип.

-х или - човек-читљив - Ако користите --прогресс прекидач, дефинитивно ћете желети да користите и овај.То јест, осим ако не желите да претворите бајтове у мегабајтове на лету.Пребацивач -х претвара све изостављене бројеве у читљив формат, тако да можете стварно осмислити количину пренетих података.

-н или -дри-рун - Овај прекид је од суштинског значаја да знате када прво пишете рсинц скрипту и тестирате је.Она обавља пробни рад, али заправо не чини никакве промене - могуће промене се и даље излазе као нормалне, тако да можете читати све и осигурати да изгледа добро пре него што скенирате сценарио у продукцију.

-Р или --релативе - Овај прекидач се мора користити ако директоријум одредишта не постоји.Ову опцију ћемо користити касније у овом водичу тако да можемо да направимо директоријуме на циљној машини са временским ознакама у именима фасцикли.

--екцлуде-фром - Овај прекидач се користи за повезивање на листу искључивања која садржи путање директоријума за који не желите да направите резервну копију.Потребно је само текстуална датотека са директоријумом или путањом датотеке у свакој линији.

--инцлуде-фром - Слично као --екцлуде-фром, али он повезује на датотеку која садржи директорије и датотеке путања података које желите направити резервисане.

--статс - Уствари није битан прекидач на било који начин, али ако сте сисадмин, може бити згодно да знате детаљне статистике сваке резервне копије, само да бисте могли да пратите количину саобраћаја који се шаље преко ваше мреже и такве.

--лог-филе - Ово вам омогућава да пошаљете излаз рсинц у датотеку дневника.Дефинитивно препоручујемо ово за аутоматизоване сигурносне копије у којима нисте тамо да бисте сами прочитали кроз излаз.Увек оставите датотеке дневника једном у слободном времену како бисте били сигурни да све ради исправно.Такође, то је кључни прекидач за кориштење сисадмин-а, тако да вас не занима како су ваше копије биле неуспешне док сте напустили стажиста.

Хајде да погледамо нашу команду рсинц сада када смо додали још неколико прекидача:

рсинц -авзхП --делете --статс --лог-филе = /home/geek/rsynclogs/ бацкуп.лог --екцлуде-из '/home/geek/ екцлуде.ткт'-е 'ссх -п 12345' /home/geek/files/ геек[email protected]: /home/geek2/files/

Команда је и даље прилично једноставна, али још увек нисмо створили пристојно решење за бацкуп.Иако су наши фајлови сада на две различите физичке локације, ова резерва не чини ништа да нас заштити од једног од главних узрока губитка података: људске грешке.

Бацкупс Снапсхот

Ако случајно избришете датотеку, вирус поквари било коју од ваших датотека или се нешто друго догоди, а ваше датотеке су непожељно измењене, а затим покренете рсинц резервну скрипту, ваши резервисани подаци се преписују непожељним променама.Када дође до такве ствари( не ако, али када), ваше бацкуп решење није учинило ништа да вас заштити од губитка података.

Креатор рсинц је ово схватио и додао аргументе --бацкуп и --бацкуп-дир, тако да корисници могу покренути диференцијалне сигурносне копије.Први примјер на веб локацији рсинц-а приказује скрипту гдје се покреће потпуна сигурносна копија сваких седам дана, а затим измјене тих датотека дневно се чувају у засебним директоријима.Проблем са овом методом је да бисте повратили своје датотеке, морате их ефикасно опоравити седам различитих времена.Штавише, већина геекса покреће своје резервне копије неколико пута дневно, тако да можете лако имати 20+ различитих резервних директоријума у ​​било ком тренутку.Не само да се ваши фајлови опорављају већ бол, али чак и само гледање ваших резервних копија података може бити изузетно пуно времена - требало би да знате када је последњи пут измењен фајл како бисте пронашли своју најновију резервну копију.Поврх свега тога, неефикасно је радити само недељно( или још мање у неким случајевима) инкременталне сигурносне копије.

Снапсхот бацкуп на спасавање!Сигурносне копије снимака нису ништа више од инкременталних сигурносних копија, али користе хардлинке како би задржали структуру датотеке изворног извора.Можда вам је тешко прво обмотати главу, па погледајте пример.

Претвара се да имамо покренути резервну копију скрипте која аутоматски подржава наше податке сваких два сата.Кад год рсинц то ради, он назива сваку резервну копију у формату: Бацкуп-монтх-даи-иеар-тиме.

Дакле, на крају типичног дана, имали смо попис мапа у нашем одредишном директоријуму овако:

Када прелазите било који од тих директорија, ви бисте видели сваку датотеку из изворног директорија управо онако како је било тада.Па ипак, не би било дупликата преко било које две директоријуме.рсинц постиже ово помоћу хардлинкинга кроз аргумент -линк-дест = ДИР.

Наравно, да бисмо имали ове лепо и уредно датиране називе директоријума, морат ћемо морати мало више одушевити нашу рсинц скрипту.Хајде да погледамо шта ће бити потребно за постизање решења попут ове, а онда ћемо детаљније објаснити скрипту:

#!/bin/ басх

#цопи старо време.ткт до тиме2.ткт

да |цп ~ /backup/ тиме.ткт ~ /backup/ тиме2.ткт

#оверврите старо време.ткт датотеку са новим временом

ецхо `датум +"% Ф-% И% п "` & гт;~ /backup/ тиме.ткт

# направи датотеку дневника

ецхо "" & гт;~ /backup/ ​​рсинц-`дате + "% Ф-% И% п" `.лог

#рсинц команда

рсинц -авзхПР --цхмод = Ду = рвк, Дго = рк, Фу = рв, Фго = р --делете --статс --лог-филе = ~ /backup/ рсинц-`дате + "% Ф-% И% п" `.лог --екцлуде-фром '~ / екцлуде.ткт' --линк-дест = /home/geek2/files/` цат ~ /backup/тиме2.ткт` -е 'ссх -п 12345' /home/geek/files/ геек[email protected]: /home/geek2/files/ `датум +"% Ф-% И% п "` /

# не заборавите да скопирате датотеку дневника и ставите је сабацкуп

сцп -П 12345 ~ /backup/ рсинц-`цат ~ /backup/ тиме.ткт`.лог геек[email protected]: /home/geek2/files/ `цат ~ /backup/ тиме.ткт` / рсинц-`цат ~ /backup/ тиме.ткт`.лог

Тхатбиће типична скрипта рсинц снапсхот-а.У случају да смо те негде изгубили, хајде да га исечемо по комаду:

Прва линија наше скрипте копира садржај тиме.ткт у тиме2.ткт.Да цев је да потврдимо да желимо да преписујемо датотеку.Затим, узмемо тренутно време и ставимо је у временски период.ткт.Ове датотеке ће се касније појавити.

Следећа линија прави лог датотеку рсинц, назовући је рсинц-дате.лог( гдје је датум стварни датум и време).

Сада, сложена рсинц команда за коју смо вас упозоравали:

-авзхПР, -е, --делете, --статс, --лог-филе, --екцлуде-фром, --линк-дест - Јустпреклопнике о којима смо раније говорили;померите се ако вам је потребан освежитељ.

--цхмод = Ду = рвк, Дго = рк, Фу = рв, Фго = р - Ово су дозволе за одредишни директоријум.Пошто правимо овај директоријум у средини нашег скрипта рсинц, морамо да одредимо дозволе како би наши корисници могли да напишу датотеке.

Коришћење команди датума и мачке

Прелазимо сваку употребу наредби датума и мачке унутар команде рсинц, у редоследу којим се појављују.Напомена: Свјесни смо да постоје и други начини за остваривање ове функционалности, посебно уз кориштење декларисања варијабли, али у сврху овог водича, одлучили смо да користимо овај метод.

Датотека дневника је специфицирана као:

~ /backup/ рсинц-`дате + "% Ф-% И% п" `.лог

Алтернативно, могли бисмо то одредили као:

~ /backup/ рсинц-` ццат ~ /backup/ тиме.ткт`.лог

У сваком случају, наредба -лог-филе би требала бити у могућности да пронађе претходно креирану датирану датотеку дневника и пише на њега.

Циљна датотека везе је специфицирана као:

--линк-дест = /home/geek2/files/ `цат ~ /backup/ тиме2.ткт`

Ово значи да команда --линк-дест добија директоријум претходне сигурносне копије.Ако користимо резервне копије на свака два сата, а у 16:00 у тренутку када смо покренули ову скрипту, онда --линк-дест наредба тражи директоријум креиран у 14:00 и преноси само податке који су се од тада промијенили( ако их има).

Поновите, зато тиме.ткт се копира на тиме2.ткт на почетку скрипте, тако да команда --линк-дест може да се позове касније.

Циљни директоријум је назначен као:

геек[email protected]: /home/geek2/files/ `датум +"% Ф-% И% п "`

Ова команда једноставно ставља изворне датотеке у директоријум који има наслов тренутног датума и времена.

Коначно, водимо рачуна да се копија лог датотеке налази унутар резервне копије.

сцп -П 12345 ~ /backup/ рсинц-`цат ~ /backup/ тиме.ткт`.лог геек[email protected]: /home/geek2/files/ `цат ~ /backup/ тиме.ткт` / рсинц-`цат ~ /backup/ тиме.ткт`.лог

Користимообезбедите копију на порту 12345 да бисте преузели дневник рсинц и поставили га у одговарајући директоријум.Да бисте изабрали тачну датотеку дневника и осигурали да се заврши на правом мјесту, датотека тиме.ткт мора бити референцирана помоћу команде мачке.Ако се питате зашто смо одлучили да мачемо тиме.ткт уместо да користимо команду датума, то је зато што се доста времена могло појавити док је команда рсинц била покренута, како бисмо били сигурни да имамо право вријеме, ми смо само мачкатекстуални документ који смо направили раније.

Аутоматизација

Користите Црон на Линук или Таск Сцхедулер на Виндовсу да бисте аутоматизовали рсинц скрипту.Једна ствар на коју морате бити опрезни јесте да проверите да ли завршавате све тренутно рсинц процесе пре него што наставите са новим.Изгледа да планер задатака аутоматски затвара све покренуте инстанце, али за Линук морате бити мало креативнији.

Већина Линук дистрибуција може да користи команду пкилл, зато само обавезно додајте следеће на почетак рсинц скрипте:

пкилл -9 рсинц

Шифрирање

Нисмо, још нисмо готови.Коначно имамо фантастично( и бесплатно!) Бацкуп решење на месту, али све наше датотеке су и даље подложне крађи.Надамо се да ћете подупирати своје датотеке на неколку месту на стотине миља далеко.Без обзира колико је сигурно да је удаљено место, крађа и хакирање увек могу бити проблеми.

У нашим примјерима, претворили смо све наше рсинц промет преко ССХ-а, тако да то значи да су сви наши фајлови шифрирани док су у транзиту до одредишта.Међутим, морамо осигурати да је одредиште исто тако сигурно.Имајте на уму да рсинц само шифрира ваше податке у току преноса, али су датотеке отворене када дођу до одредишта.

Једна од најбољих функција рсинц-а је то што преноси само промјене у свакој датотеци.Ако имате све своје датотеке шифроване и направите једну мању промјену, цела датотека ће морати бити поново пренета као резултат шифрирања која потпуно рандомизира све податке након сваке промјене.

Због тога је најбоље или најлакше користити неку врсту шифровања диска, као што су БитЛоцкер фор Виндовс или дм-црипт за Линук.На тај начин, ваши подаци су заштићени у случају крађе, али се датотеке могу пренијети помоћу рсинц-а и ваше шифрирање неће ометати његове перформансе.На располагању су и друге опције које раде слично рсинц-у или чак имплементирају неки од њих, као што је Дуплицити, али им недостаје неке од карактеристика које рсинц нуди.

Након што сте подесили сигурносне копије снимака на оффсите локацији и шифрирали своје изворне и одредишне чврсте дискове, дајте себи потез на задњој страни за савладавање рсинц-а и имплементацију најсигурнијег рјешења за бацкуп података.