Цікава замітка, яка з якихось причин досі не потрапила до блогу. У прикладі налаштування rsync-сервера наводиться реальний файл конфігурації дзеркала репозиторіїв Debian, який я в минулому на громадських засадах тримав для користувачів Уфанета. Потім Уфанет підняв власне дзеркало репозиторіїв та й з'явилися дешеві безлімітні тарифи, тому моє дзеркало втратило сенс.

1. Налаштування rsync-сервера

Для установки rsync-сервера потрібно встановити пакет rsync:
# apt-get install rsync Потім прописати опції командного рядка, з якими запускатиметься rsync-сервер у файл /etc/default/rsync. У цьому файлі можна задати такі опції:

  • RSYNC_ENABLE- Налаштування автозапуску сервера під час завантаження операційної системи. Змінна приймає такі значення:
    • false- заборонити запуск сервера rsync,
    • true- запускати самостійний сервер rsync,
    • inetd- запускати сервер rsync за необхідності із супер-сервера inetd.
  • RSYNC_CONFIG_FILE- Вказує місце розташування файлу конфігурації. За промовчанням цей файл /etc/rsyncd.conf
  • RSYNC_OPTS- Встановлює додаткові опції командного рядка для запуску rsync-сервера.
    Наприклад, можна задати опцію "--address=123.45.67.89" (за замовчуванням - всі локальні адреси), щоб вказати на якій адресі слід приймати з'єднання та/або опцію "--port=8730" (за замовчуванням - 873), щоб вказати, на якому порту слід приймати з'єднання.
  • RSYNC_NICE- задає пріоритет процесу у планувальнику завдань.
Створити конфігураційний файл rsync-сервера /etc/rsync.conf:
uid = rsyncd gid = mirror max connections = 50 read only = yes list = yes syslog facility = local5 dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *. tbz *.rar *.mp3 use chroot = yes outgoing chmod = Fu = rw, g = rw, o =, Du = rwx, g = rx, o = path = /home/mirror/debian/ comment = Debian Lenny i386 and amd64 repository path = /home/mirror/debian-cd/ comment = Debian Lenny i386 and amd64 DVD images Опис вказаних опцій:
  • uid- ідентифікатор користувача, від імені якого працюватиме rsync-сервер,
  • gid- ідентифікатор групи, від імені якої працюватиме rsync-сервер,
  • max connections – максимальна кількість одночасних підключень до rsync-сервера. Усі підключення понад зазначений ліміт будуть відкинуті.
  • read only- дозволяти клієнтам лише читання,
  • list- Дозволяти клієнтам отримувати список файлів. Якщо заборонити перегляд списку файлів, клієнти зможуть отримати файл тільки знаючи його точне ім'я,
  • syslog facility- рівень налагоджувальних повідомлень для демона syslog,
  • dont compress- Вказує шаблони імен файлів, вміст яких не потрібно стискати під час передачі. Тут корисно вказати вже стислі файли, повторне стиснення яких не дасть ніякої вигоди, а лише витратить ресурси системи – це більшість аудіо-, відео-файлів, більшість графічних файлів, архіви.
  • use chroot- вказує, чи повинен rsync сервер з метою забезпечення більшої безпеки змінювати кореневий каталог на вказаний у path.
  • outgoing chmod- Задає права доступу до файлів, що віддаються. Оскільки протокол rsync дозволяє разом із вмістом файлів передавати права доступу до них та ідентифікатори власника та групи, можна задати особливі права доступу, які будуть замінювати реальні права доступу до файлу або каталогу під час його передачі через мережу.
У квадратних дужках задається ім'я секції. Кожна секція повинна мати свій параметр path. Додатково у ній може бути перевизначені значення глобальних опцій.

Після зміни опцій, якщо ваш rsync-сервер працюватиме в самостійному режимі, потрібно перезапустити його:
# /etc/init.d/rsync restart 2. Використання rsync-клієнта

