Копирование файлов с помощью rsync
rsync в основном предназначен для удаленной синхронизации. rsync используется для выполнения операций резервного копирования в UNIX / Linux. rsync — это утилита, которая используется для синхронизации файлов и директорий двух различных локаций. Считается как одна из самых эффективных. Резервные копии можно создавать как на локальном сервере так и на удаленном.
Некоторые важные возможности rsync
Скорость: В первый раз, rsync реплицирует полностью весь контент между источниками и каталогами назначения. В дальнейшем, rsync перемещает только измененные блоки или байты в назначенную локацию, причем делает это действительно быстро. Также имеется возможность ограничить скорость синхронизации. Безопасность: rsync позволяет шифровать информацию, используя ssh протокол в процессе перемещения данных. Меньшая пропускная способность: rsync использует блочное сжатие и распаковку данных на приемной и отправляющей стороне в указанном порядке, возможность «докачки» файлов. Таким образом пропускная способность будет использоваться rsync-ом всегда гораздо меньше по сравнению с остальными протоколами передачи данных.
Если имеется доступ по ssh к серверу, это наиболее простой способ для осуществления синхронизации.
Rsync по ssh — это частный случай использования, общий вид команды выглядит так:
Push (копирование файлов с локальной машины на удаленную) Обязательным параметром является «ИСТОЧНИК», их может быть несколько.
Рассмотрим несколько примеров:
Примеры:
Скопируется на сервер 192.168.1.1 содержимое папок /backup/file1/ /backup/file2/ в папку backup
В этом примере уже скопируются сами папки
Как синхронизировать файлы с проверкой по контрольной сумме?
Как скопировать файлы с удаленной машины на локальную?
Как исключить файл или директорию при копировании? Исключаем директорию temp файл test.txt и все файлы с расширением tgz расположенные в /home/data
Как удалить файлы на приемнике, если их не существует на источнике?
Исключаем директорию /temp файл test.txt и все файлы с расширением tgz расположенные в /home/data
Как использовать нестандартный порт ssh при копировании rsync?
Копирует с локального хоста содержимое папки home, на хост adminunix.ru в папку home. Для аутентификации используется учетная запись root. В случае обрыва соединения во время копирования, достаточно просто повторить команду и копирование начнется с того места, когда произошел обрыв соединения.
Небольшое изменение. Удаляем «/» после папки home и у нас уже копируется сама папка вместе со всем содержимым. Так же ограничиваем скорость копирования до 10кБ/с, что бы не забивать интернет канал.
– – progress показывает прогресс выполнения копирования —bwlimit=KBPS ограничивает скорость передачи файлов (Kbit/s) —del – удалить файлы в папке назначения которых нет в источнике (точная копия) – –delete-after удалить после. Если в основном месте был удален какой-то файл, или каталог, то после синхронизации в backup сервере, в каталоге он тоже будет удален – – password-file Путь, где находится файл с паролем.
Перед тем как запустить скрипт на рабочей машине, опробуйте всё в отладочном режиме, для этого используется ключ -n. В этом случае, rsync не будет менять или удалять файлы, но покажет, весь ход работы.
Копирует внутри одного компьютера содержимое папки home, в папку /mnt/export/. Подобное копирование применяется когда необходимо сохранить все права на перемещаемые файлы.
Машина времени
Те пользователи macOS и OS X, что делают бэкап, наверняка оценили работу Time Machine. Эта программа позволяет буквально в два клика вернуться к прошлой версии любого файла. Не смотря на все красивости, Time Machine не делает ничего такого чего мы не можем сделать с помощью .
Скрипт следует положить в корень того диска или каталога, куда следует делать бэкапы.
Запускать с указанием единственного аргумента: каталога с исходными файлами. Например, так.
После нескольких запусков получается такая структура каталога:
При этом указывает на самый последний бэкап.
В каждом из каталогов содержится слепок того, что было в исходном каталоге в момент копирования. Можно подумать что и место на диске занято пропорционально количеству копий, однако это не так.
Всё множество копий занимает лишь немного больше места чем исходный каталог. Место уходит на изменившиеся файлы.
Если ничего не менялось, то место всё равно расходуется на создание каталогов, которые нельзя хранить как жесткие ссылки.
Такая существенная экономия возможна благодаря упомянутым жестким ссылкам, которые делает для файлов, не изменившихся с последнего копирования.
У одинаковых, не менявшихся, файлов будет один и тот же inode.
Конечно, по возможной экономии места на диске такому способу резервного копирования далеко до специальных программам, таких как Borg или Restic.
Используйте эти примеры rsync, чтобы узнать, как копировать из командной строки
rsync – это программа для передачи файлов для Linux, которая позволяет копировать каталоги и файлы с помощью простой команды. Команда включает в себя дополнительные параметры помимо традиционной функции копирования.
Одна из наиболее полезных функций rsync заключается в том, что когда вы используете его для копирования каталогов из командной строки, вы можете систематически исключать файлы. Таким образом, если вы используете rsync для создания резервных копий файлов, вы можете сделать так, чтобы он создавал резервные копии только тех файлов, которые вы хотите заархивировать, избегая всего остального.
Синтаксис rsync
Правильное использование команды rsync требует правильного синтаксиса:
rsync ... ... rsync ... ... ВЕДУЩАЯ: DEST rsync ... ... HOST :: DEST rsync ... ... rsync: // HOST /DEST rsync ... ХОСТ: SRC rsync ... ХОСТ :: SRC rsync ... rsync: // ХОСТ /SRC
Предоставленное выше пространство option может быть заполнено рядом параметров. Полный список приведен в разделе ОБЗОР ОПЦИЙ документации rsync, но вот несколько распространенных примеров:
-
-v , –verbose : увеличьте детализацию (более подробно рассказывается о том, что делает команда).
- – info = FLAGS . Предоставляет подробные информационные сообщения.
- – debug = FLAGS . Предоставляет подробные сообщения отладки.
- – msgs2stderr : специальная обработка вывода для отладки.
-
-q , –quiet
– no-motd : подавляет сообщение дня в режиме демона (MOTD).
. Подавляет сообщения, не связанные с ошибками.
- -c , –checksum : пропускает файлы на основе контрольной суммы, а не времени и размера мода.
- -r , –recursive . Просмотрите дополнительные подкаталоги.
-
-b , –backup : создавайте резервные копии.
- – backup-dir = DIR . Делайте резервные копии в соответствующей иерархии каталогов.
- – суффикс = SUFFIX . Добавляет текст суффикса в конец файлов резервной копии.
- -d , –dirs : переносить только каталоги, не просматривая их.
Примеры rsync
Ниже приведено несколько примеров использования rsync с некоторыми из этих опций.
В каждом из этих примеров текст, выделенный жирным шрифтом, изменить нельзя, поскольку он является частью команды. Как вы можете заметить, пути к папкам и другие параметры настраиваются в наших конкретных примерах, поэтому они будут отличаться при их использовании.
rsync /home/jon/Desktop/data/*. jpg/home/jon/Desktop/backupdata/
В этом примере выше все файлы JPG из папки /data/ копируются в папку /backupdata/ в папке рабочего стола пользователя Jon.
Копирование файлов по размеру
rsync --max-size = 2k/home/jon/Desktop/data// home/jon/Desktop/backupdata/
Этот пример rsync немного сложнее, поскольку он настроен на не копировать файлы, если их размер превышает 2048 КБ. То есть копировать только файлы меньше указанного размера.
Вы можете использовать k, m, или g , чтобы указать килобайты, мегабайты и гигабайты в множителе 1024, или кб , мб или gb , чтобы использовать 1000.
rsync --min-size = 30 МБ/home/jon/Desktop/data// home/jon/Desktop/backupdata/
То же самое можно сделать для – min-size , как вы видели выше. В этом примере rsync будет копировать только файлы размером 30 МБ или более.
rsync --min-size = 30 МБ --progress /home/jon/Desktop/data// home/jon/Desktop/backupdata/
Когда вы используете rsync для копирования файлов очень большого размера, например, 30 МБ и более, особенно если их несколько, возможно, вы захотите увидеть ход выполнения функции копирования, чтобы знать, что команда обрабатывает. В этих случаях используйте параметр – progress , чтобы процесс работал до 100%.
Копировать целые папки
rsync --recursive /home/jon/Desktop/data/home/jon/Desktop/data2
Параметр – recursive предоставляет простой способ скопировать всю папку в другое место, например в папку /data2/ в приведенном выше примере.
Эта команда скопирует всю папку и все ее содержимое в новое место.
Исключить некоторые файлы
rsync -r --exclude = "* .deb "/home/jon/Desktop/data/home/jon/Desktop/backupdata
Вы также можете скопировать всю папку, но исключить файлы с определенным расширением, например, файлы DEB в этом примере выше.
В этом примере вся папка /data/ копируется в /backupdata/, как и в предыдущем примере, но все файлы DEB исключаются из копии.
Синтаксис команды Rsync
Прежде чем мы перейдем к тому, как использовать команду , давайте начнем с изучения основного синтаксиса.
Выражения утилиты имеют следующий вид:
— параметры rsync.
- — Исходный каталог.
- — каталог назначения.
- — Имя удаленного пользователя.
- — имя удаленного хоста или IP-адрес.
предоставляет ряд опций, которые контролируют каждый аспект его поведения. Наиболее часто используемые варианты:
- , , режим архива, эквивалентный . Этот параметр указывает команде рекурсивно синхронизировать каталоги, передавать специальные устройства и блокировать, сохранять символические ссылки, время модификации, группу, владельца и разрешения.
- , . Этот параметр заставит сжимать данные при их отправке на целевой компьютер.
- эквивалентно . При использовании этой опции будет отображать индикатор выполнения во время передачи и сохранять частично переданные файлы. Это полезно при передаче больших файлов по медленным или нестабильным сетевым соединениям.
- . При использовании этой опции удалит посторонние файлы из целевого местоположения. Это полезно для зеркального отображения.
- , . Используйте эту опцию, если вы хотите подавить сообщения, не являющиеся ошибками.
- . Эта опция позволяет вам выбрать другую удаленную оболочку. По умолчанию настроен на использование ssh.
Как использовать Rsync для удаленной и локальной синхронизации данных +1
- 24.11.21 17:55
•
unihost
•
#591325
•
Хабрахабр
•
•
2700
Сетевые технологии, Серверное администрирование, Софт
Рекомендация: подборка платных и бесплатных курсов Java — https://katalog-kursov.ru/
Обеспечение постоянного доступа к важным файлам и директориям, а также их надежной защиты путем шифрования при передаче – суть работы Rsync.
Это кроссплатформенная утилита, подходящая для использования в Linux и Unix-подобных системах, а также представленная в виде бесплатного дистрибутива для работы с Microsoft Windows (cwRsync).
С ее помощью, можно синхронизировать данные на любом физическом носителе. Также, ею нередко пользуются при заказе хостинг-услуг, таких как аренда VPS-сервера для бизнеса или хранения личной информации. В этом случае утилита позволяет легко копировать необходимые файлы и папки, а также осуществлять перенос сайтов, баз данных, корпоративной почты, 1C-бухгалтерий и многого другого в защищенном формате.
Особенности работы с Rsync
Программное обеспечение разработано на базе open source и позволяет создавать копии требуемых данных в нескольких направлениях:
-
С локального компьютера на удаленный и наоборот;
-
С локального ПК на выделенный сервер или виртуальный сервер и обратно.
Установка Rsync предоставляет возможность дифференциального резервного копирования, а также шифрования данных с помощью сетевых протоколов SSH/SSL.
Немаловажным плюсом программы является генерация единого потока для передачи файлов. Это довольно удобно.
Например, если возникла необходимость купить виртуальный сервер/ арендовать VDS – Rsync позволит синхронизировать данные во всех хранилищах на высокой скорости и без каких-либо задержек.
Как запустить процесс синхронизации
Программа довольно проста в управлении. Потребуется выполнить буквально пару шагов:
-
Скачать и установить утилиту на ПК, выбрав значения по умолчанию. При необходимости, провести настройку Rsync-сервера, указав параметры доступа.
-
Запустить.
Теперь нужно определиться с тем, что и куда требуется перенести.
Удаленное копирование
Скопировать файлы и каталоги с локального ПК на сервер от Unihost, как и на другие серверы можно таким образом:
rsync -avz /home/user/documents/ [email protected]:/home/
Локальное копирование
Если цель заключается в том, чтобы провести синхронизацию данных в пределах одного хранилища, например, на персональном компьютере, необходимо задать следующие параметры:
rsync -zvh anylife /mnt/backup_dir/
При желании, можно узнать о прогрессе копирования, дополнив вышеуказанное параметром «–progress».
Полезные опции
Контролировать процесс передачи данных, используя Rsync на VPS или локальном ПК, позволят следующие ключи:
-
«–stat» (статистика);
-
«–include» (добавление файлов согласно шаблону);
-
«–exclude» (исключение файлов согласно шаблону)ю
-
«–delete» (удаление данных, отсутствующих в источнике);
-
«–recursive» (рекурсивная передача директорий);
-
«–no-recursive» (отключение рекурсивной передачи).
Применение таких параметров, как: «–а», «–b», «–e», «–z», «–W», «–H» и других, также позволит с легкостью корректировать работу программы.
Более детальную инструкцию по работе с Rsync можно посмотреть здесь.
Бэкап всей Linux системы rsync
Это средство резервного копирования командной строчки, популярное среди пользователей Linux, особенно системных администраторов. Оно обладает богатыми способностями, включая инкрементное резервное копирование, обновление всего дерева каталогов и файловой системы, как местных, так и удаленных резервных копий, сохранение прав доступа к файлам, ссылок и многое иное. В rsync есть возможность на самом деле проверять, изменился ли файл, но это очень длинный процесс. Например, сканирование моего каталога /home на наличие измененных файлов берёт больше времени, чем создание полной резервной копии без сжатия с помощью dar. Более детальную информацию вы найдете в разделе 6.4 ниже.
Также имеет графический пользовательский интерфейс Grsync, но основное преимущество с Rsync заключается в том, что резервные копии могут быть автоматизированы с использованием сценариев и поручений cron системными администраторами прямо в командной строке. Rsync — быстрая и универсальная консольная утилита используемая при резервировании, зеркалировании и копировании файлов (локально и удалённо). Утилита имеет большое число опций контролирующих все аспекты её работы.
Configuration
To start up grsync go through the following menus: Applications —> System Tools —> grsync. Upon start up you’ll be presented with the main window, where all the configuration takes place.
On this window are all of the options most users will ever need. To explain, the options will be listed and their effects mentioned.
-
Sessions — This function is the same as profiles in others. Each session will store a different set of source and destination directories, as well as the configuration options associated with the folder pair. This allows for the synchronization of different sets of folders according to different options.
Management of sessions is simple, simply push the Add button to add a new one. To delete, select the session you no longer want from the drop down and push Delete.
-
Source and Destination — These two boxes list the two folders (technically referred to as directories) that will be synchronized. The top one is the Source and the bottom the Destination. So when you Execute the synchronization, the files from Source will be copied over to the Destination according to the options a user selects.
To specify the directories either Browse for them from the GUI or type them in according to the standard path conventions.
-
Switch — The universal reload sign located to the right of the Browse buttons is a handy button. It will instantly switch the Source with the Destination.
-
Import and Export — After having configured sessions, a user may want to back them up for storage. To do so, simply go to the Sessions Menu at the top and select either Import or Export. The former will restore a session from a backup previously made, the latter will make a backup of the current session.
Note: This backup function works on a per session basis. This means, each session you want to back up must be selected from the drop down and then backed up. If you have 3 different sessions, select each in turn and Export them. Same when importing sessions.
-
Basic Options — Most users will find most of the options they will ever need here. The first four will preserve the properties of the files transferred. The others will modify how the files are copied. For more information on what each does specifically, hover your stationary cursor over the option and it will display a small explanation. The options checked are of course the ones that will be applied during the session.
-
Advanced Options — This tab holds more options, many are useful and self-explanitory. For those not understood, tooltips will be displayed when the mouse remains over an option long enough.
-
Additional Options — This entry box allows the input of additional options not presented in the GUI but known to the user. Use is suggested only for experienced users, inputting malformed options may have unexpected consequences.
Автоматизация резервного копирования rsync
Cron можно использовать в Linux для автоматизации выполнения команд, таких как rsync. Используя Cron, мы можем заставить нашу систему Linux запускать ночные резервные копии, или как бы часто вы не хотели их запускать.
Чтобы отредактировать файл таблицы cron для пользователя, в который вы вошли, выполните:
Вам нужно быть знакомым с vi, чтобы редактировать этот файл. Введите «I» для вставки, а затем начните редактирование файла таблицы cron.
Cron использует следующий синтаксис: минута часа, час дня, день месяца, месяц года, день недели, команда.
Поначалу это может немного сбить с толку, поэтому приведу пример. Следующая команда будет запускать команду rsync каждую ночь в 22:00:
Первое «0» указывает минуты часа, а «22» указывает 22 часа. Поскольку мы хотим, чтобы эта команда выполнялась ежедневно, мы оставим остальные поля со звездочками, а затем вставим команду rsync.
После завершения настройки Cron нажмите escape, а затем введите «: wq» (без кавычек) и нажмите enter. Это сохранит ваши изменения в vi.
Cron может получить гораздо больше, чем это, но продолжить это было бы за рамками этого урока. Большинству людей понадобится просто еженедельное или ежедневное резервное копирование, и то, что мы показали, вы можете легко сделать это. Для получения дополнительной информации о Cron, пожалуйста, смотрите справочные страницы.
Настройка RSYNC-сервера
RSYNC-сервер позволяет организовать передачу файлов клиентам через откраиваемый программой порт.RSYNC-сервер может быть запущен вручную или автоматически при старте операционной среды.
Для запуска RSYNC-сервера вручную с произвольным файлом конфигурации может быть использована команда
# rsync --daemon --config=FILE
Для включения автозапуска сервера Rsync следует
в файл /etc/default/rsync добавить параметры
RSYNC_ENABLE=true где переменная RSYNC_ENABLE может принимать значения: false - запретить запуск сервера rsync, true - запускать самостоятельный сервер rsync inetd - запускать сервер rsync при необходимости из супер-сервера inetd. RSYNC_CONFIG_FILE=/etc/rsyncd.conf если параметр не указан файл конфигурации будет считываться из /etc/rsyncd.conf, кроме тех случаев, когда rsync запускается поверх удаленной оболочки и не от суперпользователя. В этом случае выбирается rsyncd.conf из текущего каталога на удаленной машине (обычно $HOME). RSYNC_OPTS=opts добавление особенных (отличных от устанавливаемых по умолчанию) параметров запуска например, может быть указан адрес и/или порт, на котором следует принимать соединения "--address=192.168.0.10" (по умолчанию - все локальные адреса) "--port=8730" (по умолчанию - 873), чтобы указать на каком порту следует принимать соединения RSYNC_NICE=level изменение приоритета процесса в планировщике задач
и перезапустить rsync-сервер.
В файле конфигурации rsyncd.conf могут быть использованы параметры
uid = rsyncd Идентификатор пользователя, от имени которого запускается rsync-сервер. gid = mirror Идентификатор группы, от имени которой запускается rsync-сервер. max connections = 50 Максимальное количество одновременных подключений. read only = yes Установка доступа к ресурсам "только чтение". list = yes Установка разрешения клиентам получать список файлов. Если запретить просмотр списка файлов, то клиенты смогут получить файл только зная его точное имя, syslog facility = local5 Установка уровня отладочных сообщений для syslog. dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz *.rar *.mp3 Установка шаблонов имён файлов, содержимое которых не нужно сжимать при передаче. use chroot = yes Установка изменения корневого каталог rsync-сервера на указанный в path. Изменение каталога может использоваться для повышения безопасности. outgoing chmod = Fu=rw,g=rw,o=,Du=rwx,g=rx,o= Установка права доступа к отдаваемым файлам. Поскольку протокол rsync позволяет вместе с содержимым файлов передавать права доступа к ним и идентификаторы владельца и группы, можно задать особые права доступа, которые будут заменять реальные права доступа к данному файлу или каталогу при его передаче по сети. В квадратных скобках задаётся имя секции. Каждая секция обязана иметь собственный параметр path. Дополнительно в ней могут быть переопределены и значения глобальных параметров. path = /media/ comment = media files
Ссылки
Использование rsync-сервера
Understanding Rsync Syntax
The syntax for operates similar to other tools, such as , , and .
First, change into your home directory by running the following command:
Then create a test directory:
Create another test directory:
Now add some test files:
There’s now a directory called with 100 empty files in it. Confirm by listing out the files:
You also have an empty directory called . To sync the contents of to on the same system, you will run and use the flag, which stands for “recursive” and is necessary for directory syncing:
Another option is to use the flag, which is a combination flag and stands for “archive”. This flag syncs recursively and preserves symbolic links, special and device files, modification times, groups, owners, and permissions. It’s more commonly used than and is the recommended flag to use. Run the same command as the previous example, this time using the flag:
Please note that there is a trailing slash () at the end of the first argument in the syntax of the the previous two commands and highlighted here:
This trailing slash signifies the contents of . Without the trailing slash, , including the directory, would be placed within . The outcome would create a hierarchy like the following:
Another tip is to double-check your arguments before executing an command. Rsync provides a method for doing this by passing the or options. The flag, which means “verbose”, is also necessary to get the appropriate output. You’ll combine the , , and flags in the following command:
Now compare that output to the one you receive when removing the trailing slash, as in the following:
This output now demonstrates that the directory itself was transferred, rather than only the files within the directory.
Настройка сервера Rsync
Как вы понимаете, нельзя просто так взять и закинуть на первую попавшуюся машину файлы без установки на нее специального программного обеспечения. На удаленной машине должен быть установлен и настроен RSYNC, SSH, Samba или FTP сервер, с помощью которого Rsync сможет авторизоваться на машине и передавать туда файлы.
Рассмотрим минимальную настройку сервера rsync, для того чтобы могло быть выполнено копирование файлов rsync. Он позволит нам не только синхронизировать файлы на машину, но и получать их от туда.
Сначала создайте конфигурационный файл со следующим содержимым:
sudo vi /etc/rsyncd. conf
pid file = /var/run/rsyncd. pid lock file = /var/run/rsync. lock log file = /var/log/rsync. log path = /tmp/share/ hosts allow = 192.168.56.1 hosts deny = * list = true uid = root gid = root read only = false
Здесь мы задаем путь к нашей папке для синхронизации, разрешаем доступ к серверу только с ip адреса (192.168.56.1) и запрещаем все остальные подключения. Параметры uid и gid указывают пользователя и группу, от которых будет запущен демон. Лучше не использовать root, а указать пользователя nobody и выдать ему права на ту папку, в которую будет выполняться синхронизация каталогов rsync.
Настройка rsync завершена, остается сохранить файл, запустить сервер rsync и добавить его в автозагрузку:
sudo systemctl start rsync
sudo systemctl enable rsync
Сервер будет предоставлять доступ к файлам без запроса пароля.
Дальше давайте рассмотрим использование rsync, примеры синхронизации.
1. Копирование и синхронизация файлов на локальном компьютере
Rsync позволяет синхронизировать файлы и папки в пределах одной машины. Давайте сначала рассмотрим использование rsync для синхронизации файла на локальном компьютере:
3. Синхронизация с удаленным сервером
Ненамного сложнее синхронизировать файлы с удаленным сервером. Скопируем локальную папку documents, на удаленный сервер:
По умолчанию rsync попытается использовать транспорт ssh. Если вы хотите использовать ранее созданный сервер rsync, нужно указать это явно:
Точно также можно синхронизировать файлы с rsync из удаленного сервера:
Адрес удаленного сервера записывается в таком формате:
имя_пользователя@ адрес_машины /папка/на/удаленной_машине
Синхронизация папок rsync будет выполняться на стандартном порту.
4. Синхронизация файлов по SSH
Синхронизация файлов rsync с удаленного сервера по ssh будет выглядеть вот так:
Если вы используете другой порт для ssh, то здесь его можно указать:
А теперь передадим данные на тот же сервер:
6. Синхронизация не всех файлов в rsync
Опции include и exclude позволяют указать какие файлы нужно синхронизировать, а какие исключить. Опции работают не только с файлами но и с директориями.
Например, скопируем все файлы, начинающиеся на букву R:
9. Удаление исходных файлов
Есть возможность удалять исходные файлы после завершения синхронизации с удаленным сервером:
Таким образом, файл backup. tar будет удален после завершения копирования в папку /tmp/backups.
10. Режим симуляции rsync
Если вы новичок, и еще не использовали rsync, то возможно захотите посмотреть как отработает команда без применения реальных действий в файловой системе. Для этого есть опция dry-run. Команда только выведет все выполняемые действия в терминал, без выполнения реальных изменений:
12. Автоматическая синхронизация папок rsync
Можно расписать автоматическую синхронизацию с помощью cron. Но в случае доступа к серверу по SSH необходимо будет создать ключ и загрузить его на сервер, чтобы аутентификация проходила без запроса пароля.
Загружаем ключ на сервер к с которым собираемся синхронизироваться:
Теперь можем переходить к настройке расписания cron. Будем запускать синхронизацию каждый день:
rsync синхронизация каталогов будет выполняться каждый день в пять утра. Подробнее о настройке расписаний Cron можно почитать в отдельной статье.
Резервное копирование по расписанию
В качестве альтернативы утилите RealTimeSync можно использовать «Планировщик заданий Windows», который не имеет всех перечисленных недостатков и обладает более гибкими возможностями.
Зайдите в «Панель управления\Система и безопасность\Администрирование» и выберите «Планировщик заданий» или «Расписание выполнения задач».
Выберите «Создать простую задачу».
Введите осмысленное имя задачи и кликните на кнопку «Далее».
Выберите как часто вы хотели бы производить резервное копирование.
Рекомендуется выбрать «Ежедневно» или «Еженедельно» в зависимости от частоты изменения файлов на вашем компьютере и соображений удобства.
Затем определите более точно день и время, в которые компьютер с большой вероятностью будет включен для выполнения синхронизации. Например, каждую пятницу в 17:00.
Выберите действие для задачи «Запустить программу».
Нажмите кнопку «Обзор».
Выберите файл пакетного задания, созданный в программе FreeFileSync.
Нажмите «Далее».
Нажмите кнопку «Готово».
Теперь резервное копирование файлов будет выполняться чётко в назначенный день и время. Если компьютер в это время окажется выключен, то задание будет выполнено при следующем его включении. Позаботьтесь только о том, чтобы носитель резервных копий был доступен в нужное время.
Удалить или изменить настройки резервного копирования можно в любое время в «Библиотеке планировщика заданий».
Сам файл пакетного задания также можно менять в любое время независимо от планировщика с помощью программы FreeFileSync.
Вы также можете создавать неограниченное количество пакетных заданий синхронизации и заданий в планировщике с самыми различными настройками и планами резервного копирования.
На этом всё, храните ваши файлы на надежных носителях и не пренебрегайте резервным копированием.