клиент rsync для windows

Установка, настройка и примеры синхронизации Rsync

клиент rsync для windows. . клиент rsync для windows фото. клиент rsync для windows-. картинка клиент rsync для windows. картинка . В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

клиент rsync для windows. t rex. клиент rsync для windows фото. клиент rsync для windows-t rex. картинка клиент rsync для windows. картинка t rex. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Rsync — утилита для удаленной синхронизации и копирования файлов. Ее еще можно назвать «SCP на стероидах». Из преимуществ: позволяет не передавать файлы полностью, а только изменения в них, синхронизирует директории и файлы, имеет встроенный механизм сжатия. Это далеко не полный список.

Для демо-стенда закажем выделенный сервер. Для этого откроем панель управления my.selectel.ru, перейдем в меню Серверы и оборудование и выберем сервер.

клиент rsync для windows. PR 14760 image1. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image1. картинка клиент rsync для windows. картинка PR 14760 image1. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

В статье будем использовать сервер конфигурации EL09-SSD с шестиядерным процессором Intel® Xeon® E-2236, 16 Гб оперативной памяти, двумя дисками по 480 Гб и операционной системой CentOS 8 64-bit.

клиент rsync для windows. PR 14760 image2. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image2. картинка клиент rsync для windows. картинка PR 14760 image2. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

После выбора операционной системы можно переходить к завершению заказа и нажатию на кнопку Заказать сервер. Через несколько минут сервер готов к работе.

Возможности Rsync

Ключевое преимущество утилиты — синхронизация структуры директорий целиком или файлов по-отдельности. Можно синхронизировать данные между узлами сети, сетевыми хранилищами, дисками и каталогами.

При первой синхронизации данные файлов копируются целиком. При повторной, Rsync проверяет наличие изменений в исходном файле и передает лишь измененные блоки и байты.

Rsync использует алгоритм сжатия данных Deflate c помощью модифицированной библиотеки zlib, поэтому пропускная способность каналов связи используется экономичнее в сравнении с утилитой SCP.

Вместе с файлами или каталогами, Rsync реплицирует также и разрешения на них. Вместе с этим, для работы не требуются права root, поэтому Rsync подойдет для целей резервного копирования и восстановления данных.

Как установить, настроить и выполнить запуск Rsync на CentOS 8

Установка Rsync на Centos 8 выполняется из репозитория операционной системы, стандартным пакетным менеджером dnf:

Эта команда установит саму утилиту rsync (клиентскую часть) и демон rsync (серверную часть). Серверная часть нужна для приема входящих обращений на синхронизацию через rsync без использования SSH. Позже покажем как обратиться к ней с внешнего сервера.

Перед началом работы необходимо выполнить настройку. Конфигурация выполняется в файле /etc/rsyncd.conf:

В файле конфигурации указываются следующие переменные:

Рекомендуем использовать для переменных uid и gid непривилегированные учетные записи.

Перед запуском утилиты, нужно также создать указанную в конфигурации директорию:

На этом настройка Rsync в Linux завершена и можно запускать утилиту:

Теперь выполним настройки безопасности. Чтобы Rsync работал корректно, важно настроить SELinux и сетевой экран:

Проверим статус сервиса rsyncd:

клиент rsync для windows. PR 14760 image3. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image3. картинка клиент rsync для windows. картинка PR 14760 image3. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Синтаксис Rsync

В этом разделе мы приведем основные параметры, с которыми выполняется Rsync. Синтаксис в общем виде выглядит так:

-options — параметры, с которыми должна выполняться утилита.

— каталог или файл, который является источником.

— каталог или файл, который является приемником.

Ниже приведены основные параметры, с которыми вызывается Rsync:

-v, —verbose — для отображения отладочной информации в процессе синхронизации.

-q, —quiet — для запрета вывода об ошибках.

-c, —checksum — для сравнения файлов по контрольной сумме, вместо даты/времени изменения или размера.

-a, —archive — включение сжатия данных.

-r, —recursive — для включения режима рекурсивного копирования директорий.