Для встановлення rsync-клієнта потрібно встановити пакет rsync:
# apt-get install rsync Щоб розпочати копіювання з rsync-сервера, можна скористатися подібною командою:
$rsync -avv rsync:// [email protected]:873/debian/ debian/ Або простіше:
$ rsync -avv rsync://mirror.yandex.ru/debian/ debian/ rsync-клієнт може працювати не тільки з rsync-сервером, він може працювати і через ssh-підключення з тими машинами, де встановлений rsync:
$ rsync -avv user@computer:/home/mirror/debian/ debian/ При цьому він у порівнянні з командою scp матиме такі переваги:

  • не копіюватиме ті файли, тимчасова позначка про зміну яких збігається з тимчасовою міткою про зміну локальної копії файлу,
  • вміє докачувати недокачані фрагменти файлу,
  • при всьому цьому вміє перевіряти ідентичність файлів за допомогою хеш-функції, при необхідності докачуючи окремі блоки файлу, результат обчислення хеш-функції для яких відрізняється.
Також rsync можна використовувати для копіювання локальних файлів:
$ rsync -avv /home/mirror/debian/ debian/ У порівнянні з командою cp буде мати такі переваги:
  • не копіюватиме ті файли, тимчасова позначка про зміну яких збігається з тимчасовою міткою про зміну копії файлу,
  • вміє копіювати посилання, пристрої,
  • копіює права доступу до файлів,
  • при запуску від імені користувача root копіюватиме належність файлів користувачам та групам.
При копіюванні можна задавати шаблони включення та виключення файлів з процесу копіювання, є безліч інших можливостей.

При синхронізації на Samba-ресурс або файлову систему FAT може статися, що копіюються не тільки змінені файли, а половина всіх файлів плюс змінилися. Це з тим, що у файлової системі FAT історично під зберігання секунд відводилося лише 5 біт. У 5 бітах можна зберігати трохи більше 32 різних значень, тому секунди зберігаються із округленням до парного значення. Через це rsync може вирішити, що файл змінився, хоча різниця між відмітками часу двох файлів становить 1 секунду. Щоб rsync не звертав увагу на різницю за одну секунду, слід вказати йому додаткову опцію --modify-window=1:
$ rsync -avv --modify-window=1 /home/fileserv1/ /home/fileserv2/ За більш детальною інформацією по програмі rsync можна звернутися до системних сторінок посібника rsync(1) і rsync.dconf(5) або до їх перекладів на російська мова

Якщо у вас виникло бажання підтримувати робочі станіції в максимально «захищеному» стані, а також наскільки можна «автоматизувати» цей процес, то цей пост для вас.

Буде використовуватися:

Трохи batch файлу
Небагато Linux сервера
Небагато Windows Server 2008 R2 і Групових політик

Ідея в наступному - непомітно від самого користувача, щоб не порушувати його роботу, виконувати щотижневе копіювання його профілю, щоб виключити втрату даних, і зберігати його на сервері в максимально захищеному вигляді.

Для цього почнемо із клієнтської частини. Ми використовуємо shadow volume create - expand, щоб унеможливити проблему нечитання відкритих користувачем файлів, таких як Outlook PST, або документів. Нам знадобиться набір від Microsoft, який містить vshadow – це Volume Shadow Copy Service SDK 7.2, який можна безкоштовно завантажити з серверів Microsoft, http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=23490. Нам знадобляться vshadow.exe та vshadow.pdb файли з цього SDK. Увага - вони різні для 64-бітових, та 32-бітних систем.

64-bit - %PROGRAMFILES%\Microsoft\VSSSDK72\TestApps\vshadow\bin\obj-chk\amd64
32-bit - %PROGRAMFILES%\Microsoft\VSSSDK72\TestApps\vshadow\bin\release-xp

Також нам знадобиться набір файлів із cwrsync під Windows -

Після інсталяції їх можна буде знайти тут:

%PROGRAMFILES%\cwRsync\bin

Складаємо всі файли в одну папку, назвемо її для зручності "Backup", і починаємо створювати файл, який запускатиме цю "машину смерті" - за фактом, це простий batch файл, який відпрацьовуватиме всі дії. Назвемо його для зручності "backup.cmd"

