Rsync

Rsync утиліта для синхронізації файлів і резервного копіювання, що дозволяє мінімізувати трафік за рахунок інкрементального копіювання змін. Як транспорт можуть бути використані ssh, rsh або власний протокол rsync. Підтримується організація роботи анонімних rsync-серверів, оптимально відповідних для забезпечення синхронізації дзеркал. Важливою відмінністю rsync від багатьох інших програм/протоколів є те, що дзеркалювання здійснюється одним потоком в кожному напрямку (а не по одному або кілька потоків на кожен файл). rsync може копіювати або відображати вміст теки і копіювати файли, опціонально використовуючи стиснення і рекурсію.

rsync
Тип синхронізація даних, резервне копіювання
Автор(и) Andrew Tridgell, Paul Mackerras
Розробник Wayne Davison
Перший випуск 19 червня 1996[1]
Стабільний випуск 3.1.2 (21 грудня 2015 (2015-12-21))
Репозиторій git.samba.org/rsync.git
Платформа Unix-подібні, Windows
Операційна система UNIX-подібні операційні системи
Мова програмування C
Стан розробки активний
Ліцензія GNU GPLv3
Вебсайт rsync.samba.org

rsyncd демон, який реалізує протокол rsync. За замовчуванням використовує TCP порт 873.

Випущений під ліцензією GNU GPL, rsync є вільним програмним забезпеченням.

Алгоритм

Утиліта rsync використовує алгоритм, розроблений австралійським програмістом Ендрю Триджеллом, для ефективної передачі структур (наприклад, файлів) по комунікаційним каналам в тому випадку, коли приймаючий комп'ютер вже має відмінну версію цієї структури. Приймаючий комп'ютер розділяє свою копію файлу на неперетинні шматки фіксованого розміру S, і обчислює контрольну суму для кожного шматка: MD4-хеш і слабший кільцевий хеш (rolling checksum), і відправляє їх серверу, з яким синхронізується.

Сервер, з яким синхронізуються, обчислює контрольні суми для кожного шматочка розміру S у своїй версії файлу, в тому числі перетинні шматки. Це може бути ефективно підраховано через особливі властивості кільцевого хешу (rolling checksum): якщо кільцевий хеш байтів від n до n+S-1 дорівнює R, то кільцевий хеш байтів від n+1 до n+S може бути обчислений, виходячи з R, байта n і байти n+S без необхідності враховувати байти, що лежать всередині цього інтервалу. Таким чином, якщо вже обчислений кільцевий хеш байтів 1—25, то для підрахунку кільцевого хешу байтів 2—26 використовується попередня контрольна сума і байти 1 і 26.

Застосування

rsync була створена як заміна для rcp і scp. Одним з перших застосувань rsync стало дзеркалювання або резервне копіювання клієнтських Unix-систем на центральний Unix-сервер з використанням rsync/ssh і звичайного облікового запису Unix. З планувальником завдань, таким як cron, можливо організувати автоматизоване засноване на rsync дзеркалювання криптографічно захищеним каналом між багатьма комп'ютерами та центральним сервером.

Виноски

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.