Я хочу просто сделать резервную копию и архивировать файлы на нескольких машинах. К сожалению, файлы содержат несколько больших файлов, которые являются одним и тем же файлом, но по-разному хранятся на разных компьютерах. Например, может быть несколько сотен фотографий, которые были скопированы с одного компьютера на другой в качестве специальной резервной копии. Теперь, когда я хочу создать общее хранилище файлов, мне не нужно несколько копий одной фотографии.
Если я скопирую все эти файлы в один каталог, есть ли инструмент, позволяющий распознать дубликаты файлов и дать мне список или даже удалить один из дубликатов?
Ответы:
Создайте md5sum для каждого файла, дубликаты md5sum предлагают (но не гарантирует) дубликаты файлов.
источник
Вы можете использовать Dupemerge, чтобы превратить идентичные файлы в жесткие ссылки. Хотя на большом наборе файлов это займет очень много времени . Хэши файлов SHA (или MD5) почти наверняка будут работать быстрее, но вам придется приложить больше усилий, чтобы найти дубликаты. Вероятность случайного столкновения настолько мала, что на самом деле вы можете его игнорировать. (На самом деле, многие продукты дедупликации уже делают это.)
Лучшее решение для работы с фотографиями и музыкой - использовать инструменты, специально предназначенные для поиска дубликатов этих элементов. Тем более, что у вас могут не быть файлов, которые идентичны на двоичном уровне, после того, как в игру вступят такие вещи, как пометки, обрезка или различия в кодировке. Вам понадобятся инструменты, которые могут находить фотографии, которые «выглядят» одинаково, и музыку, которая «звучит» одинаково, даже если в файлы были внесены незначительные изменения.
источник
hardlink
очень быстро (для файловЧто ж, если у вас есть такая возможность, вы можете настроить дедуплицирующую файловую систему и поместить в нее свои резервные копии. Это приведет не только к дедупликации целых файлов, но и к аналогичным фрагментам файлов. Например, если у вас есть один и тот же JPEG в нескольких местах, но с разными тегами EXIF в каждой версии, дедуплицирующая файловая система сохранит данные изображения только один раз.
Дедуплицирующие файловые системы включают lessfs, ZFS и SDFS.
источник
rsync --link-dest
- ваш друг, если вы хотите сэкономить на чтении / передаче. Простое введение здесь: netfuture.ch/2013/08/…Когда я занимался такими вещами, я понял, что гораздо интереснее / экономичнее просто просматривать файлы в свободное время в течение пары недель. Вы можете отличить вещи лучше, чем ваш компьютер.
Если вы не согласны, то я предлагаю 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 для отличного обсуждения.
источник