-b, —backup — для активации режима режима резервного копирования, чтобы создавались резервные копии оригинальных файлов при обновлении.

—backup-dir= — каталог, в котором будут храниться резервные копии.

—suffix=SUFFIX — суффикс для файлов, сохраняемых в режиме резервного копирования..

-u, —update — для пропуска обновления файлов с более поздней датой изменения.

-l, —links — для сохранения символических ссылок.

-H, —hard-links — для сохранения жестких ссылок.

-p, —perms — для сохранения разрешений объекта (файла или каталога).

-E, —executability — для сохранения прав на исполнение.

—chmod= — для изменения прав доступа на конкретные объекты (файлы или каталоги).

-o, —owner — для сохранения владельца объекта.

-g, —group — для сохранения группы владельца.

-S, —sparse — для выполнения дефрагментации одновременно с копированием данных.

-n, —dry-run — для тестирования без копирования;

-W, —whole-file — для копирования файлов целиком, по умолчанию копируется только часть с изменениями.

—delete — для удаления старых файлов, если их уже нет в источнике копирования.

—delete-before — для удаления файлов в папке назначения до начала синхронизации.

—max-delete= — для ограничения максимального числа удаляемых файлов.

—max-size= — для ограничения максимального размера передаваемых файлов.

—min-size= — для ограничения минимального размера передаваемых файлов.

-z, —compress — для включения сжатия файлов во время передачи.

—compress-level= — для установки уровня сжатия от 0 до 9.

—exclude= — для исключения из синхронизации файлов.

—exclude-from= — для исключения из синхронизации файлов, указанных в файле.

—include= — для включения в синхронизацию файлов.

—include-from= — для включения в синхронизацию файлов, указанных в файле.

—port= — для установки сетевого порта для подключения на удаленном узле.

—progress — для включения строки прогресса при синхронизации.

—log-file= — для указания места расположения лог-файла.

—password-file= — При аутентификации пароль можно хранить в специальном файле. Это необходимо для автоматизации выполнения команды без пароля.

—list-only — для отображения имен файлов без копирования.

—bwlimit= — для ограничения скорости передачи в Кбит/c.

-4, —ipv4 — приоритет использования IPv4.

-6, —ipv6 — приоритет использования IPv6.

—version — для вывода версии Rsync.

Теперь разберем частные случаи работы Rsync, для которых может потребоваться ввод дополнительных параметров.

Копирование и синхронизация файлов с rsync (локально и удаленно)

При локальном режиме работы достаточно задать каталог/файл-источник и каталог/файл-приемник:

Если копирование нужно выполнить с удаленным узлом, добавляется имя пользователя и IP-адрес или имя узла:

Для корректной работы с удаленным узлами необходимо настроить доступ по ключам. Rsync этот метода подключения также поддерживает. Об использовании ключей для подключения к серверу мы рассказывали в предыдущей статье.

Синхронизация по SSH и Rsync-демон

По умолчанию синхронизация выполняется по протоколу SSH (cм. примеры выше), дополнительные параметры для этого указывать не требуется. Чтобы обращаться напрямую к Rsync, минуя SSH, на сервере-приемнике должен быть запущен демон Rsync. В предыдущем разделе мы как раз уже это сделали, поэтому можем обратиться с удаленного сервера:

Автоматическая синхронизация папок

Автоматическая синхронизация папок выполняется штатным способом — планировщиком заданий (cron). Планировщиком удобнее выполнять скрипт, так будет упрощается управление конфигурацией синхронизации. Создадим скрипт:

Далее создадим задание в планировщике:

Просмотр прогресса синхронизации

Для просмотра прогресса синхронизации, вместе с запуском утилиты необходимо использовать ключ —progress:

Удаление при синхронизации

В процессе синхронизации можно удалять файлы на сервере-приемнике, которых уже нет на сервере-источнике. Для этого используется опция —delete:

Ограничение максимального размера и скорости передачи

Rsync также имеет встроенную возможность ограничения максимального размера синхронизируемого файла. Для этого нужно использовать опцию —max-size:

Для ограничения скорости передачи предназначена опция —bwlimit (значение указывается в Кбит/с):

