Организация домашнего каталога или даже системы может быть особенно сложной, если у вас есть привычка скачивать всевозможные материалы из Интернета.
Часто вы можете обнаружить, что вы загрузили один и тот же mp3, pdf, epub (и все другие расширения файлов) и скопировали его в разные каталоги.
Это может привести к тому, что ваши каталоги будут загромождать всевозможные бесполезные дублированные файлы.
В этом учебном пособии вы узнаете, как находить и удалять дубликаты файлов в Linux, используя инструменты rdfind и fdupes командной строки.
Обратите внимание: всегда будьте осторожны с тем, что вы удаляете в своей системе, поскольку это может привести к нежелательной потере данных. Если вы используете новый инструмент, сначала попробуйте его в тестовом каталоге, где удаление файлов не будет проблемой.
Rdfind – находит дубликаты файлов в Linux
Это бесплатный инструмент, используемый для поиска дубликатов файлов через или в нескольких каталогах.
Он использует контрольную сумму и поиск дубликатов на основе файла содержит не только имена.
Rdfind использует алгоритм для классификации файлов и определяет, какой из дубликатов является исходным файлом, и рассматривает остальные как дубликаты.
Правила ранжирования:
- Если A было обнаружено при сканировании входного аргумента раньше B, A более ранжировано.
- Если A было найдено ниже B, то A более ранжировано.
- Если A было найдено раньше, чем B, то A более ранжировано.
Последнее правило используется, особенно в тех случаях, когда два файла находятся в одном каталоге.
Чтобы установить rdfind в Linux, используйте следующую команду в соответствии с вашим дистрибутивом Linux.
$ sudo apt-get install rdfind [На Debian/Ubuntu] $ sudo yum install epel-release && $ sudo yum install rdfind [На CentOS/RHEL] $ sudo dnf install rdfind [На Fedora 22+]
Чтобы запустить rdfind в каталоге, просто введите rdfind и целевой каталог. Вот пример:
$ rdfind /home/user
Как вы можете видеть, rdfind сохранит результаты в файле с именем results.txt, который находится в том же каталоге, откуда вы запускали программу.
Файл содержит все повторяющиеся файлы, найденные rdfind.
Вы можете просмотреть файл и удалить дубликаты файлов вручную, если хотите.
Другое дело, что вы можете использовать опцию -dryrun, которая будет предоставлять список дубликатов без каких-либо действий:
$ rdfind -dryrun true /home/user
Когда вы найдете дубликаты, вы можете заменить их c hardlinks.
$ rdfind -makehardlinks true /home/user
И если вы хотите удалить дубликаты, вы можете запустить:
$ rdfind -deleteduplicates true /home/user
Чтобы проверить другие полезные параметры rdfind, вы можете использовать руководство rdfind.
$ man rdfind
остальные инструменты вы можете найти тут: