Відповіді:
Я думаю, що велика різниця полягає в тому, що якщо ви використовуєте rsyncdна серверному кінці, а не rsyncнад ssh, сервер вже знає, що він має, тому складання списків файлів для визначення того, що потрібно перенести, набагато простіше. Це не матиме значення, якщо ви просто натискаєте на кілька файлів, але якщо ви робите, наприклад, доступ до CPAN через rsync, вам не потрібно буде створювати список файлів на стороні джерела кожен час.
Це старе питання, але є ще одна дуже вагома причина використання rsyncв демон-режимі порівняно з ssh:
У мене є один 10 ТБ NAS, резервного копіювання до іншого 10 ТБ NAS, а обмеження на шифрування лише для тунелю SSH є обмежуючим фактором для передачі. Обидва NAS мають досить низький потужність 1,8 ГГц Intel Atoms, і навіть при більш легких крипто-варіантах для ssh (наприклад, ssh -c arcfourпереданих як ssh-дзвінок до rsync), накладні витрати на шифрування все ще приводять до кращого 200-300 Мбіт / с у гігабітній мережі Ethernet.
Використання демона rsync на одному кінці видаляє криптовалюту та досягає передачі> 800 Мбіт / с для великих, суміжних файлів.
ssh -c arcfourз'єднання, яке я використовував.
Я не думаю, що порівняння запуску rsyncd з rsync через SSH має багато сенсу. Зазвичай вони використовуються для абсолютно різних речей.
rsync over ssh зазвичай використовується для резервного копіювання або синхронізації серверів через Інтернет. rsyncd зазвичай використовується для таких речей, як дзеркала програмного забезпечення, тому має більше сенсу порівнювати rsyncd із звичайним дзеркалом HTTP або FTP або навіть з бітторент.
Існує також програмне забезпечення типу zsync, яке дозволяє отримати багато переваг rsync під час використання стандартного HTTP-сервера
Функція rsyncd- запускати на сервері та відповідати на (віддалені) rsyncзапити.
(коли ми кажемо, що rsyncdмаємо на увазі rsyncбіг демона, а коли ми кажемо «віддалений», ми маємо на увазі віддалений з точки зору роботи машини rsyncd)
Обидва використали ssh для того, щоб безпечно розмовляти між собою.
Це насправді не питання використання того чи іншого, хоча, якщо rsyncвін використовується для копіювання файлів і каталогів на одній машині , я не думаю, що він повинен працювати як демон.
Я думаю, що ця rsyncсторінка пояснює це.
rsyncd (rsyncd з демоном) використовує порт 873 за замовчуванням.
Для цього буде використаний нативний протокол rsync, але нічого не шифрується. Він призначений лише для локальних або надійних мереж.
Якщо ви хочете захистити, завжди потрібно використовувати rsync або rsyncd через SSH, всі ваші передачі даних будуть введені протоколом ssh.