Пишемо у файл:

(Невідома магія)

Setlocal
if NOT "%CALLBACK_SCRIPT%"=="" goto:IS_CALLBACK
set SOURCE_VOLUME=C:
set DESTINATION_VOLUME=O:
set CALLBACK_SCRIPT=%~dpnx0
set TEMP_GENERATED_SCRIPT=GeneratedVarsTempScript.cmd
%~dp0\vshadow.exe -nw -p -script=%TEMP_GENERATED_SCRIPT% -exec=%CALLBACK_SCRIPT% %SOURCE_VOLUME%
del /f %TEMP_GENERATED_SCRIPT%
goto:EOF
:IS_CALLBACK
setlocal
call %TEMP_GENERATED_SCRIPT%
%~dp0\vshadow.exe -el=%SHADOW_ID_1%,%DESTINATION_VOLUME%

Ця частина «макаронного коду» робить shadow volume copy з C: і підключає її на O:, який ми використовуватимемо для копіювання, а потім тим же скриптом приберемо. Тепер частина, яка відповідає за дії rsync:

(Невідома магія)

Setlocal
SET CWRSYNCHOME=C:\Backup\ (де папка з файлами rsync та vshadow)
SET CWOLDPATH=%PATH%
SET CYGWIN=nontsec
SET PATH=%CWRSYNCHOME%;%PATH%
SET HOME=З:\Backup\LOG\ (сюди зберігатимемо логи)
SET RSYNC_PASSWORD=(тут пароль, який встановлений на сервері rsync)
SET MY_NAME=%computername%

(Тепер вказуємо, що копіювати)

SET FS_SRC_HOME="/cygdrive/O/Users/" (використовуємо саме в такому форматі, вказуємо папку до "Users")
SET FS_SRC_BCK="/cygdrive/C/Backup/" (де файли rsync, щоб покласти їх разом із логами на бекап сервер)

Del /q З:\backup\log\*.log (праємо старі логи перед запуском)

(запускаємо)

Rsync -av --chmod=ug=rwx %FS_SRC_B2% backupusr@hostname::sbackupusr/%MY_NAME%
rsync -avhP --inplace --stats --del --modify-window=1 --log-file=%FS_SRC_BCK%DATA/backupwork.log --exclude-from=%FS_SRC_BCK%DATA/exclude %FS_SRC_HOME% backupusr@ hostname::sbackupusr/%MY_NAME%/snapshot/
rsync -av %FS_SRC_BCK% backupusr@hostname::sbackupusr/%MY_NAME%/snapshot/Backup/

Першою командою ми створюємо директорію на ім'я комп'ютера %computername%
Другою командою ми скопіюємо дані з тимчасово підключеного диска O:\Users, зі збереженням лог-файлу.
Третьою командою ми копіюємо всю папку C:\Backup, для збереження лога та самої програми.

Ось цей рядок «backupusr@hostname::sbackupusr» - вказує на користувача на стороні, що приймає, а також хост приймаючої сторони. (Буде розглянуто у другому псто).

Після цього нам необхідно відключити O: диск, тому що якщо ми цього не зробимо, наступного разу vshadow не зможе підключити туди копію, і копія буде робитися зі старого O:\ диска весь час, не дивлячись на те, що файли в папці користувача вже давно змінилися.

(Невідома магія)

SET HOME=%HOMEDRIVE%%HOMEPATH%

VSHADOW.EXE -ds=%SHADOW_ID_1%

Це все потрібно скласти в звичайний.cmd файл, як я вже вказував вище, зберегти його в папку Backup, де зберігаються файли rsync і vshadow, і запускати при необхідності. Працює на Windows Vista, Windows 7, Windows XP, 32 та 64-bit

PS: Звичайно, необхідно підняти приймаючу машину, в нашому випадку на базі *nix, і створити розділи, які будуть захищені true-crypt у разі крадіжки сервера. Так само в подальшому цю папку можна запакувати в msi інсталер для установки на всі робочі станції через Групові Політики і використовувати їх для створення Scheduled Tasks і закриття доступу в Backup папку для користувача. Але то вже інша історія.