Опции include и exclude

Специальные опции —include и —exclude позволяют включать или исключать из синхронизации файлы с определенными именами:

Есть возможность перечислить включаемые или исключаемые имена в файле, для этого используются опции —include-from и —exclude-from соответственно:

Пример использования Rsync для синхронизации с облачным хранилищем Selectel

В этом разделе покажем пример синхронизации. Rsync напрямую в облачное хранилище это делать не умеет, но есть один интересный способ. Для начала создадим контейнер в облачном хранилище Selectel. Для этого откроем панель управления my.selectel.ru, перейдем в меню Облачное хранилище и нажмем на кнопку Создать контейнер:

клиент rsync для windows. PR 14760 image4. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image4. картинка клиент rsync для windows. картинка PR 14760 image4. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Зададим имя для контейнера и нажмем кнопку Создать контейнер:

клиент rsync для windows. PR 14760 image5. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image5. картинка клиент rsync для windows. картинка PR 14760 image5. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Утилита Rsync умеет синхронизироваться по SSH с директориями или через демон Rsync. SSH-подключение к облачному хранилищу или установка в него Rsync невозможны. Один из вариантов доступа к облачному хранилищу — S3 API. В связи с этим есть возможность примонтировать его к файловой системе, чтобы обращаться как к локальному разделу. Чтобы реализовать такой подход, нам нужно установить и настроить специальную утилиту s3fs. Предварительно установим необходимые пакеты:

Далее перейдем в директорию /tmp, клонируем в нее репозиторий этой утилиты, скомпилируем ее и установим:

Теперь выполним подготовительные действия: создадим пользователя для доступа к облачному хранилищу Selectel, создадим в системе точку монтирования и примонтируем хранилище.

Чтобы создать пользователя облачного хранилища, перейдем в меню Пользователи и нажмем кнопку Создать пользователя:

клиент rsync для windows. PR 14760 image6. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image6. картинка клиент rsync для windows. картинка PR 14760 image6. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Имя пользователя создается в формате НомерАккаунта_ИмяПользователя, например, 12345_rsync. Пароль можно сгенерировать в этом же меню. Обязательно нужно выбрать чекбокс Использовать эти данные для доступа по протоколу S3. Теперь можно нажимать кнопку Создать:

клиент rsync для windows. PR 14760 image7. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image7. картинка клиент rsync для windows. картинка PR 14760 image7. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Сохраним имя пользователя и пароль в специальном файле и ограничим права на чтение:

Создадим точку монтирования и примонтируем к ней облачное хранилище при помощи утилиты s3fs:

Теперь можно проверить результат. Перейдем в директорию /mnt/selectel и попробуем создать там пустой файл:

В результате этот же файл мы увидим в интерфейсе панели управления:

клиент rsync для windows. PR 14760 image8. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image8. картинка клиент rsync для windows. картинка PR 14760 image8. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Теперь все готово к работе утилиты Rsync. Уже знакомым способом, можно выполнить синхронизацию так, как будто мы работаем с локальной директорией:

В результате выполнения получим следующий вывод:

клиент rsync для windows. PR 14760 image9. клиент rsync для windows фото. клиент rsync для windows-PR 14760 image9. картинка клиент rsync для windows. картинка PR 14760 image9. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Таким образом, можно настроить синхронизацию выделенного сервера с облачным хранилищем Selectel или наоборот.

Заключение

Мы разобрали основные принципы работы утилиты Rsync и показали живой пример ее использования. Как вы смогли увидеть, она имеет множество преимуществ перед обычными для таких случаем SSH и SCP, например, не требует полного копирования файла в случае изменения его части и умеет передавать все метаданные вместе с файлом.

Источник

rsync Backups for Windows

Transfer your Windows Backups to an rsync server over SSH

rsync.net provides cloud storage for offsite backups. If you run Windows systems, you can point them to us to secure your data.

Our cloud storage is better than AWS, Google or Azure because we give you an empty filesystem to do anything you want with.

One thing you might choose to do is point your Windows backups to us using rsync over SSH.

