Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: d3v1ous в Apr 08, 2010, 11:03



Титла: RSync remote sync problem
Публикувано от: d3v1ous в Apr 08, 2010, 11:03
Здравейте,

правя някакви експерименти с rsync. Като за начало искам да разкажа какво трябва да постигна.

Mirroring на две директории на два различни сървъра. Ако на сървъра A съдържанието се промени, файл бъде изтрит същото да се случи и на сървър Б.

В момента тествам локално и това нещо не ми се получава :)..

Код:
root@nighthawk:~# ls
backup-26.03.2010  backup-main  eGroupware-1.6.003.zip  egw_access_log.MYD  nagmin-2.2.0.tar.gz                               webmin_1.510_all.deb
backup-30.03.2010  CISCO5.log   egw_access_log.frm      egw_access_log.MYI  virtualbox-3.1_3.1.6-59338_Debian_lenny_i386.deb  wiki.zip
root@nighthawk:~#

Код:
backup-26.03.2010  backup-main  eGroupware-1.6.003.zip  egw_access_log.MYD  lilac-1.0.3.tar.gz   virtualbox-3.1_3.1.6-59338_Debian_lenny_i386.deb  wiki.zip
backup-30.03.2010  CISCO5.log   egw_access_log.frm      egw_access_log.MYI  nagmin-2.2.0.tar.gz  webmin_1.510_all.deb
root@nighthawk:~#

Ползвам това:

Код:
root@nighthawk:~# rsync -rv * --progress --delete --force /home/test/

В момента в /home/test има един файл lilac-1.0.3.tar.gz, който нарочно изтрих от локалната директория и се надявах, че като изпълня rsync той ще го изтрие и в destination папката.

Къде бъркам???


Титла: Re: RSync remote sync problem
Публикувано от: Naka в Apr 08, 2010, 13:04
Първо понеже са много опциите и различни, направи си един скрипт
кръсти го например my_rsync.sh и вътре пиши каквото трябва

Това е моят скрипт. той копира локалната папка /home/snimki/top
на отдалечен сървер 192.168.1.2 в директория /root/backup-rsync-snimki
Код:
rsync -av --delete --rsh=/usr/bin/ssh --progress \
/home/snimki/top root@192.168.1.2:/root/backup-rsync-snimki

като резултат в /root/backup-rsync-snimki ще се появи синкронизирана директория top

Забележи че /home/snimki/top е без черта отзад! това означава цялата top да се синхронизира заедно с самата top.
с черта отзад вече е друго /home/snimki/top/

така няма да можеш да синхронизираш правилно БД. защото файловете и се променят непрекъснато. За да няма проблеми трябва преди да пуснеш rsync да изпълниш FLUSH TABLES WITH READ LOCK;
След rsync-а пишеш UNLOCK TABLES; (или излизаш от терминала)






Титла: Re: RSync remote sync problem
Публикувано от: d3v1ous в Apr 09, 2010, 11:44
Добре, да го кажем така.

Код:
rsync /home/www/wiki/ "d3v1ous@warbox.co.cc:/home/d3v1ous/d3v1ous.info/wiki" --times --links --recursive --hard-links -e ssh --delete

С този ред папката ми се синхронизира 1/1. Дори да изтрия файл в основната директория, тя ще бъде изтрита и от remote локацията.

Въпроса ми е, как бихме могли да направим двете папки да бъдат взаимно заменяеми.

Т.е. от сървъра да реплирирам на клиента и от сървъра да извличам данните от клиента. (А защо е нужно това) ... защото имам Round Robin запис на wiki.d3v1ous.info и не знам на коя от двете локации се връзвам, на клиента или на сървъра.