Рішення для резервного копіювання, засноване на реалізації rsync для Windows, використовують популярну технологію синхронізації файлів і папок , що знаходяться в різних місцях мережі, з мінімальним обсягом даних, що передаються.

Технологія Rsync бекапу

Назва технології копіювання rsync (remote synchronization)- Дослівно: «віддалена синхронізація». Вона спочатку розроблялася як додаток для Unix. Існує аналог rsync для Windows, cwrsync. Отже, які ж переваги резервного копіювання rsync для бекапу та синхронізації у Windows?

Rsync приклади використання у Handy Backup Server Network

Версія допомагає виробляти бекап робочих станцій віддалено по мережі так, що необхідна лише одна людина – адміністратор мережі, який керує всім процесом резервного копіювання віддалено, не перериваючи роботи користувачів.

завантажити

Придбати!

Версія 8.0.4 від 10 липня 2019 року. 104 MB
Програма резервного копіювання Handy Backup. 27800 RUBза ліцензію

Handy Backup Network Server

За допомогою цієї версії програми Ви зможете керувати бекапом віддалених робочих станцій по мережі. Безкоштовний повнофункціональний пробний період – 30 днів!

Скажімо, у Вас є дві робочі станції у мережі, які ви хочете синхронізувати. Бекап за допомогою rsync для Windows дозволяє пересилати лише дані, що розрізняються в конкретних папках на двох машинах, значно заощаджуючи таким чином час роботи.

На перший погляд може здатися, що це звичайний інкрементальний або диференціальний бекап, проте, це, насправді, суттєво різні речі, оскільки стандартний бекап не вміє обчислювати, передавати і "приклеювати" лише різницю в даних, що синхронізуються, а завжди переписує файли при збігу імен.

Таким чином, мінімізується потік даних при синхронізації двох папок. Тому ми отримуємо також менший час обробки операції за інших рівних умов. Користуючись стандартним оборотом "Час-гроші", отримуємо, що в якомусь сенсі ми зменшуємо фінансові витрати на бекап за допомогою копіювання файлів Rsync.

Інкрементальний бекап за допомогою rsync у мережах Windows-Unix: за та проти

Давайте подивимося уважніше на програмний бекап за допомогою rsync. Звернімо увагу на найцікавіші ситуації. Припустимо, що у нас тепер змішана мережа Windows-Unix.

Грунтуючись на тому, що ми вже непогано засвоїли про rsync сервер, саму цю технологію та резервне копіювання за її допомогою, ми можемо вивести кілька чудових переваг: швидкий інкрементальний бекап та відновлення, скорочення використання оперативної пам'яті та ресурсів мережі. І вишенька на тортик: це саме той функціонал, який дозволяє виробляти Linux-бекап серверів і робочих станцій так само просто, як і з Windows.

Існує і низка можливих проблем використання rsync у Windows:

  • Невизначеність за допомогою 64-бітних серверних платформ;
  • Нестабільність у процесі тривалої обробки великого обсягу інформації;
  • Необхідність налаштування програми для кожного конкретного завдання.

Останній пункт можна було б автоматизувати, проте проблема полягає в тому, що немає універсальних рецептів налаштування для всіх серверів і всіх типів даних.

Таким чином, ми розуміємо, що, можливо, використання оригінальної утиліти rsync для Windows не врятує положення, однак, можна просто спробувати адаптувати алгоритм rsync для конкретної програми Windows.

Плани розширення технології Rsync Windows у програмі Handy Backup

В даний час розробники програмного забезпечення Handy Backup приділяють велику увагу технології копіювання Rsync, активно впроваджуючи її в такі прикладні операції, як:

В даний час команда розробників Handy Backup працює над застосуванням rsync для бекапупо мережі з кількох контрольних точок. Розумний функціонал нашої програми дозволить вам керувати віддаленими робочими станціями з практично будь-якої машини в мережі, якщо ви маєте права доступу (не забуваємо про безпеку!).

