Способы дедупликации файлов

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

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

    7 Solutions collect form web for “Способы дедупликации файлов”

    Создайте md5sum каждого файла, дубликаты md5sums предлагают (но не гарантируют) дубликаты файлов.

    Вы можете использовать dupemerge, чтобы превратить идентичные файлы в hardlinks. Тем не менее, это займет очень много времени . SHA (или MD5) хэши файлов почти наверняка будут работать быстрее, но вам придется больше работать над поиском дубликатов. Вероятность случайного столкновения настолько низка, что на самом деле вы можете его игнорировать. (Фактически, многие продукты дедупликации уже делают это.)

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

    Ну, если у вас есть такая возможность, вы можете настроить дедуплицирующую файловую систему и поместить на нее свои резервные копии. Это позволит не только дедуплицировать целые файлы, но и аналогичные файлы. Например, если у вас один и тот же JPEG в нескольких местах, но с разными тегами EXIF ​​для каждой версии, дедуплицирующая файловая система будет хранить данные только один раз.

    Дедупликационные файловые системы включают в себя lessfs, ZFS и SDFS.

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

    Если вы не согласны, я предлагаю EasyDuplicateFinder . Однако, как я уже упоминал выше, потребуется около одного дня на 5 ГБ файлов.

    И еще одно замечание: Crashplan делает то, что вы делали раньше, но гораздо более организованным, не-версионным способом.

    Другая возможность, предполагающая, что машины, которые вы создаете резервную копию, будет поддерживать ее, – это использовать что-то вроде rsync .

    Если вы используете rsync от A до B, то от C до B, затем от D до B и т. Д. Точные дубликаты (то есть по имени файла) будут удалены (и синхронизированы между резервными копиями компьютеров).

    Однако, если вы не хотите, чтобы все они синхронизировались друг с другом, это не лучший способ.

    Для файлов изображений используйте findimagedupes . Он также упакован в debian .

    Жесткие ссылки выполняют дедупликацию только в том случае, если весь файл идентичен. Если заголовки (EXIF, ID3, …) или метаданные (владелец) отличаются друг от друга, они не будут связаны.

    Если у вас есть шанс использовать файловую систему с поддержкой дедупликации блоков (ZFS, btrfs, …), используйте это вместо этого. Я очень люблю автономную (aka batch ) поддержку вывода btrfs, которая поддерживает дедупликацию на уровне уровня и не постоянно потребляет огромные объемы памяти (как онлайн-дефолт ZFS).

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

    См. https://btrfs.wiki.kernel.org/index.php/Deduplication для отличного обсуждения.

    Interesting Posts

    android.content.res.Resources $ NotFoundException: Идентификатор ресурса строки # 0x0

    Работает ли C # 6.0 на .NET 4.0?

    Айви, какая главная конфигурация и почему она не тянет jvyaml?

    Как загрузить и сохранить изображение в Android

    Не удалось создать путь PKIX: не удалось найти допустимый путь сертификации для запрошенной цели

    Почему компилятор не разрешает std :: string внутри union?

    Как использовать специальный символ в NSURL?

    Android: как сделать кликабельное изображение карты с каждой страной, производя другое действие?

    Как слить скаляр в вектор без компилятора, теряющего инструкцию обнуления верхних элементов? Ограничение дизайна в встроенных средах Intel?

    Что мне нужно для разделения раздела для Windows и Linux?

    У Skype есть комбинация клавиш для переключения между цепочками?

    Как я могу получить поведение Fbox 33.x Flexbox в FF 34.x?

    Горячая клавиша для панели инструментов закладки в Firefox

    URL-сопоставление с C # HttpListener

    Как установить сервер по умолчанию для помощников URL-адресов в рельсах?

    Давайте будем гением компьютера.