We no longer recommend that Windows users of our cloud storage platform use rsync.exe to send their backups to rsync.net.

cwRsync can be difficult to set up, and getting it to run unattended, under the correct Windows account, can be challenging.

Instead, we recommend either our free Windows Backup Agent or pay for a BackupAssist license with the rsync module.

cwRsync is a free distribution of the rsync utility that is optimized for quick and easy installation in Microsoft Windows.

You can download cwRsync here, however we recommend checking for the newest version here.

Once you have downloaded this installation file, run it. You should select the defaults the installer gives you, including the default installation path of:

We STRONGLY recommend installing the program in the default location.

Setting Up Your Private/Public Keypair

You need to create, and upload, an SSH public key so that your rsync backups can occur without your being prompted for a password.

It is VERY IMPORTANT that the user who creates the key is the SAME user as the one who runs the automated backup. The easiest way to ensure this is to log in as the local «administrator» to perform the following steps:

Click the start button, and choose «run». In the run dialog box, type «cmd» and hit enter. The command prompt window (DOS prompt) will open.

In this command prompt, type:

and hit enter. Then type:

(Note that the line ends with TWO single quote characters, one after another)

Now, upload the newly created key to your rsync.net filesystem with this command:

(Insert your own user ID in place of «1234» as well and the correct hostname in place of «s001»)

Your RSA public key is now uploaded to your rsync.net filesystem, and any further logins over ssh that this Windows user (in this case, administrator) performs will not require a password.

Choosing What To Back Up

Now you need to decide what to back up. Generally, installed programs, like the ones installed in C:\Program Files are not important to back up, nor is your primary C:\Windows folder. Generally you are only interested in backing up your data, often times limited to c:\My Documents, or c:\Documents and Settings.

In this example we are choosing to back up the following directory:

C:\Documents and Settings\administrator

Open the rsync script by going to the start menu, choosing Programs, then choosing cwRsync, then choosing «1. Batch Example». When you select this, the script will open in a text editor.

In this example we are adding a single line to the end of the file:

1\administrator\.ssh\id_rsa»
«/cygdrive/c/Documents and Settings/administrator»
1234@usw-s001.rsync.net:

You can see how the source directory:

C:\Documents and Settings\administrator

/cygdrive/c/Documents and Settings/administrator

this transformation is required for all Windows source folders.

Once the rsync lines have been added to the script, you should save the file and exit the editor.

Scheduling the Backup

All that is left now is to schedule the backup, which is done through Task Scheduler, which is included in Windows.

Open Task Scheduler by choosing: Start Menu, Programs, Accessories, System Tools, Scheduled Tasks.

The Scheduled Tasks explorer will open. Double click the item named «Add Scheduled Task».

In the first Window, simply click «Next».

In the second Window, you are asked to «click the program you want windows to run». Do not choose a program from the list. Instead, click the «browse» button.

Choose the program c:\program files\cwrsync\cwrsync.cmd

You are also asked, in this third window, how often to perform the task. In this example we will choose to perform the backup weekly.

In the fourth window, you are asked to choose a start time. We suggest sometime between 10pm and 6am. You should not perform these backups during the business day, as the network traffic they consume could affect your work.

In the sixth and final window, click «finish».

Testing Your Backup

It is extremely important that you test your backup. You are testing not only that the backup works properly and transfers the files you think it will, but also that it will properly log into your rsync.net filesystem without prompting you for a password.

The first test, making sure the automated backup is not prompted for a password, is performed simply by running the backup yourself. From the start menu, choose Run, and type in the location of your backup script:

You should see the backup run in the command prompt that appears, and it should complete without asking you for a password.

After you have completed a successful backup, and periodically as time goes on, you should then log into your rsync.net account and browse your filesystem.

The different methods of browsing your rsync.net filesystem in Windows are detailed here:

rsync.net publishes a wide array of support documents as well as a FAQ

You, or your CEO, may find our CEO Page useful.

Please see our HIPAA and Sarbanes-Oxley complianc e statements.

Источник

Автоматизированное резервное копирование рабочих станций Windows при помощи rsync и vshadow — Часть 1