Розробники Handy Backup впровадили функціонал для бекапу Rsync Windows та Linuxкомп'ютерів і список можливостей постійно розширюється! А що, якби ви могли керувати усією мережею з мобільного пристрою Android? Або робити бекап картки пам'яті телефону як робочої станції вашої локальної мережі? Подобається ідея? Тоді вам сподобаються релізи Handy Backup, що працюють на алгоритмі rsync backup для Windows від Новософт.

У процесі створення кластера постало питання: чим можна забезпечити синхронізацію файлів і папок на окремих вузлах? Після недовгих пошуків усіляких готових рішень натрапив на відому утиліту, що працює під Unix – Rsync. У багатьох адміністраторів виникла потреба синхронізувати каталоги між Unix-Windows серверами. Так отримав життя проект cwRsynс. Суть цього проекту в тому, що утиліта Rsync запускається Windows за допомогою бібліотеки cygwin.

У моєму випадку можливість взаємодії з Unix серверами в перспективі дуже тішила. Також відгуки адмінів про роботу Rsync під Unix були дуже позитивними, і я вирішив спробувати.

У цій статті ми розглянемо як налаштовується синхронізація жорсткого диска за допомогою cwRsynс. Російськомовних статей по роботі з cwRsync я не знайшов - всі дружно копіюють чотири кроки по встановленню, і не стосуються роботи та налаштування. Основну масу інформації я черпав з http://rsync.samba.org, адже параметри запуску для Rsync та cwRsync залишаються однаковими.

p align="justify"> Принцип синхронізації за допомогою cwRsync полягає в наступному: на головному сервері (у нашому випадку Сервер № 1) запускається демон cwRsync при старті системи. У конфізі вказується до яких ресурсів надаватиметься доступ. Клієнт конфігурується другого сервера (Сервер№2). З певною періодичністю на другому сервері запускається клієнт, який з'єднується із сокетом першого сервера, після чого відбувається синхронізація. Взаємодія відбувається за локальними IP-адресами:

Приклад:Схема синхронізації cwRsync.

1. Встановлення cwRsync.
Для початку необхідно завантажити та встановити утиліту cwRsync. Установник можна завантажити звідси.

Потрібно вибрати останню версію. Перед встановленням переконайтеся, що сумісна з конфігаціями старої версії.
Нам необхідно встановити його на всі вузли кластеру. Процес установки дуже простий: всі значення можна залишити за замовчуванням. cwRsync встановити в c:\Program Files\cwRsync\.

Після встановлення можна виконати такі рекомендації:

Додати $CYGWIN_INSTALL_PATH/bin/у змінну оточення PATH
Панель управління -> Система -> Додатково -> Змінні оточення
Вирішити проблему з не-ascii символами. Тобто. потрібно з www.okisoft.co.jp/esc/utf8-cygwin/ завантажити файл cygwin.dll та замінити ним той, що йде в комплекті з cwRsync.
Для того, щоб файли з не-ascii смволами в імені нормально передавалися, додайте --iconv=. в опції виклику rsync.

У мене після встановлення проблем із кодуванням чи роботою не спостерігалося. Також далі у конфігуруванні я використав прямі шляхи. Тому рекомендації можна виконувати.

2. Робота з cwRsync на Сервер №1:
Для початку потрібно створити конфіг. файл. Створимо в c:\Program Files\cwRsync\bin\папки confі log. У папці conf створимо файл rsyncd.confнаступного змісту:

#### rsyncd.conf file #### uid = user_id gid = user_id use chroot = false # Даємо дозвіл використовувати всі диски а не тільки C. Якщо ми # встановимо в true, то rsync зможе звертатися тільки до диска С. hosts allow = 192.168.1.6 # Дозволяється звертатися тільки з Сервер № 2 # Мітка диска З path = /cygdrive/c/ drive read only = true #transfer logging = yes #### End of configuration file #### use chroot = yes – запуск rsync у chroot, для більшої безпеки; - Назва модуля; uid – повинен відповідати id власника каталогу, який ми збираємося записувати; path - повний шлях до каталогу, в який будемо записувати; list = no – не показувати секцію у лістингу; comment – ​​коментар; read only = false - Відкрити секцію на запис; hosts allow – дозволити доступ до секції push лише для певних адрес; auth users = push – дозволити доступ лише користувачеві push; secrets file – файл відповідності імені користувача певному паролю.

