wtorek, 11 grudnia 2012

Rsync zdalna synchronizacja plików

Wysyłanie dużych porcji danych, szczególnie tych  przy wykonywaniu backup'ów, które dziś nie wynoszą 100MB, a 100GB. Dlatego też zamiast biegać z dyskami przenośnymi, czy wysyłać za każdym razem wszystko przez sieć lepiej zrobić to raz a dobrze, a później niech będzie to czynność automatyczna. dlatego też warto użyć Rsync.


Dane wysyłane są tylko raz, przy ewentualnych zmianach wysyłane są jedynie te dane które zostały zmienione.


Rsync jest małym programem waży ledwie 600KB, jednak jest on niezwykle przydatny, w połączeniu z prostym skryptem bash pozwoli zautomatyzować codzienne prace przy systemie. Oczywiście dobrze mieć drugi komputer lub inne urządzenie(dysk przenośny) które posiada jakiś adres, po którym można go zidentyfikować.

Dla przykładu chcemy wysłać na zapasową maszynę kopie całej naszej bazy znajdującej się w /var/lib/mysql/ chcemy wysłać na nasz zapasowy serwer 192.168.1.105.

Na początek musimy zainstalować rsync wydajemy polecenie:

apt-get install rsync


rsync -avz /var/lib/mysql/ 192.168.1.105:backup/mysql/


Warto napisać kilka słów o dostępnych przełącznikach:

# -a - archiwum,
# -r - kopiowanie podkatalogów,
# -l - kopiowanie dowiązań symbolicznych linków,
# -p - zachowanie uprawnień plików,
# -t - zachowanie czasów plików źródłowych,
# -g - zachowanie uprawnień grupowych plików,
# -o - zachowanie prawa własności(dostępny dla root'a),
# -D - zachowanie plików urządzenia pliku źródłowego(tylko root),
# -v - pokazanie plików które zostały przesłane,
# --delete - usunięcie plików z katalogu docelowego

Jest to średnio wygodny sposób, ponieważ nie jest to automatyczna metoda wysłania plików na backup.


Można przy pomocy wygenerowanego klucza RSA  i  połączenia SSH zautomatyzować proces wysyłania plików gdzie tylko będziemy chcieli.




Brak komentarzy:

Prześlij komentarz