Логотип

6 лучших инструментов для поиска и удаления дубликатов файлов в Linux

6 лучших инструментов для поиска и удаления дубликатов файлов в Linux

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

Часто бывает так, что вы скачиваете один и тот же mp3-файл, pdf-файл и epub-файл (а также файлы с другими расширениями) и копируете их в разные каталоги. Из-за этого ваши каталоги могут быть переполнены бесполезными дубликатами.

Из этого руководства вы узнаете, как находить и удалять дубликаты файлов в Linux с помощью инструментов командной строки rdfindfdupes, и rmlint, а также с помощью графических инструментов DupeGuru и FSlint.

Предупреждение: всегда будьте осторожны при удалении данных в вашей системе, так как это может привести к нежелательной потере информации. Если вы используете новый инструмент, сначала попробуйте его в тестовом каталоге, где удаление файлов не вызовет проблем.

 

1. Rdfind — поиск дубликатов файлов в Linux

Rdfind — это сокращение от redundant data find, бесплатного инструмента командной строки, который используется для поиска дубликатов файлов в нескольких каталогах или внутри них. Он рекурсивно сканирует каталоги и находит файлы с идентичным содержимым, что позволяет выполнять соответствующие действия, например удалять или перемещать дубликаты.

Rdfind

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

Правила ранжирования таковы:

  • Если A было найдено при сканировании входного аргумента раньше, чем B, то A имеет более высокий приоритет.
  • Если A было найдено на глубине меньшей, чем B, то A имеет более высокий рейтинг.
  • Если A было найдено раньше, чем B, то A имеет более высокий приоритет.

 

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

 

Установите Rdfind в Linux

Чтобы установить rdfind в Linux, используйте следующую команду в зависимости от вашего дистрибутива Linux.

