Ubuntu программа для синхронизации файлов

Обновлено: 04.07.2024

Как установить Syncthing в Ubuntu 20.04 LTS

Синхронизация может использоваться для синхронизации файлов и каталогов в режиме реального времени. Вся передача данных между несколькими устройствами безопасна и зашифрована с помощью TLS.

Ключевые особенности Syncthing:

  • Поддержка аутентификации LDAP.
  • поддержка односторонней синхронизации.
  • Быстрая скорость синхронизации.
  • Используйте как CLI, так и GUI
  • Кроссплатформенность доступна на: Linux, Android, Unix, Solaris, Windows и Mac OS X.

В этом руководстве мы узнаем, как установить Syncthing в Ubuntu 20.04 .

Предпосылки

  • Два сервера с установленной Ubuntu 20.04.
  • Пользователь с доступом sudo и root.
  • Два настроенных общедоступных IP-адреса.

Установите Syncthing в Ubuntu

Syncthing доступен в официальном репозитории. Следуя инструкциям по установке, добавьте репозиторий Syncthing и установите его в Ubuntu.

Сначала обновите системные пакеты с помощью следующей команды:

Установите все зависимости с помощью следующей команды:

Добавьте и загрузите ключ выпуска:

Добавьте репозиторий Syncthing в APT с помощью следующей команды:

После этого обновите системные пакеты еще раз и установите пакет Syncthing :

Проверьте установку, проверив версию Syncthing:

Если вы получили аналогичный результат, значит, Syncthing успешно установлен.

ПРИМЕЧАНИЕ. Вам нужно будет повторить эти же действия по установке на другом сервере.

Создайте файл модуля Systemd

Следующим шагом является создание файла модуля systemd для управления службой Syncthing.

Создайте файл в /etc/systemd/system/ с помощью следующей команды.

Добавьте в файл конфигурации следующие строки:

В части [Служба] в строке -gui-address="0.0.0.0:8384" добавьте свой публичный IP-адрес первого сервера и оставьте тот же порт 8384.

Сохраните конфигурацию и закройте файл.

Теперь перезагрузите демон systemd, чтобы применить конфигурацию:

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

Проверьте статус службы Syncthing:

Сервис должен быть активен (запущен).

Служба синхронизации прослушивает порт 8384, вы можете проверить это с помощью команды ss .

ПРИМЕЧАНИЕ. Повторите эти же действия для другого сервера.

Настройка Syncthing Web Interface

Откройте свой веб-браузер и получите доступ к веб-интерфейсу Syncthing с URL-адресами.

Syncthing Web Interface использует порт 8384.

ПРИМЕЧАНИЕ. Повторите и настройте этот процесс также на втором сервере.

Подключение устройств

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

Для этого перейдите в Действия> Показать ID на обоих серверах. Вы увидите следующий идентификатор устройства и QR-код.

Теперь перейдите к первому серверу Syncthing. Внизу, где находится раздел для удаленных устройств, нажмите кнопку + Добавить удаленное устройство.

Укажите идентификатор устройства вашего второго сервера и нажмите кнопку «Сохранить». Необязательно, также можно добавить имя устройства для более четкого обзора.

На втором сервере повторите тот же шаг. Перейдите в Добавить удаленное устройство.

И добавьте идентификатор устройства с первого сервера и нажмите кнопку « Сохранить» .

Укажите имя вашей резервной папки в метке папки в разделе «Общие». Затем перейдите в раздел «Совместное использование карты», и вы увидите следующий экран.

Уилл с обеих сторон видит, что устройства подключены.

Синхронизировать каталоги

После успешного пиринга удаленных устройств найдите раздел Папки и нажмите кнопку + Добавить папку. Вы должны увидеть новое следующее окно.

Укажите имя вашей резервной папки в метке папки в разделе «Общие». Затем перейдите в раздел «Совместное использование карты», и вы увидите следующий экран.

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

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

Настройка папок только для отправки и только для получения

Еще одна замечательная функция Syncthing заключается в том, что вы можете настроить парные серверы для отправки и получения, а также их можно указать только для отправки и только для приема.

