Synchronization and backup programs (Русский)

Ссылки по теме
System backup
Клонирование диска
List of applications/Internet#File sharing
Обслуживание системы#Резервное копирование
Dotfiles
File recovery
Состояние перевода:
На этой странице представлен перевод статьи
Synchronization and backup programs
. Дата последней синхронизации: 3 января 2021. Вы можете
помочь
синхронизировать перевод, если в английской версии произошли
изменения
.
Эта статья содержит список и сравнение программ для синхронизации данных между двумя и более местоположениями, а также программ с расширенными возможностями, например, инкрементным резервным копированием. Данные темы достаточно схожи между собой и, соответственно, описываются в одной статье.
Введение в резервное копирование
Создание резервных копий является необходимой мерой, поскольку ошибки, совершаемые людьми и машинами, могут приводить к повреждению данных; физические носители также разрушаются со временем и однажды перестают работать. Чтобы выбрать лучшую программу для своих нужд, нужно учесть следующие моменты:
тип носителя данных, используемый для резервных копий: CD, DVD, удалённый сервер, внешний жёсткий диск и т.д.;
планируемая частота создания резервных копий: ежедневно, еженедельно, ежемесячно и т.д.;
возможности, ожидаемые от инструмента: сжатие, шифрование, обработка переименований и т.д.;
планируемый метод восстановления резервных копий при необходимости.
Синхронизация данных
Эти приложения просто «зеркалируют» содержимое каталогов по нескольким местам. Тем не менее большинство из них позволяют сохранять и возвращать старые версии изменённых или удалённых файлов.
См. также:
List of applications/Utilities#File synchronization and backup
List of applications/Internet#Cloud synchronization clients
Wikipedia:Comparison of file synchronization software
Легенда
Название
Название приложения, со ссылкой на ArchWiki или официальный сайт.
Пакет
Ссылка на пакет.
Реализация
Язык программирования, библиотеки или утилиты, на базе которых создано приложение.
Delta transfer
Передача только изменённых частей файла.
Зашифрованная передача
Передача данных зашифрованном виде по умолчанию при использовании сети.
Метаданные ФС
Сохранение прав доступа и атрибутов файловой системы.
Возобновляемая
Возможность возобновления синхронизации в случае её прерывания.
Переименования
Перемещённые/переименованные файлы определяются и не хранятся или не передаются дважды. Обычно это означает подсчёт хеш-сумм файлов или их частей. Приложения без поддержки этого можно комбинировать с
hsync
AUR
, который синхронизирует
только
переименования.
Контроль версий
Сохранение старых версий файла (
reverse incremental backup
).
Передача изменений
В каких направлениях могут передаваться изменения.
односторонняя
синхронизация между двумя местами;
двухсторонняя
синхронизация между двумя местами;
многосторонняя
— полная синхронизация между более чем двумя местами.
Решение конфликтов
Обработка конфликтов файлов, автоматически или интерактивно, то есть приложение не отклоняет конфликтующие файлы молча. Неприменимо для приложений с односторонней синхронизацией.
Мониторинг ФС
Обработка приложением событий файловой системы для запуска синхронизации.
CLI
Наличие у приложения интерфейса командной строки.
Другие интерфейсы
Наличие указанных пользовательских интерфейсов, например GUI, TUI или web.
Лицензия
Лицензия серверного и клиентского приложения.
Другие платформы
Поддержка других операционных систем помимо Linux.
Поддержка
Поддерживается ли сейчас проект разработчиками.
Особенности
Заметки об особых функциях, которые выделяют приложение среди других.
Таблица
Название
Пакет
Реализация
Delta transfer
Зашифрованная передача
Метаданные ФС
Возобновляемая
Переименования
Контроль версий
Передача изменений
Решение конфликтов
Мониторинг ФС
CLI
Другие интерфейсы
Лицензия
Другие платформы
Поддержка
Особенности
FreeFileSync
freefilesync
AUR
C++
?
SFTP
[1]
?
?
Да
[2]
Да
[3]
одно
сторонняя /
много
сторонняя
Да
?
Нет
Да
GPL
Windows, macOS
Да
git-annex
git-annex
Haskell, git
rsync
[4]
rsync и другие
[5]
Нет, но используются собственные, не относящиеся к ФС, метаданные
[6]
Да
[7]
Да, хранилище с адресацией по содержимому (content-addressable)
Да
много
сторонняя; с удалёнными репозиториями
[8]
переименование конфликтующих файлов
[9]
Опционально, git-annex assistant
Да
git-annex assistant
GPLv3
macOS, Android (beta), Windows (beta)
Да
Управление файлами с помощью git
osync.sh
[
устаревшая ссылка
2025-11-17 ⓘ]
osync
AUR
Bash, основано на rsync
rsync
rsync
?
Да
Нет
Да
двух
сторонняя
сохраняет несколько версий файла
[10]
[
устаревшая ссылка
2025-11-17 ⓘ]
опционально
[11]
Да
Нет
BSD
Да
rclone
rclone
Go
Нет
[12]
?
?
?
?
?
одно
сторонняя
[13]
?
?
Да
RcloneBrowser
MIT
*BSD, Plan9, Solaris, Windows, macOS
Да
Оптимизировано для работы с облачными хранилищами, поведение варьируется в зависимости от возможностей удалённого хранилища.
rdiff-backup
rdiff-backup
AUR
Python, librsync
rsync
rsync
Да
?
Нет
Да
одно
сторонняя
Нет
Да
Нет
GPL
Win32
?
Resilio Sync
rslsync
AUR
C++
Да
Да
?
Да
?
Да
много
сторонняя
?
?
Нет
Web
Проприетарная, freemium
FreeBSD, Windows, macOS, Android, iOS, Windows Phone, Amazon Kindle Fire
Да
P2P-синхронизация
rsync
rsync
C
Да
SSH или собственный протокол
Да
Да
Нет
--link-dest
с жёсткими ссылками
[14]
--backup
одно
сторонняя
Нет
Да
Rsync (Русский)#Графические интерфейсы
GPLv3
Win32
Да
Стандартный инструмент, доступный во всех дистрибутивах Linux.
SparkleShare
sparkleshare
AUR
C#, git
Да
AES-256
[15]
?
?
Да
Да
?
?
?
Нет
Да
GPLv3
Windows, macOS
Да
Может синхронизировать с любым Git-сервером через SSH.
Syncany
syncany
AUR
Java
?
?
?
?
?
?
?
?
?
Да
Да
GPLv3
Нет
[16]
Syncthing
syncthing
Go
Да
[17]
Да
[18]
частично
[19]
Да
?
Да
[20]
, старые версии перемещаются в архивный каталог
много
сторонняя
переименовывает один файл
[21]
Да
Да
Web, GTK
MPL v2
BSD, Windows, macOS, Android, Kindle Paperwhite
Да
P2P-синхронизация
Synkron
synkron
AUR
C++
?
?
?
?
?
?
много
сторонняя
?
?
Нет
Qt
GPLv2
Windows, macOS
No
taskd
taskd
AUR
[
ссылка недействительна
: package not found]
C++, Python
Да
Да
?
Да
?
?
много
сторонняя
?
Нет
Да
Нет
MIT
Android
Да
Unison
unison
OCaml
Да
Да
частично
[22]
[
устаревшая ссылка
2023-06-17 ⓘ]
опционально
[23]
[
устаревшая ссылка
2023-06-17 ⓘ]
Нет
Yes (Русский)
[24]
[
устаревшая ссылка
2023-06-17 ⓘ]
двух
сторонняя
Интерактивное
Нет
Да
GTK2
GPL
FreeBSD, Windows, macOS, Android
Да
[25]
[
устаревшая ссылка
2023-06-17 ⓘ]
yarsync
yarsync
AUR
Python, на основе rsync
rsync
rsync
Да
Да
Да
Да, снимки репозитория (у каждого файла одна версия)
одно
сторонняя /
много
сторонняя
переименовывает один файл
Нет
Да
Нет
GPLv3
Да
UNIX-подобные системы или накопители, CLI похож на
git
.
Zaloha.sh
bash
Нет
Нет
Опционально
Нет
Нет
Нет
двух
сторонняя
Интерактивное
Нет
Да
Нет
MIT
Windows под Cygwin
Да
[26]
Небольшая и простая утилита
Инкрементное резервное копирование
Приложения, которые могут создавать
инкрементные резервные копии
, запоминают и учитывают, какие данные были скопированы во время последнего запуска (так называемые «различия») и устраняют необходимость хранить дубликаты неизменённых данных. Восстановление данных к определённому моменту времени потребует размещения последней полной резервной копии и всех инкрементных резервных копий с того момента, когда предполагается, что они будут восстановлены. Этот вид резервных копий полезен для тех, кто делает их очень часто.
См. также:
List of applications/Utilities#File synchronization and backup
Wikipedia:List of backup software
Wikipedia:Comparison of backup software
Wikipedia:Comparison of online backup services
Легенда:
Название
: название приложения со ссылкой на ArchWiki или официальный сайт.
Пакет
: ссылка на пакет.
Реализация
: язык программирования, библиотеки или утилиты, на базе которых создано приложение.
Сжатое хранилище
: использование сжатия для хранилища резервных копий.
Зашифрованное хранилище
: использование шифрования для хранилища резервных копий.
Delta transfer
: передача только изменённых частей файла.
Зашифрованная передача
: передача данных зашифрованном виде по умолчанию при использовании сети.
Метаданные ФС
: сохранение прав доступа и атрибутов файловой системы.
Лёгкий доступ
: резервные копии хранятся на файловой системе или могут быть примонтированы для удобной работы с ними.
Возобновляемая
: возможность возобновления синхронизации в случае её прерывания.
Многопоточная
: резервное копирование может производиться, используя несколько потоков.
Переименования
: перемещённые/переименованные файлы определяются и не хранятся или не передаются дважды. Обычно это означает подсчёт контрольных сумм файлов или их частей.
CLI
: наличие у приложения интерфейса командной строки, что означает возможность использования в скриптах.
Другие интерфейсы
: наличие указанных пользовательских интерфейсов, например, GUI, TUI или web.
Лицензия
: лицензия серверного и клиентского приложения.
Другие платформы
: поддержка других операционных систем помимо Linux.
Поддержка
: поддерживается ли сейчас проект разработчиками.
Особенности
: заметки об особых функциях, которые выделяют приложение среди других.
Одно устройство
Эти приложения ориентированы на резервное копирование данных того устройства, на котором они установлены, хотя целевое место хранения копий может быть расположено на внешнем хранилище или другой системе.
Инкременты на основе блоков данных
При изменении файла приложении сохраняют только изменившиеся
части
в следующем снимке. В отличие от
инкрементов на основе файлов
, они более экономно расходуют место, особенно когда есть большие файлы с малыми изменениями; с другой стороны, такие резервные копии могут быть прочитаны только тем приложением, которое их создало, так как исходные файлы должны быть реконструированы по сохранённым в копии различиям между версиями.
Название
Пакет
Реализация
Сжатое хранилище
Зашифрованное хранилище
Delta transfer
Зашифрованная передача
Метаданные ФС
Лёгкий доступ
Возобновляемая
Многопоточная
Переименования
CLI
Другие интерфейсы
Лицензия
Другие платформы
Поддержка
Особенности
Areca Backup
areca
AUR
Java
Zip, Zip64
AES128, AES256
Да
Да
Да
Нет
Только приостановка
Нет
[27]
Нет
Да
Да
GPLv2
Windows
Да
BorgBackup
borg
Python, C (Cython)
lz4, zlib, lzma, zstd
AES256
Да
SSH
Да
[28]
Да
[29]
Да
[30]
Нет
[31]
Да
Да
third party
BSD
*BSD, macOS, Windows (Cygwin / WSL)
[32]
Да
Дедубликация на основе переменной длинны блоков данных; поддерживает как локальные, так и удалённые хранилища резервных копий (с помощью SSH).
bup
bup
C, Python, git
Да
Нет
Да
Да
Недостаточно проработанная поддержка
Да
[33]
[
устаревшая ссылка
2024-10-12 ⓘ]
Продолжение с того места, где вы остановились
[34]
Нет
Да
Да
thesafe
AUR
GPLv2
NetBSD, Windows, macOS
Да
Формат хранения данных, аналогичный git.
Duplicacy
duplicacy
AUR
Go
Да
Да
Да
Да
Да
Да
[35]
Да
[36]
Да
[37]
Да
[38]
Да
duplicacy-web
AUR
Собственная
FreeBSD, macOS, Windows
Да
Duplicati
duplicati-canary-bin
AUR
C#
Да
Да
Да
Да
Да
Нет
Только приостановка
Да
[39]
Нет
Да
Да
LGPL
Windows, macOS
Да
Duplicity
duplicity
librsync
gzip
gpg
Да
Да
?
Нет
Да
Нет
Нет
Да
Yes
GPL
Да
Kup Backup System
kup
rsync, bup front-end
Да
Да
Да
Да
Недостаточно проработанная поддержка
Да
Нет
?
Да
bup
Qt
GPLv2
Да
restic
restic
Go
Нет
[40]
AES-256
[41]
Да
Да
Да
[42]
Да
[43]
Да
[44]
Да
[45]
Да
Да
Нет
[46]
BSD
OpenBSD, Windows, macOS
Да
Имеет встроенную или основанную на
rclone
поддержку различных облачных хранилищ.
ZBackup
zbackup
AUR
C++
LZMA, LZO
AES
Да
Да
?
Планируется
[47]
Нет
?
С помощью tar
Да
Нет
GPLv2
Нет
Репозиторий состоит из неизменяемых файлов.
Инкременты на основе файлов
This article or section needs expansion.
Reason:
Необходимо заполнить пропущенные ячейки. (Discuss in
Talk:Synchronization and backup programs (Русский)
)
Когда файл изменяется, эти приложения сохраняют новую его версию полностью в следующем снимке. В отличие от
инкрементов на основе фрагментов
, они менее экономно расходую место, особенно когда есть большие файлы с малыми изменениями; с другой стороны, зачастую такие резервные копии могут быть открыты без использования создавшего их приложения.
Легенда:
Жёсткие ссылки
: хранение неизменённых файлов в виде жёстких ссылок на предыдущие версии.
Название
Пакет
Реализация
Сжатое хранилище
Зашифрованное хранилище
Delta transfer
Зашифрованная передача
Метаданные ФС
Лёгкий доступ
Возобновляемая
Переименования
Жёсткие ссылки
CLI
Другие интерфейсы
Лицензия
Другие платформы
Поддержка
Особенности
Back In Time
backintime
AUR
Python, rsync, diff
Нет
Нет
rsync
rsync
rsync
Да
Нет
Нет
Да
[48]
[
устаревшая ссылка
2023-10-29 ⓘ]
Да
Qt
GPLv2
Да
DAR
(Disk ARchive)
dar
AUR
C++
Специальный формат архивов
Да
Да
Да
?
?
?
?
Нет
[49]
Да
dargui
AUR
GPL
FreeBSD, NetBSD, Windows, macOS
Да
Link-Backup
[
устаревшая ссылка
2022-09-23 ⓘ]
link-backup
AUR
[
ссылка недействительна
: package not found]
Python 2
Нет
Нет
?
SSH
?
?
Да
Да
Нет
[50]
[
устаревшая ссылка
2022-09-23 ⓘ]
Да
Нет
MIT
Нет
Утилита копирует себя на сервер.
rdup
rdup
AUR
C
tar.gz
gpg, blowfish и другие
?
?
?
Да
?
Нет
Да
Да
Нет
GPLv3
Да
[51]
Набор утилит командной строки.
rsnapshot
rsnapshot
rsync
Нет
Нет
Да
Да
?
?
?
?
Да
[52]
Да
Нет
GPLv2
Win32
Да
[53]
TimeShift
timeshift
rsync
Нет
Нет
rsync
rsync
?
?
?
?
Да
Да
GTK
GPLv3
Создано для резервного копирования систем на выбранные устройства.
Да
[54]
Сетевые решения
This article or section needs expansion.
Reason:
Необходимо заполнить пропущенные ячейки. Колонка
Зашифрованная передача
: Что означает
Только при сетевой передачи данных
? (Discuss in
Talk:Synchronization and backup programs (Русский)
)
Эти приложения были разработаны для централизованного архивирования данных с нескольких машин, соединённых по сети, с использованием клиент-серверной модели. В целом они более сложны в развёртывании в сравнении с реализациями для
одного устройства
.
Легенда:
Направление
: Pull: сессия архивирования инициализируется сервером. Push: сессия архивирования инициализируется клиентом.
Тип инкремента
: стратегия уменьшения дублирования данных для экономии места (помимо сжатия).
на основе файлов
: при изменении файла в новом снимке сохраняется новая версия целиком.
с жёсткими ссылками
: хранение неизменённых файлов в виде жёстких ссылок на предыдущие версии.
на основе блоков данных
: при изменении файла в снимке хранятся только изменённые части.
Название
Пакет
Реализация
Направление
Сжатое хранилище
Зашифрованное хранилище
Delta transfer
Зашифрованная передача
Метаданные ФС
Лёгкий доступ
Возобновляемая
Переименования
Тип инкремента
CLI
Другие интерфейсы
Лицензия
Другие платформы
Поддержка
Особенности
BackupPC
backuppc
Perl
Pull
Да
Нет
Да
Да
Да
Нет
Да
?
На основе файлов, c жёсткими ссылками
[55]
Нет
Web
GPLv2
Любые (нет необходимости в клиенте)
Да
Идентичные файлы резервных копий одного или более клиентов хранятся только в одном экземпляре.
Bacula
bacula*
в
AUR (Русский)
C++
Pull
Да
Да
?
Да
?
?
Да
?
На основе файлов
[56]
Да
GUI, Web
AGPLv3
Windows, macOS
Да
Bareos
bareos*
в
AUR (Русский)
C++ (Bacula fork)
?
?
?
?
?
?
?
?
?
?
?
?
AGPLv3
Да
burp
burp-backup
AUR
librsync
Push
Да
Да
Да
Да
Да
?
Да
?
На основе блоков данных
[57]
Да
burp-ui
AGPLv3
Windows, macOS
Да
SafeKeep
safekeep
AUR
rdiff-backup
Pull
Нет
Нет
?
Да
?
?
?
?
На основе блоков данных
[58]
Да
Да
GPL
Нет
Утилита интегрируется с
LVM
и базами данных для создание постоянных резервных копий. Также поддерживается регулирование пропускной способности канала.
Synbak
[
устаревшая ссылка
2020-08-06 ⓘ]
synbak
Надстройка над несколькими утилитами
?
Да
Нет
Да
Да
Да
?
?
?
?
Нет
Web
GPLv3
Да
Совмещает несколько способов резервного копирования.
UrBackup
urbackup*
в
AUR (Русский)
C++
Pull
Нет
Нет
Да
Только при сетевой передачи данных
Да
Да
Да
Да
На основе файлов, c жёсткими и символьными ссылками ссылки
[59]
/CoW-снимки на основе блоков данных
[60]
Да (client)
GUI, Web
AGPLv3+
Windows, macOS
Да
Идентичные файлы резервных копий одного или более клиентов хранятся только в одном экземпляре. Поддерживается интеграция с LVM, dattobd и btrfs для создания снимков ФС.
Системы управления версиями
Хотя
системы управления версиями
чаще всего используются для исходного кода, они могут хранить любые файлы.
См.
List of applications/Utilities#Version control systems
и
dotfiles
.
Смотрите также
Краткий обзор open source средств резервного копирования
Backing up Linux and other Unix(-like) systems
Exhaustive list of backup solutions for Linux
Performance comparison of five remote incremental backup tools: Rsync, Rdiff-backup, Duplicity, Areca and Link-Backup
Mirroring an Entire Site using Rsync over SSH
Performance comparison of five remote incremental backup tools: Rsync, Rdiff-backup, Duplicity, Areca and Link-Backup
rsync-snapshots.sh rsync-snapshot.sh
— Local and remote snapshot backup using rsync with hard links