$ sudo apt install rdfind [В Debian, Ubuntu и Mint]
$ sudo yum install rdfind [В RHEL/CentOS/Fedora и Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/rdfind [В Gentoo Linux]
$ sudo apk add rdfind [В Alpine Linux]
$ sudo pacman -S rdfind [В Arch Linux]
$ sudo zypper install rdfind [В OpenSUSE] 

 

Чтобы запустить rdfind в каталоге, просто введите rdfind и укажите целевой каталог.

$ rdfind /home/user

 

Как видите, rdfind сохраняет результаты в файле results.txt, расположенном в том же каталоге, откуда вы запустили программу. Файл содержит все дубликаты файлов, обнаруженные rdfind. При желании вы можете просмотреть файл и удалить дубликаты вручную.

Читать  Как исправить зависания Ubuntu, сбои или зависания системы

Ещё один способ — использовать -dryrun и опцию, которая предоставит список дубликатов без каких-либо действий:

$ rdfind -dryrun true /home/user

 

Когда вы найдёте дубликаты, вы можете заменить их жёсткими ссылками.

$ rdfind -makehardlinks true /home/user

 

А если вы хотите удалить дубликаты, вы можете запустить.

$ rdfind -deleteduplicates true /home/user

 

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

$ man rdfind

 

2. Fdupes — поиск дубликатов файлов в Linux

Fdupes — это ещё одна программа командной строки, которая позволяет находить дубликаты файлов в вашей системе. Она выполняет рекурсивный поиск в каталогах, сравнивая размеры и содержимое файлов для выявления дубликатов.

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

  • Сравнение частичных сигнатур md5sum
  • Сравнение полных сигнатур md5sum
  • проверка путём побайтового сравнения

 

Как и rdfind, он имеет схожие параметры:

  • Рекурсивный поиск
  • Исключить пустые файлы
  • Показывает размер дубликатов файлов
  • Немедленно удаляйте дубликаты
  • Исключить файлы с другим владельцем

 

Установите Fdupes в Linux

Чтобы установить fdupes в Linux, используйте следующую команду в зависимости от вашего дистрибутива Linux.

$ sudo apt install fdupes [В Debian, Ubuntu и Mint]
$ sudo yum install fdupes [В RHEL/CentOS/Fedora и Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/fdupes [В Gentoo Linux]
$ sudo apk add fdupes [В Alpine Linux]
$ sudo pacman -S fdupes [В Arch Linux]
$ sudo zypper install fdupes [В OpenSUSE] 

 

Fdupes аналогичен rdfind. Просто введите команду, а затем укажите каталог, который нужно просканировать.

$ fdupes <dir>

 

Чтобы выполнить рекурсивный поиск файлов, необходимо указать параметр -r следующим образом.

$ fdupes -r <dir>

 

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

$ fdupes <dir1> -r <dir2>

 

Чтобы fdupes рассчитал размер дубликатов файлов, используйте опцию -S .

$ fdupes -S <dir>

 

Чтобы получить сводную информацию о найденных файлах, используйте опцию -m .

$ fdupes -m <dir>

 

Наконец, если вы хотите удалить все дубликаты, используйте -d или аналогичный параметр.

$ fdupes -d <dir>

 

Fdupes спросит, какой из найденных файлов нужно удалить. Вам нужно будет ввести номер файла:

Решение, которое точно не рекомендуется, — использовать опцию -N, которая приведёт к сохранению только первого файла.

$ fdupes -dN <dir>

 

Читать  Команда screen в Linux с примерами

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

$ fdupes -help

 

3. Jdupes — улучшенная версия Fdupes

jdupes — это более современная версия классического fdupes, но она намного быстрее, активно поддерживается и имеет множество функций, которых нет в fdupes.

Как и fdupes, он находит дубликаты файлов, сравнивая их содержимое, но он оптимизирован для работы с большими наборами данных и сложными сценариями использования.

Ключевые улучшения по сравнению с fdupes:

  • Значительно более быстрое сканирование больших каталогов (благодаря улучшенным алгоритмам и распараллеливанию).
  • Для экономии места можно заменить дубликаты жёсткими ссылками.
  • Возможность создания символических ссылок вместо удаления.
  • Более подробный вывод данных и расширенные возможности сценариев.
  • Более безопасные способы удаления с интерактивными подсказками.

 

Установите Jdupes в Linux

Чтобы установить Jdupes в Linux, используйте следующую команду в зависимости от вашего дистрибутива Linux.

sudo apt install jdupes # Debian, Ubuntu, Mint
sudo yum install jdupes # RHEL, CentOS, Fedora, Rocky, AlmaLinux
sudo pacman -S jdupes # Arch Linux
sudo zypper install jdupes # openSUSE

 

Примеры использования:

jdupes <dir> # сканирование каталога
jdupes -r <dir> # рекурсивное сканирование
jdupes -d <dir> # удаление дубликатов в интерактивном режиме
jdupes -L <dir> # замена дубликатов жёсткими ссылками
jdupes -s <dir> # замена символическими ссылками 

 

Проверьте дополнительные параметры с помощью:

jdupes --help

 

4. Rmlint — удаление дубликатов файлов

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

Установите Rmlint в Linux

Чтобы установить Rmlint в Linux, используйте следующую команду в зависимости от вашего дистрибутива Linux.

$ sudo apt install rmlint [В Debian, Ubuntu и Mint]
$ sudo yum install rmlint [В RHEL/CentOS/Fedora и Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/rmlint [В Gentoo Linux]
$ sudo apk add rmlint [В Alpine Linux]
$ sudo pacman -S rmlint [В Arch Linux]
$ sudo zypper install rmlint [В OpenSUSE] 

 

5. dupeGuru — поиск дубликатов файлов в Linux

dupeGuru — это кроссплатформенный инструмент с открытым исходным кодом, который можно использовать для поиска дубликатов файлов в системе Linux. Инструмент может сканировать имена файлов или их содержимое в одной или нескольких папках. Он также позволяет находить имена файлов, похожие на те, которые вы ищете.

Читать  Лучшие веб-инструменты командной строки для Linux

dupeGuru доступен в разных версиях для платформ Windows, Mac и Linux. Благодаря функции быстрого нечеткого сопоставления вы сможете найти дубликаты файлов за минуту. Программа настраивается, вы можете выбрать нужные дубликаты и удалить ненужные файлы из системы.

 

Установите dupeGuru в Linux

Чтобы установить dupeGuru в Linux, используйте следующую команду в зависимости от вашего дистрибутива Linux.

$ sudo apt install dupeguru [В Debian, Ubuntu и Mint]
$ sudo yum install dupeguru [В RHEL/CentOS/Fedora и Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/dupeguru [В Gentoo Linux]
$ sudo apk add dupeguru [В Alpine Linux]
$ sudo pacman -S dupeguru [В Arch Linux]
$ sudo zypper install dupeguru [В OpenSUSE] 

 

6. Czkawka — современный инструмент для поиска дубликатов и очистки файлов в Linux

Czkawka (произносится как «ч-ка-вка» — в переводе с польского «икота») — это бесплатная утилита с открытым исходным кодом, написанная на Rust, которая помогает находить и удалять ненужные файлы в вашей системе. Она разработана как быстрая, безопасная и лёгкая альтернатива более старым инструментам, таким как FSlint.

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

[ВНИМАНИЕ] — поддержка snap-версии этого приложения прекращена. Вы можете использовать другие форматы пакетов, например flatpak, или готовые двоичные файлы из официального проекта на GitHub.

Czkawka не входит в состав большинства репозиториев Linux, но вы можете легко установить его с помощью Flatpak или Snap:

# Установка через Flatpak (рекомендуется) 
flatpak install flathub com.github.qarmin.czkawka

# Установка через Snap
sudo snap install czkawka

 

После установки вы можете запустить его из меню приложений (для графического интерфейса) или из терминала с помощью czkawka_cli.

czkawka_cli

 

Заключение

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

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

Редактор: AndreyEx

Рейтинг: 5 (1 голос)
Если статья понравилась, то поделитесь ей в социальных сетях:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Загрузка...

Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала