Назад | Перейти на главную страницу

Различия и патч для больших двоичных файлов

В рамках моей работы мне регулярно нужно загружать большие файлы (например, от 512 МБ до 1 ГБ ISO). В некоторых случаях очень небольшие изменения от ISO к ISO (например, файл размером 10 МБ в ISO размером 1 ГБ). К сожалению, я не могу просто отправить измененный файл - мне нужно отправить весь ISO. Более быстрое соединение не является допустимым решением.

Есть ли какой-нибудь инструмент (желательно Linux, желательно бесплатный), который может создавать и применять различия таких больших двоичных файлов?

Я использую для этого xdelta, другие используют rdiff. Оба работают хорошо.

BSDiff более эффективен.

http://www.daemonology.net/bsdiff/ "bsdiff и bspatch - это инструменты для создания и применения исправлений к двоичным файлам. Используя суффиксную сортировку (в частности, qsufsort Ларссона и Садакана) и пользуясь тем, как изменяются исполняемые файлы, bsdiff обычно создает двоичные исправления на 50-80% меньше, чем те, которые создаются Xdelta, и на 15% меньше, чем у .RTPatch (коммерческий инструмент исправлений стоимостью 2750 долл. США за место) ».

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

Все, что вам нужно, это rdiff и cygwin1.dll, и все готово.

Можно ли синхронизировать файлы? Это поможет найти небольшие двоичные различия.