Перейдите в раздел «Папки»> «Выбрать желаемую папку для резервного копирования» и нажмите кнопку «Изменить», а затем перейдите в раздел «Дополнительно». Вы увидите следующее изображение.

И выберите «Тип папки» для «Только отправка» / «Только получение» и нажмите кнопку «Сохранить».

Настроить точные интервалы сканирования

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

Проверка службы systemctl

Перейдите к желаемому устройству на server1 или server2 и проверьте статус службы systemctl, чтобы увидеть, как это работает на бэкэнде, с помощью следующей команды.

Заключение

В этом руководстве мы узнали, как установить Syncthing для синхронизации каталогов в Ubuntu 20.04. Вы можете использовать и синхронизировать более двух устройств и быть в курсе всех каталогов на всех машинах.

Пожалуйста, поделитесь своим опытом использования Syncthing в разделе комментариев.

FreeFileSync

FreeFileSync — программа для синхронизации файлов.

Bacula

Bacula

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

Clonezilla

Clonezilla

Clonezilla — программа для создания образов, клонирования дисков и развертывания систем.

APTonCD

APTonCD — полезная программа для создания копий пакетов, которые были установлены через apt (apt-get, aptitude, synaptic). Позволяет создать своего рода оффлайн репозиторий с необходимыми пакетами на внешнем носителе.

Timeshift

Timeshift

Timeshift — программа для автоматического периодического резервного копирования и восстановления системы Linux.

Systemback

Systemback

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

Яндекс.Диск

Яндекс.Диск

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

Dropbox

Dropbox

Dropbox — программа для Linux, с помощью которой можно с легкостью синхронизировать файлы между компьютерами. Dropbox представляет собой папку на вашем компьютере, которая является «облачной», все данные в ней синхронизируются в реальном времени.

Grsync - это графический интерфейс для rsync - кроссплатформенной утилиты, работающей в Linux, Windows OS и Mac OS. Grsync можно использовать для синхронизации вашей коллекции музыки на съемных устройствах, создания резервной копии данных на сетевом носителе, репликации раздела на другой диск, зеркалирования файлов и так далее. В этой части я расскажу о синхронизации файлов и директорий с помощью Grsync.

Установка Grsync

В Ubuntu/Debian/Linux Mint:

Grsync имеется в системных репозиториях, поэтому вы можете установить ее с помощью команды:

В системах на базе RHEL:

Теперь запустите Grsync из меню или Dash. Интерфейс программы после запуска имеет вид:

Grsync

Интерфейс имеет три вкладки: Basic, Advanced и Extra, названия которых говорят сами за себя. При выборе любой опции появляется всплывающее окно с подсказкой.

Использование программы

В этом руководстве я буду использовать две системы Ubuntu 14.04. IP-адрес моей локальной системы 192.168.1.200/24, а удаленной системы - 192.168.1.250/24.
Теперь я собираюсь сделать резервную копию директории /home/sk/Downloads/ моей локальной системы и сохранить ее в директории /home/sk/sync/ удаленной системы с помощью Grsync.

ввод путей

Теперь кликните пункт Simulation в меню File.

меню File

Вам предложат ввести пароль удаленного пользователя.

ввод пароля

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

передача файлов

Проверка

Перейдите в директорию на удаленной системе (т.е. /home/sk/sync) и проверьте наличие в ней файлов резервной копии.

пример вывода

Синхронизация файлов

Выше мы передавали файлы и/или директории вручную. Если вы хотите синхронизировать файлы удаленно через определенные промежутки времени, необходимо выполнить описанные ниже действия.
Для синхронизации файлов нам необходимо создать новую сессию. Назовем ее Synchronize. Кликните (+) в интерфейсе Grsync.

синхронизация

Будет создана новая сессия под названием Synchronize. Здесь вам необходимо ввести удаленную директорию (192.168.1.250:/home/s/sync) в качестве исходной, и локальную (/home/sk/Downloads) в качестве директории назначения. Обратите внимание, что не нужно вводить полный путь к директории назначения. Например, если я хочу синхронизировать содержимое директории /home/sk/sync с удаленного сервера с локальной системой, то просто ввожу местоположение директории назначения. В моем случае это директория sync в домашней директории удаленного сервера (т.е. /home/sk/). Поэтому я ввожу путь назначения /home/sk.

