<Попередній | зміст | Наступна>
Використання rsync через мережу
Одна із справжніх красунь с rsync полягає в тому, що його можна використовувати для копіювання файлів через мережу. Зрештою, «р» у rsync означає «дистанційний». Віддалене копіювання можна здійснити одним із двох способів. Перший спосіб - це з іншою системою, яка має rsync встановлено разом із програмою віддаленої оболонки, як-от SSH. Скажімо, у нашій локальній мережі була інша система з a
багато вільного місця на жорсткому диску, і ми хотіли виконати нашу операцію резервного копіювання за допомогою віддаленої системи замість зовнішнього диска. Припустимо, що в ньому вже є каталог з іменем /резервна копія куди ми могли б доставити наші файли, ми могли б зробити це:
[me@linuxbox ~]$ sudo rsync -av --delete --rsh=ssh /etc /home
/usr/local remote-sys:/backup
[me@linuxbox ~]$ sudo rsync -av --delete --rsh=ssh /etc /home
/usr/local remote-sys:/backup
Ми внесли дві зміни до нашої команди, щоб полегшити мережеве копіювання. Спочатку ми додали
Опція --rsh=ssh, яка вказує rsync використовувати програму ssh як віддалену оболонку. Таким чином, ми змогли використовувати зашифрований тунель ssh для безпечної передачі даних з локальної системи на віддалений хост. По-друге, ми вказали віддалений хост, додавши його назву (у цьому випадку віддалений хост називається remote-sys) до назви шляху призначення.
Другий спосіб rsync можна використовувати для синхронізації файлів через мережу за допомогою сервер rysnc. rsync можна налаштувати на запуск як демон і прослуховування вхідних запитів на синхронізацію. Це часто робиться, щоб дозволити дзеркальне відображення віддаленої системи. Наприклад, Red Hat Software підтримує велике сховище програмних пакетів, які розробляються для свого дистрибутива Fedora. Тестувальникам програмного забезпечення корисно відображати цю колекцію під час фази тестування циклу випуску дистрибутива. Оскільки файли в сховищі змінюються часто (часто більше одного разу на день), бажано підтримувати локальне дзеркало шляхом періодичної синхронізації, а не шляхом масового копіювання сховища. Одне з цих сховищ зберігається в Georgia Tech; ми могли б віддзеркалити його, використовуючи нашу локальну копію rsync і їхній сервер rsync так:
[me@linuxbox ~]$ mkdir fedora-devel
[me@linuxbox ~]$ rsync -av --видалити rsync://rsync.gtlib.gatech.edu/fe dora-linux-core/development/i386/os fedora-devel
[me@linuxbox ~]$ mkdir fedora-devel
[me@linuxbox ~]$ rsync -av --видалити rsync://rsync.gtlib.gatech.edu/fe dora-linux-core/development/i386/os fedora-devel
У цьому прикладі ми використовуємо URI віддаленого сервера rsync, який складається з протоколу (rsync://), а потім ім'я віддаленого хоста (rsync.gtlib.gatech.edu), після чого йде ім'я шляху до сховища.
документація