Примітка:

Мені так і не вдалося змусити обмінятися файлами клієнт із сервером, якщо вказати в path шлях до папки. Якщо вказати щось типу path = /cygdrive/c/backup/, клієнт завершить роботу помилкою, а в лозі з'являється: 2009/01/06 13:27:35 name lookup failed for 127.0.0.1: Unknown server error 2009/01/06 13:27:35 connect from UNKNOWN (12. 2009/01/06 13:27:35 rsync: chdir / failed: Немає такого файлу або directory (2)

Проте коли вказуєш ім'я папки в параметрах клієнта, то все працює.

"C:\Program Files\cwRsync\bin\rsync.exe" --config "C:\Program Files\cwRsync\bin\conf\rsyncd.conf" --daemon --log-file "C:\Program Files\ cwRsync\bin\log\rsyncservice.log" --address 192.168.1.5

Config rsyncd.conf – вказуємо, де знаходиться файл конфігурації. --daemon – запуск демона --log-file – включення ведення логу --address – вказуємо, яку слухати

Повний перелік можливих параметрів:

Daemon run as rsync daemon --address=ADDRESS bind to the specified address --bwlimit=KBPS limit I/O bandwidth; KBytes per second --config=FILE specify alternate rsyncd.conf file --no-detach , щоб не отримати від parent --port=PORT listen on alternate port number --log-file=FILE override the "log file" setting - -log-file-format=FMT перевірить "log format" setting --sockopts=OPTIONS specify custom TCP options -v, --verbose increase verbosity -4, --ipv4 prefer IPv4 -6, --ipv6 prefer IPv6 -h , --help show this help (якщо використовується -daemon)

Після запуску демона з'явиться вікно Windows Firewall та процес у менеджері завдань.

Windows Firewall:Блокування rsync демона.

Потрібно натиснути Unblock. Якщо все працює нормально, то потрібно додати запуск bat файлу у Планувальник Задач:

Планувальник завдань:Запуск демона cwRsync під час старту сервера.

Таким чином, сервер cwRsync запускатиметься при старті вузла.

3. Робота з cwRsync на Сервер №2:
Встановимо cwRsync на сервер №2. Створимо в c: Program Files cwRsync bin папки bat і log. У папці bat створимо наступний файл із ім'ям sync_all.bat. У цьому файлі створимо записи для синхронізації кожної потрібної папки. Слід включати винятки для папок із логами та статистикою. Ось загальний вигляд рядка.

"C:\Program Files\cwRsync\bin\rsync.exe" -av --delete --exclude "/logs/" ::drive_c/Folder1/ "/cygdrive/c/Folder1/">"C:\Program Files \cwRsync\bin\log\Folder1.log"

Необхідно сформувати подібні рядки для кожної папки, та вказувати їх одна за одною у цьому файлі.

Примітка:

Можна запускати з ключем –n під час пробного запуску. З цим ключем відображається весь процес, але реальні копіювання, видалення, зміни не виконуються.

Кожен запис складається з наступних частин

A рівносильно -rlptgoD r - рекурсивний режим l - перестворення symlinks, це означає, що символічні посилання так само переноситимуться p - перенесення прав t - передача часу модифікації та його оновлення на віддаленій системі. Цей ключ повинен бути встановлений для точної синхронізації g - встановити групу кінцевого файлу так само, як і у вихідного o - встановити власника кінцевого файлу таким же, як і у вихідного v - verbose. Виведення повідомлень до терміналу. --delete - видаляє файли, яких немає у джерелі. --exclude – вказуємо те, що синхронізувати не потрібно. user_id – uid, описаний на сервері @192.168.1.5 – IP адреса сервера::drive_d /Folder_sync1/ – Мітка сервера та шлях "/cygdrive/d/Folder_sync1/" - куди >"C:\Program Files\cwRsync\bin\log \Folder_sync1.log" - весь висновок у файл