ввод пути

Проверьте наличие ошибок, кликнув кнопку Simulation в меню File. Если все в порядке, запустите процесс, кликнув Execute.

Резервное копирование по расписанию

Для создания резервных копий по расписанию добавьте обе сессии в файл crontab вашей локальной системы:

Добавьте обе сессии (то есть сессию по умолчанию и Synchronize) по очереди.

Приведенное выше задание для cron выполняет резервное копирование с локальной в удаленную директории в 11.00, а процесс синхронизации файлов в 12.00 соответственно. Сохраните файл crontab.

2. Gadmin-Rsync

GAdmin-Rsync - это графический интерфейс для команды Rsync на базе C/GTK+. Эта утилита позволяет выполнять резервные копии файлов и директорий с локальной системы на локальную, с локальной на удаленную, и наоборот.

Установка

Вы также можете скомпилировать программу из исходного кода, как показано ниже.

Скачайте gadmin-rsync-x.x.x.tar.gz, распакуйте архив и установите программу.

Теперь вы можете запустить ее, вводя в терминале "gadmin-rsync", или из системного меню GNOME или KDE.

Использование

При первом запуске вас попросят задать имя для новой резервной копии. Введите его и кликните "Apply".

создание новой резервной копии

Затем выберите тип резервной копии: Local backup, Local to remote backup или Remote to local backup. В моем случае я выбрал тип local to remote backup. Кликните кнопку Forward.

выбор типа резервной копии

Выберите директорию, резервную копию которой вы хотите сделать.

выбор директории

Введите IP-адрес удаленного сервера, путь на удаленной машине для размещения резервной копии, имя пользователя и пароль удаленного пользователя.

выбор удаленного сервера

результат

Теперь кликните кнопку Run selected backup в правом верхнем углу для запуска резервного копирования.

запуск резервного копирования

Теперь запустится процесс резервного копирования.

резервное копирование

Резервное копирование по расписанию

В версии 0.1.7 я не смог запустить резервное копирование через заданный интервал времени. Когда я пытался сохранить расписание, получал ошибку:

Но кто-то с форума Askubuntu нашел решение этой проблемы. Надеюсь, оно вам поможет.


FreeFileSync - бесплатная программа, позволяющая сравнивать и синхронизировать папки в ОС Windows, Linux и Mac OS X. Отличается быстродействием и удобным понятным интерфейсом. Позволяет сравнивать файлы по размеру и дате, а также по содержимому. Способна обрабатывать файлы размером более 4GB.
Поддерживает 64-bit операционные системы и предлагает портативную версию для всех платформ.


Характеристики FreeFileSync:

Быстро и качественно синхронизирует папки без потерь данных.
Может быть синхронизировано любое количество файлов.
Копирование прав на файлы и директории.
Подпапки также синхронизируются, включая пустые директории.
Обнаруживает перемещенные, переименованные, конфликтующие файлы и предлает их удаление.
Поддерживает побайтовое сравнение.
Простой и доступный пользовательский интерфейс. Оптимизирован для увеличения скорости и работы с большим количеством данных. Обладает большим выбором функций. Поддержка drag & drop, командной строки и др.
Поддерживает работу по сети.
Фильтр функциональности, который включает и исключает файлы для синхронизации.
Различные типы настройки синхронизации: автоматический режим (изменения 2 каталогов сразу), зеркальное отображение (одна папка становится похожей на другую), режим обновления (копирование измененных, новых файлов) и ручной режим. Возможность плановой синхронизации.
Поддержка нескольких пар папок.

Установка FreeFileSync в Ubuntu ( 64-bit) и производные

Откройте терминал(Ctrl+Alt+T), скопируйте и выполните следующие команды:

sudo add-apt-repository ppa:freefilesync/ffs
sudo apt-get update
sudo apt-get install freefilesync

По окончании установки вы найдёте FreeFileSync в программах Стандартные или поиском в меню:

Читайте также: