Водич за почетнике за синхронизацију података са Рсинц
Рсинц протокол може бити прилично једноставан за употребу код обичних бацкуп / синкронизацијских послова, али неке од напреднијих функција могу вас изненадити. У овом чланку ћемо показати како чак и највећи сакупљачи података и ентузијасти за прављење резервних копија могу користити рсинц као јединствено рјешење за све њихове потребе за редунданцијом података.
Упозорење: Адванцед Геекс Онли
Ако седите и размишљате о томе "Шта је то рсинц?" Или "Користим само рсинц за заиста једноставне задатке", можда ћете желети да погледате наш претходни чланак о томе како да користите рсинц за бацкуп ваших података на Линуку, што даје увод у рсинц, води вас кроз инсталацију и приказује његове основне функције. Када једном схватите како се користи рсинц (искрено, то није тако сложено) и задовољни сте са Линук терминалом, спремни сте да пређете на овај напредни водич.
Покретање рсинц-а на Виндовс-у
Прво, хајде да нађемо наше Виндовс читаче на истој страни као и наши Линук гуруи. Иако је рсинц направљен да ради на системима сличним Унику, нема разлога да не бисте могли да га користите једнако лако у оперативном систему Виндовс. Цигвин производи диван Линук АПИ који можемо користити да покренемо рсинц, тако да пређете на њихов сајт и преузмете 32-битну или 64-битну верзију, у зависности од рачунара.
Инсталација је једноставна; све опције можете да задржите на њиховим подразумеваним вредностима док не дођете до екрана „Изаберите пакете“.
Сада треба да урадите исте кораке за Вим и ССХ, али пакети ће изгледати мало другачије када их изаберете, па ево неколико снимака екрана:
Инсталирање Вим-а:
Инсталирање ССХ-а:
Након што сте изабрали ова три пакета, наставите да кликнете следећи док не завршите инсталацију. Затим можете отворити Цигвин тако што ћете кликнути на икону коју је инсталацијски програм поставио на вашој радној површини.
рсинц Команде: Једноставно до напредне
Сада када су корисници Виндовса на истој страници, хајде да погледамо једноставну рсинц команду и да покажемо како коришћење неких напредних прекидача може брзо да учини комплексним.
Рецимо да имате хрпу датотека које је потребно подржати - ко не ради ових дана? Повежете преносни чврсти диск тако да можете да направите резервне копије датотека на рачунару и издате следећу команду:
рсинц -а / хоме / геек / фајлови / / мнт / усб / фајлови /
Или, како би изгледало на Виндовс рачунару са Цигвин-ом:
рсинц -а / цигдриве / ц / фајлови / / цигдриве / е / фајлови /
Прилично једноставно, и у том тренутку заиста нема потребе да користите рсинц, јер можете једноставно повући и испустити датотеке. Међутим, ако ваш други чврсти диск већ има неке од датотека и само треба ажуриране верзије плус датотеке које су креиране од последње синхронизације, ова команда је згодна јер шаље нове податке само на чврсти диск. Са великим фајловима, а посебно преношењем датотека преко интернета, то је велика ствар.
Прављење резервне копије датотека на спољни чврсти диск, а затим држање чврстог диска на истој локацији као и рачунар, је веома лоша идеја, па погледајмо шта је потребно за почетак слања датотека путем интернета на други рачунар ( један који сте изнајмили, члан породице, итд).
рсинц -ав - обришите -е 'ссх -п 12345' / хоме / геек / филес / геек[email protected]: / хоме / геек2 / филес /
Горња команда ће слати ваше датотеке на други рачунар са ИП адресом 10.1.1.1. То би избрисало непотребне датотеке са одредишта које више не постоје у изворном директоријуму, излазне датотеке које се преносе тако да имате идеју о томе шта се дешава, а тунел рсинц кроз ССХ на порту 12345.
Тхе -а -в -е - обриши
прекидачи су неке од најосновнијих и најчешће коришћених; већ бисте требали знати много о њима ако читате овај водич. Хајде да пређемо на неке друге прекидаче који се понекад игноришу али су невероватно корисни:
--напредак
- Овај прекидач нам омогућава да видимо напредак преноса сваке датотеке. То је посебно корисно када преносите велике датотеке преко интернета, али може испоручити бесмислену количину информација када само преносите мале датотеке преко брзе мреже.
Наредба рсинц са --напредак
прекидач као резервна копија је у току:
--парцијално
- Ово је још један прекидач који је посебно користан када преносите велике датотеке преко интернета. Ако се рсинц прекине из било ког разлога у току преноса датотека, делимично пренесена датотека се чува у одредишном директоријуму и пренос се наставља тамо где је прекинут када се поново изврши рсинц команда. Када преносите велике датотеке преко интернета (рецимо, неколико гигабајта), нема ништа горе од тога да имате неколико секунди прекида везе са интернетом, плавог екрана или људске грешке да бисте пребацили пренос датотека и морали поново да почнете изнова.
-П
- овај прекидач се комбинира --напредак
и --парцијално
, зато га користите уместо тога и то ће учинити вашу рсинц команду мало уреднијом.
-з
или --цомпресс
- Овим прекидачем рсинц ће компримовати податке о датотекама док се преноси, смањујући количину података које треба послати на одредиште. То је заправо прилично уобичајен прекидач, али је далеко од суштинске важности, само што вам заиста доноси корист од трансфера између спорих веза, и не ради ништа за следеће типове датотека: 7з, ави, бз2, деб, г, з исо, јпег, јпг, мов, мп3, мп4, огг, рпм, тбз, тгз, з, зип.
-х
или --људски читљив
- Ако користите --напредак
прекидач, свакако ћете желети да користите и ову. То јест, осим ако не желите да претварате бајтове у мегабајте у лету. Тхе -х
прекидач претвара све излазне бројеве у формат који је лако читљив, тако да заправо можете смислити количину података који се преносе.
-н
или --дри-рун
- Овај прекидач је од суштинског значаја да знате када први пут пишете рсинц скрипт и тестирате га. Он изводи пробну вожњу, али заправо не прави никакве измјене - потенцијалне промјене се и даље приказују као нормалне, тако да можете читати све и провјерити да ли изгледа добро прије него што окренете сценариј у производњу.
-Р
или --у односу
- Овај прекидач се мора користити ако одредишни директориј већ не постоји. Користићемо ову опцију касније у овом водичу тако да можемо да направимо директоријуме на циљном рачунару са временским ознакама у именима фолдера.
--искључи
- Овај прекидач се користи за повезивање на листу изузетака која садржи путање директоријума које не желите да резервишете. Потребна је обична текстуална датотека са директоријумом или путањом датотеке на свакој линији.
--инцлуде-фром
- Слично --искључи
, али се повезује са датотеком која садржи директоријуме и путање датотека које желите да направите.
--статс
- Уопште није важан прекидач на било који начин, али ако сте системски администратор, може бити корисно сазнати детаљне статистике сваке резервне копије, само да бисте могли да пратите количину саобраћаја који се шаље преко мреже и таквих.
--лог фајл
- Ово вам омогућава да пошаљете рсинц излаз у лог датотеку. Ми то свакако препоручујемо за аутоматске сигурносне копије у којима нисте сами да бисте прочитали излаз. У слободно вријеме увијек пријавите датотеке дневника како бисте били сигурни да све ради исправно. Такође, то је кључни прекидач за употребу сисадмина, тако да се не питате како су ваше сигурносне копије пропале док сте напустили приправника.
Хајде да погледамо нашу рсинц команду сада када смо додали још неколико прекидача:
рсинц -авзхП --делете --статс --лог-филе = / хоме / геек / рсинцлогс / бацкуп.лог --екцлуде-фром '/хоме/геек/екцлуде.ткт' -е 'ссх -п 12345' / хоме / геек / филес / геек[email protected]: / хоме / геек2 / филес /
Команда је још увек прилично једноставна, али још увек нисмо направили пристојно решење за прављење резервних копија. Иако су наше датотеке сада на две различите физичке локације, ова резерва не штити нас од једног од главних узрока губитка података: људска грешка.
Снапсхот Бацкупс
Ако случајно избришете датотеку, вирус оштећује било који од ваших датотека, или се нешто друго дешава при чему се ваше датотеке непожељно мијењају, а затим покрећете рсинц скрипту за сигурносно копирање, а ваши сигурносни подаци се преписују са непожељним промјенама. Када се то догоди (не ако, али када), ваше решење за прављење резервних копија није учинило ништа да вас заштити од губитка података.
Творац рсинц је то схватио и додао --бацкуп
и --бацкуп-дир
аргументи тако да корисници могу покретати диференцијалне резервне копије. Први пример на сајту рсинц-а приказује скрипту где се пуна резервна копија покреће сваких седам дана, а затим се измене тих датотека свакодневно чувају у одвојеним директоријумима. Проблем са овом методом је у томе што их морате опоравити седам пута. Штавише, већина геекова изводи своје сигурносне копије неколико пута дневно, тако да у сваком тренутку можете лако имати 20+ различитих резервних директорија. Не само да је опоравак ваших датотека сада болан, већ чак и само прегледавање ваших сигурносних копија података може бити изузетно дуготрајно - морате знати задњи пут када је датотека промијењена како бисте пронашли њену најновију копију. Поврх свега тога, неефикасно је покретање само недељних (или чак ређе у неким случајевима) инкременталних резервних копија.
Сигурносне копије снимака на спашавање! Резервне копије снимака су само инкременталне резервне копије, али оне користе хардлинке да задрже структуру фајла оригиналног извора. Можда ће вам бити тешко да вам прво преокренете главу, па да погледамо пример.
Претварајте се да имамо покренута резервна скрипта која аутоматски чува наше податке свака два сата. Кад год рсинц то уради, именује сваку резервну копију у формату: Бацкуп-монтх-даи-иеар-тиме.
Дакле, на крају типичног дана, имали бисмо листу мапа у нашем одредишном директоријуму на овај начин:
Када пређете било који од тих директоријума, видели бисте сваку датотеку из изворног директоријума тачно онако како је била у то време. Ипак, не би било дупликата у било која два директоријума. рсинц ово постиже коришћењем хардлинкинг-а кроз --линк-дест = ДИР
расправа.
Наравно, да бисмо имали ове лијепо и уредно именоване именике, мораћемо мало побољшати рсинц скрипту. Хајде да погледамо шта је потребно да би се постигло овакво решење за бацкуп, а онда ћемо детаљније објаснити скрипту:
#! / бин / басх
#цопи олд тиме.ткт у тиме2.ткт
иес | цп ~ / бацкуп / тиме.ткт ~ / бацкуп / тиме2.ткт
#оверврите олд тиме.ткт фајл са новим временом
ецхо 'дате + ”% Ф-% И% п”'> ~ / бацкуп / тиме.ткт
#маке лог датотеку
ецхо “”> ~ / бацкуп / рсинц-'дате + '% Ф-% И% п' '.
#рсинц цомманд
рсинц -авзхПР --цхмод = Ду = рвк, Дго = рк, Фу = рв, Фго = р - обриши - статс --лог-филе = ~ / бацкуп / рсинц-'дате + '% Ф- п ”'. лог --екцлуде-фром' ~ / екцлуде.ткт '--линк-дест = / хоме / геек2 / филес /' цат ~ / бацкуп / тиме2.ткт '-е' ссх -п 12345 '/ хоме / геек / филес / геек[email protected]: / хоме / геек2 / филес / 'дате +'% Ф-% И% п '' /
# не заборавите да скопирате датотеку дневника и ставите је са резервном копијом
сцп -П 12345 ~ / бацкуп / рсинц-'цат ~ / бацкуп / тиме.ткт'.лог геек[email protected]: / хоме / геек2 / филес / 'цат ~ / бацкуп / тиме.ткт' / рсинц-'цат ~ / бацкуп / тиме.ткт'.лог
То би био типичан рсинц скрипт. У случају да смо те негде изгубили, хајде да га сецирамо један по један:
Прва линија наше скрипте копира садржај тиме.ткт у тиме2.ткт. Да цеви су да потврдимо да желимо да препишемо фајл. Затим узмемо тренутно време и ставимо га у тиме.ткт. Ове датотеке ће касније бити корисне.
У следећем реду налази се рсинц лог датотека, именовањем рсинц-дате.лог (где је датум стварни датум и време).
Сада, комплексна рсинц наредба о којој смо вас упозорили:
-авзхПР, -е, --делете, --статс, --лог-филе, --екцлуде-фром, --линк-дест
- Само прекидачи о којима смо раније разговарали; померајте се нагоре ако вам треба освежавање.
--цхмод = Ду = рвк, Дго = рк, Фу = рв, Фго = р
- Ово су дозволе за одредишни директоријум. Будући да правимо овај директоријум у средини наше рсинц скрипте, морамо да наведемо дозволе да би наш корисник могао да пише датотеке на њега.
Употреба команди за датум и мачку
Прећи ћемо преко сваке употребе команди дате и цат унутар рсинц команде, редоследом којим се појављују. Напомена: свјесни смо да постоје и други начини за остваривање ове функционалности, посебно уз кориштење декларирања варијабли, али за потребе овог водича, одлучили смо да користимо овај начин.
Датотека дневника је наведена као:
~ / бацкуп / рсинц-'дате + '% Ф-% И% п' '
Алтернативно, могли смо да је наведемо као:
~ / бацкуп / рсинц-'цат ~ / бацкуп / тиме.ткт '
У сваком случају --лог фајл
Наредба би требала бити у могућности да пронађе претходно креирани датирани дневник и да га напише.
Датотека одредишта везе је наведена као:
--линк-дест = / хоме / геек2 / филес / 'цат ~ / бацкуп / тиме2.ткт'
То значи да --линк-дест
команди је дат директоријум претходне резервне копије. Ако изводимо резервне копије свака два сата, а то је 16:00 у време када смо водили овај скрипт, онда --линк-дест
наредба тражи директориј креиран у 14:00 и преноси само податке који су се промијенили од тада (ако их има).
Да поновимо, тиме.ткт се копира у тиме2.ткт на почетку скрипте, тако да --линк-дест
наредба може референцирати то вријеме касније.
Одредишни директоријум је наведен као:
геек[email protected]: / хоме / геек2 / филес / 'дате +'% Ф-% И% п ''
Ова команда једноставно ставља изворне датотеке у директоријум који има наслов тренутног датума и времена.
На крају, проверавамо да ли је копија дневника смештена у резервну копију.
сцп -П 12345 ~ / бацкуп / рсинц-'цат ~ / бацкуп / тиме.ткт'.лог геек[email protected]: / хоме / геек2 / филес / 'цат ~ / бацкуп / тиме.ткт' / рсинц-'цат ~ / бацкуп / тиме.ткт'.лог
Користимо сигурну копију на порту 12345 да узмемо рсинц дневник и ставимо га у одговарајући директоријум. Да бисте изабрали исправну датотеку дневника и проверили да ли се она налази на правом месту, датотека тиме.ткт мора бити упућена преко команде цат. Ако се питате зашто смо се одлучили за цат тиме.ткт уместо да користимо само команду дате, то је зато што се много времена могло догодити док је рсинц наредба била покренута, тако да бисмо били сигурни да имамо право вријеме, ми само мачемо текстуални документ који смо раније направили.
Аутоматион
Користите Црон на Линуку или Таск Сцхедулер на Виндовсу да аутоматизујете рсинц скрипту. Једна ствар коју морате пазити јесте да се побринете да завршите све тренутно покренуте рсинц процесе пре него што наставите са новим. Чини се да планер задатака аутоматски затвара све већ покренуте инстанце, али за Линук морате бити мало креативнији.
Већина Линук дистрибуција може да користи команду пкилл, тако да на почетак рсинц скрипте додајте следеће:
пкилл -9 рсинц
Шифровање
Не, још нисмо завршили. Коначно имамо фантастично (и бесплатно!) Решење за прављење резервних копија, али све наше датотеке и даље су подложне крађи. Надамо се да ћете копирати своје датотеке на неко мјесто удаљено стотинама километара. Без обзира на то колико је сигурно удаљено место, крађа и хаковање могу увек бити проблеми.
У нашим примјерима, тунелирали смо сав наш рсинц промет кроз ССХ, тако да то значи да су све наше датотеке шифриране док су у транзиту до одредишта. Међутим, морамо бити сигурни да је дестинација једнако сигурна. Имајте на уму да рсинц шифрира само ваше податке док се преносе, али датотеке су широм отворене када стигну на своје одредиште.
Једна од најбољих особина рсинц-а је да преноси само промјене у свакој датотеци. Ако су све ваше датотеке шифроване и направите једну мању промену, цео фајл ће морати да се поново пренесе као резултат енкрипције која потпуно рандомизује све податке након било какве промене.
Због тога је најбоље / најлакше користити неку врсту енкрипције диска, као што је БитЛоцкер за Виндовс или дм-црипт за Линук. На тај начин, ваши подаци су заштићени у случају крађе, али датотеке се могу преносити помоћу рсинц-а и ваше шифровање неће ометати његову изведбу. Постоје и друге опције које раде слично рсинц-у или чак имплементирају неки његов облик, као што је Дуплицити, али им недостају неке од могућности које рсинц може да понуди..
Након што сте подесили резервне копије снимака на некој другој локацији и шифровали изворне и одредишне хард дискове, дајте себи потез на леђа да бисте овладали рсинц-ом и применили најсигурније решење за бацкуп података.