Зверніть увагу на останній сліші в шляхах, тому що вони мають значення для rsync. Якщо кінці вихідної директорії стоїть «/», це означає копіювання вмісту директорії; відсутність слеша означає копіювання директорії та її вмісту.
Якщо не вказати /, то клієнт у папці створиться папка з файлами. Інакше просто її вміст.
При першому запуску синхронізації на Cервер№2 також з'явиться повідомлення від брандмауера Windows про блокування Rsync. Потрібно натиснути Unblock.
Ось список усіх допустимих параметрів:

V, --verbose increase verbosity -q, --quiet suppress non-error messages --no-motd suppress daemon-mode MOTD (see caveat) -c, --checksum skip based on checksum, no mod-time & size - a, --archive archive mode; equals -rlptgoD (no-H,-A,-X) --no-OPTION turn off implied OPTION (e.g. --no-D) -r, --recursive recurse в directories -R, --relative use relative path names --no-implied-dirs don"t send implied dirs with --relative -b, --backup make backups (see --suffix & --backup-dir) --backup-dir=DIR make backups в hierarchy based in DIR --suffix = SUFFIX backup suffix (увага ~ w/o --backup-dir) -u, --update skip files, які є новим на receiver --inplace update destination files in-place --append append data onto shorter files --append-verify --append w/old data у файлі checksum -d, --dirs transfer directories без ресурсу -l, --links copy symlinks як symlinks -L, --copy-links transform symlink в referente file /dir --copy-unsafe-links тільки "unsafe" symlinks є transformed --safe-links ignore symlinks що point outside the tree-k, --copy-dirlinks transform symlink до dir into referent dir -K, --keep- dirlinks treat symlinked dir on receiver as dir -H, --hard-links preserve hard links -p, --perms preserve permissions -E, --executability preserve executability --chmod=CHMOD affect file and/or directory permissions -A, --acls preserve ACLs (implies -p) -X, --xattrs preserve extended attributes -o, --owner preserve owner (super-user only) -g, --group preserve group --devices preserve device files (super- user only) --specials preserve special files -D same as --devices --specials -t, --times preserve modification times -O, --omit-dir-times омит directories від --times --super receiver attempts super -user activities --fake-super store/recover privileged attrs використовуючи xattrs -S, --sparse handle sparse files efficiently -n, --dry-run дає змогу trial run with no changes made -W, --whole-file copy files whole (w/o delta-xfer algorithm) -x, --one-file-system don't cross filesystem boundaries -B, --block-size=SIZE force a fixed checksum block-size -e, --rsh =COMMAND specify remote shell to use --rsync-path=PROGRAM specify rsync to run on remote machine files sender removes synchronized files (non-dir) --del an alias for --delete-during --delete delete extraneous files from dest dirs --delete-before receiver deletes before transfer (default) --delete-during receiver deletes during xfer, no before --delete-delay find deletions during, delete after --delete-after receiver deletes after transfer, no before --delete-excluded also delete excluded files from dest dirs --ignore-errors delete even if there are I /O errors --force force deletion of dirs even if not empty --max-delete=NUM don"t delete more than NUM files --max-size=SIZE don"t transfer any file larger than SIZE --min-size =SIZE don"t transfer any file smaller than SIZE --partial keep partially transfered files --partial-dir=DIR put a partially transfered file into DIR --delay-updates put all updated files inplace in end -m, -- prune-empty-dirs prune empty directory chains from file-list --number-ids don"t map uid/gid values ​​by user/group name --timeout=SECONDS set I/O timeout in seconds --contimeout=SECONDS set daemon Connection timeout in seconds -I, --ignore-times don"t skip files that match size and time --size-only skip files that match in size --modify-window=NUM compare mod-times with reduced accuracy -T, --temp-dir=DIR створюють поточні файли в directory DIR -y, --fuzzy find подібний файл для основного файлу, якщо немає останнього файлу --compare-dest=DIR також compare received files relative to DIR --copy-dest=DIR . .. and include copies unchanged files --link-dest=DIR hardlink to files in DIR when unchanged -z, --compress compress file data during the transfer --compress-level=NUM explicitly set compression level --skip-compress =LIST skip compressing files with suffix in LIST -C, --cvs-exclude auto-ignore files in the same way CVS does -f, --filter=RULE add file-filtering RULE -F same as --filter=" dir-merge /.rsync-filter" repeated: --filter="- .rsync-filter" --exclude=PATTERN exclude files matching PATTERN --exclude-from=FILE read exclude patterns from FILE --include=PATTERN don" t exclude files matching PATTERN --include-from=FILE read include patterns from FILE --files-from=FILE read list of source-file names from FILE -0, --from0 all *from/filter files are delimited by 0s - s, --protect-args no space-splitting; blocking-io use blocking I/O для remote shell --stats give some file-transfer stats -8, --8-bit-output клавіатури high-bit chars unescaped in output -h, --human-readable output numbers in a human-readable format --progress show progress during transfer -Psame as --partial --progress -i, --itemize-зміни output для зміни загальних повідомлень --out-format=FORMAT output updates using the specified FORMAT --log-file=FILE log what we"re doing to specified FILE --log-file-format=FMT log updates using the specified FMT --password-file=FILE read daemon-access password from FILE --list -только листи файлів усвідомлюють копіювання them --bwlimit=KBPS limit I/O bandwidth; KBytes per second --write-batch=FILE write a batched update to FILE --only-write-batch=FILE like --write-batch but w/o updating dest --read-batch=FILE read a batched update from FILE --protocol=Num force older protocol version to be used --iconv=CONVERT_SPEC request charset conversion of filenames --checksum-seed=NUM set block/file checksum seed (advanced) -4, --ipv4 prefer IPv4 -6, --ipv6 prefer IPv6 --version print version number (-h) --help show this help (see below for -h comment)