Если у вас возникло желание поддерживать рабочие станиции в максимально «защищённом» состоянии, а так же насколько возможно «автоматизировать» этот процесс, то этот пост для вас.

Немного 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

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

Складываем все файлы в одну папку, назовём её для удобства «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
%

Эта часть «макаронного кода» делает 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 (стираем старые логи перед запуском)

Первой командой мы создаём директорию по имени компьютера %computername%
Второй командой мы копируем данные с временно подключенного диска O:\Users, с сохранением лог-файла.
Третьей командой мы копируем всю папку C:\Backup, для сохранности лога и самой программы.

Вот эта строка «backupusr@hostname::sbackupusr» — указывает на пользователя на принимающей стороне а так же хост принимающей стороны. (Будет рассмотрено во втором псто).

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

Источник

Настройка и использование Rsync Server

Утилита rsync позволяет синхронизировать содержимое двух каталогов как для локальной системы, так и удаленных серверов. Это может использоваться как для резервного копирования, так и поддержания в актуальном состоянии нод кластера.

Использование Rsync Server позволит более тонко настроить работу утилиты и оптимизировать сам процесс синхронизации.

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

Установка и запуск

По умолчанию, утилита может быть не установлена в системе. Установка и последующий запуск выполняются следующими командами.

CentOS 8

yum install rsync rsync-daemon

CentOS 7

Ubuntu

apt-get install rsync

Открываем следующий файл:

Настройка

Открываем конфигурационный файл rsync:

И настраиваем его, примерно, следующим образом:

max connections = 10
exclude = lost+found/
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 *.rar *.7z *.mp3 *.jpg

[data1]
path = /data1/
comment = Public folders
read only = yes
list = yes
auth users = rsync_d1
secrets file = /etc/rsyncd.scrt
hosts allow = localhost 192.168.0.15 192.168.0.20
hosts deny = *

[data2]
uid = root
gid = root
path = /data2/
comment = Private folders
read only = yes
list = yes
auth users = rsync_d2, backup
secrets file = /etc/rsyncd.scrt
hosts allow = localhost 192.168.0.16 192.168.0.21
hosts deny = *

где первая группа параметров являются общими настройками:

а также каждый ресурс настраивается отдельно (в нашем примере data1 и data2):

Создаем файл для аутентификации:

rsync_d1:password1
rsync_d2:password2
backup:password3

* где rsync_d1:password1 — соответственно, пользователь rsync_d1 с паролем password1.

В целях безопасности, устанавливаем доступ только для владельца:

chmod 600 /etc/rsyncd.scrt

Перезапускаем сервис одной из команд:

systemctl restart rsyncd

service rsyncd restart

Добавляем порты в брандмауэр.

Запуск клиента

Проверка на локальном компьютере

Сначала выполним следующую команду на нашем сервере:

* данная команда выполнит синхронизацию нашего ресурса data1 с каталогом /tmp.

Проверка на удаленном компьютере

Устанавливаем rsync, если еще не установлен:

apt-get install rsync

* первая команда для CentOS, вторая — Ubuntu.

* где 192.168.0.5 — IP-адрес rsync сервера.

Пример готового скрипта для синхронизации папок

Скрипт довольно прост:

password_file=’/etc/rsyncd.scrt’
user=’opros’
ip=’192.168.0.15′
source=’data1′
destination=’/tmp/’

После создаем файл с паролем:

* в данном файле указываем только пароль без имени учетной записи.

После задаем права:

chmod 600 /etc/rsyncd.scrt

Автоматизировать синхронизацию можно с помощью CRON:

0 */1 * * * /scripts/syncing.sh

* где /scripts/syncing.sh — наш скрипт. В данном примере задание будет выполняться каждый час.

Ключи запуска rsync

Список и описание опций:

* самый свежий список ключей rsync можно посмотреть командой man rsync.

Rsync на Windows

Реализация rsync для Windows носит название cwRsync (не является аналогом программы — по сути, это утилита Rsync + библиотека Cygwin). Скачать ее можно на официальном сайте. Для загрузки доступны платная и бесплатная версии. Последняя не позволит поднять Rsync-сервер, получать поддержку, обновления безопасности и возможность работать в графическом интерфейсе.