How to backup using Acrosync

It is very simple to use Acrsync.


Advanced Options

Якщо ваш сервер використовує різний port, ніж 22, ви можете визначити його. There are also some advanced options such as:

  • Public key authentication. Це буде налаштовано public key для підключення до вашого ssh-сервера.
  • Propagate deletion. Цей характер буде відхилено файлом повідомлень на destination if they do not exist in the source. Its good for syncing 2 directories.
  • Create Incremental Snapshot. Це є feature that we love. Acrosync буде тільки скопіювати лише змінити файли. Not the full backup everytime
  • Dry run. Enable this to simulate the backup job.

Download Acrosync Now

3. GRsync

GRsync є graphical rsync для Windows. Це комісія з простим interface and yet easy to use. Це переважно використовуваний для sync і backup файлів. Grsync дає змогу використовувати GTK libraries and is released під GPL license. Ви не повинні використовувати Gnome libraries on Windows в порядку використання GRsync. Grsync є bit outdated but still supports Windows 10. Останній варіант GRsync 0.6.3 і останній update був в липні 2016.

How to install GRsync on Windows

Натисніть на ці версії до install GRsync on Windows 10


Відомо, що це не створить програму shortcut on your Windows start menu. So, we need to open the following directory to access the GRsync executable file.

C:\Program Files\Grsync\bin

Ви можете змінити C:\Program Files\Grsync\ з вашою поточною instalation directory. Double click grsync файл всередині bin directory above.

GRsync does not support direct ssh connection to the server. Ви маєте до remote directory to your Windows.

Final Thought

Rsync для Windows є великим інструментом для завантаження і sync наших файлів для комп'ютера або сервера remote. Acrosync offers a great experience при використанні їх Rsync software. DeltaCopy також є великою, але вона потребує сервера software до роботи. Тут є сума цих Rsync Windows software для перегляду на цьому сайті.

Features DeltaCopy Acrosync GRsync
Support Linux SSH ServerNoYesNo
Needs Server SoftwareYesNoNo
Incremental BackupYesYesYes
Schedule BackupYesYesYes
ЛіцензіяFree - Open SourcePaidFree - Open Source

Для reading this Rsync for Windows review and use you on the next post.