Запуск в качестве сервера

Мы будем использовать бесплатную поставку для поднятия сервера. Переходим на страницу загрузки backuppc и дожидаемся скачивание архива. Создаем в корне системного диска папку, например, C:\Rsyncd, распаковываем содержимое загруженного архива в созданную папку.

Находим в корне содержимого файл rsyncd.conf и открываем его в блокноте. Добавляем следующие строки:

[data1]
path = /cygdrive/d/backup
read only = false
transfer logging = yes

[data2]
path = /cygdrive/d/Папки пользователей
read only = false
transfer logging = yes
strict modes = false
auth users = home
secrets file = /cygdrive/c/Rsyncd/rsyncd.secrets

Регистрируем rsync в качестве службы — для этого открываем командную строку от администратора и выполняем команду:

* где c:\rsyncd или /cygdrive/c/rsyncd — каталог, куда мы распаковали скачанный архив.

Теперь открываем службы Windows, и находим зарегистрированную службу RsyncServer. Кликаем по ней правой кнопкой и выбираем Запустить:

клиент rsync для windows. 01. клиент rsync для windows фото. клиент rsync для windows-01. картинка клиент rsync для windows. картинка 01. В статье разберемся как установить и настроить утилиту Rsync, как она устроена и покажем как при помощи Rsync выполнить резервное копирование файлов в облачное хранилище Selectel.

Пробуем выполнить локальную синхронизацию. В командной строке переходим в каталог установки rsync:

* данная команда синхронизирует содержимое модуля data1 (в нашей настройке это папка D:\backup) в папку C:\Temp (если ее нет, нужно создать перед выполнением команды).

Или в обратном направлении:

Запуск клиента

Процедура использования клиента cwRsync аналогична описанному выше для Linux. Скачиваем архив программы и распаковываем его. Запускаем командную строку и переходим в каталог bin (находится в папке, куда была распакована программа).

* обратите внимание на путь назначения — чтобы обратиться к диску C мы написали /cygdrive/c. Итоговое назначение — C:\temp.

Копирование с помощью SSH:

* обратите внимание, что мы пишем не ssh, а ./ssh, иначе, если мы используем 64-х битную систему и бесплатный пакет cwRsync, система не найдет путь до ssh и выдаст ошибку Failed to exec ssh: No such file or directory.

Права на папки и файлы

Rsync в Windows не умеет копировать права для файлов и папок. В результате, мы получим либо копию с неправильными ACL-правами, либо они будут назначены неправильно (права будут выданы по хаотичному алгоритму). Чтобы решить данную проблему после клонирования, можно воспользоваться утилитой robocopy — она входит в состав Windows, начиная с 7-ки.

Команда, которая позволит выполнить исправление прав:

robocopy c:\test d:\backup /MIR /SEC /SECFIX

* в данном примере мы возьмем папку c:\test в качестве источника и отзеркалируем его d:\backup. Ранее скопированные данные не будут копироваться вновь, но будут исправлены права.

Примеры использования rsync

Простая команда для синхронизации двух каталогов:

Команда для резервного копирования:

Выполнение синхронизации по SSH:

* по SSH запросы идут не через rsync server. В данном примере подключение будет выполнено по 22 порту, под учетной записью user.

Копирование файлов на удаленную машину:

Синхронизация в обе стороны (запускаем две команды по очереди):

Синхронизация файлов по маске:

* в этом примере будут синхронизированы только файлы с расширением txt.

Возможные проблемы

rsync: change_dir «/» failed: Permission denied

Причина: нет прав на синхронизируемые файлы.

Решение: задать правильного пользователя (uid) в настройках ресурса на стороне сервера.

rsync: failed to connect to x.x.x.x (x.x.x.x): No route to host (113)
rsync error: error in socket IO (code 10) at clientserver.c(122)

Причина: не доступен удаленный хост.

Решение: проверить, что хости доступен по сети. Проверить настройку брандмауэра.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *