[ad_1]
Организация вашего домашнего каталога или даже системы может быть особенно сложной, если у вас есть привычка загружать всевозможные материалы из Интернета, используя свой менеджеры загрузки.
Часто вы можете обнаружить, что загрузили одни и те же mp3, pdf и epub (и все виды другие расширения файлов) и скопировал в разные каталоги. Это может привести к тому, что ваши каталоги будут загромождены всевозможными бесполезными дубликатами.
В этом руководстве вы узнаете, как находить и удалять дубликаты файлов в Linux, используя найти, фдупс, и рмлинт инструменты командной строки, а также с помощью инструментов с графическим интерфейсом, называемых ДупеГуру и FSlint.
Предупреждение: всегда будьте осторожны с тем, что вы удаляете в своей системе, так как это может привести к нежелательной потере данных. Если вы используете новый инструмент, сначала попробуйте его в тестовый каталог, где удаляются файлы не будет проблемой.
1. Rdfind — поиск дубликатов файлов в Linux
Rdfind исходит от поиска избыточных данных, который представляет собой бесплатный инструмент командной строки, используемый для поиска дубликатов файлов в нескольких каталогах или в них. Он рекурсивно сканирует каталоги и идентифицирует файлы с идентичным содержимым, позволяя вам выполнять соответствующие действия, такие как удаление или перемещение дубликатов.
Rdfind использует алгоритм для классификации файлов и определяет, какой из дубликатов является исходным файлом, а остальные считает дубликатами.
Правила ранжирования таковы:
- Если А был обнаружен при сканировании входного аргумента раньше, чем Б, А имеет более высокий рейтинг.
- Если А был обнаружен на глубине ниже Б, А имеет более высокий рейтинг.
- Если А был найден раньше, чем Б, А имеет более высокий рейтинг.
Последнее правило используется, в частности, когда два файла находятся в одном и том же каталоге.
Установите Rdfind в Linux
Установить найти в Linux используйте следующую команду в соответствии с вашим дистрибутивом Linux.
$ sudo apt install rdfind [On Debian, Ubuntu and Mint] $ sudo yum install rdfind [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/rdfind [On Gentoo Linux] $ sudo apk add rdfind [On Alpine Linux] $ sudo pacman -S rdfind [On Arch Linux] $ sudo zypper install rdfind [On OpenSUSE]
Бежать найти в каталоге просто введите найти и целевой каталог.
$ rdfind /home/user

Как вы видете найти сохранит результаты в файле с именем результаты.txt находится в том же каталоге, из которого вы запустили программу. Файл содержит все дубликаты файлов, которые нашел rdfind. Вы можете просмотреть файл и удалить повторяющиеся файлы вручную, если хотите.
Еще одна вещь, которую вы можете сделать, это использовать -dryrun
опция, которая предоставит список дубликатов без каких-либо действий:
$ rdfind -dryrun true /home/user
Когда вы найдете дубликаты, вы можете заменить их жесткими ссылками.
$ rdfind -makehardlinks true /home/user
И если вы хотите удалить дубликаты, вы можете запустить.
$ rdfind -deleteduplicates true /home/user
Чтобы проверить другие полезные опции найти вы можете использовать найти руководство.
$ man rdfind
2. Fdupes — поиск дубликатов файлов в Linux
Fdupes — это еще одна программа командной строки, которая позволяет вам идентифицировать дубликаты файлов в вашей системе. Он рекурсивно ищет каталоги, сравнивая размеры файлов и содержимое для выявления дубликатов.
Он использует следующие методы для определения дубликатов файлов:
- Сравнение частичных подписей md5sum
- Сравнение полных подписей md5sum
- проверка побайтового сравнения
Как найти, имеет аналогичные параметры:
- Поиск рекурсивно
- Исключить пустые файлы
- Показывает размер дубликатов файлов
- Удалять дубликаты немедленно
- Исключить файлы с другим владельцем
Установите Fdupes в Linux
Установить fdupes в Linux используйте следующую команду в соответствии с вашим дистрибутивом Linux.
$ sudo apt install fdupes [On Debian, Ubuntu and Mint] $ sudo yum install fdupes [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/fdupes [On Gentoo Linux] $ sudo apk add fdupes [On Alpine Linux] $ sudo pacman -S fdupes [On Arch Linux] $ sudo zypper install fdupes [On OpenSUSE]
Fdupes синтаксис похож на найти. Просто введите команду, а затем каталог, который вы хотите сканировать.
$ fdupes <dir>
Для рекурсивного поиска файлов необходимо указать -r
такой вариант.
$ fdupes -r <dir>
Вы также можете указать несколько каталогов и указать директор для рекурсивного поиска.
$ fdupes <dir1> -r <dir2>
Чтобы fdupes вычислил размер дубликатов файлов, используйте -S
вариант.
$ fdupes -S <dir>
Для сбора сводной информации о найденных файлах используйте -m
вариант.
$ fdupes -m <dir>

Наконец, если вы хотите удалить все дубликаты, используйте -d
такой вариант.
$ fdupes -d <dir>
Fdupes спросит, какой из найденных файлов удалить. Вам нужно будет ввести номер файла:

Решение, которое определенно не рекомендуется, состоит в том, чтобы использовать -N
вариант, который приведет к сохранению только первого файла.
$ fdupes -dN <dir>
Чтобы получить список доступных опций для использования с fdupes просмотрите страницу справки, запустив.
$ fdupes -help
3. Rmlint — удалить дубликаты файлов
Рмлинт — это инструмент командной строки, который используется для поиска и удаления дубликатов и похожих на ворсинки файлов в системах Linux. Это помогает идентифицировать файлы с идентичным содержимым, а также различные формы избыточности или мусора, такие как пустые файлы, неработающие символические ссылки и потерянные файлы.
Установите Rmlint в Linux
Установить Рмлинт в Linux используйте следующую команду в соответствии с вашим дистрибутивом Linux.
$ sudo apt install rmlint [On Debian, Ubuntu and Mint] $ sudo yum install rmlint [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/rmlint [On Gentoo Linux] $ sudo apk add rmlint [On Alpine Linux] $ sudo pacman -S rmlint [On Arch Linux] $ sudo zypper install rmlint [On OpenSUSE]

4. dupeGuru — поиск дубликатов файлов в Linux
dupeGuru — это кроссплатформенный инструмент с открытым исходным кодом, который можно использовать для поиска дубликатов файлов в системе Linux. Инструмент может сканировать имена файлов или содержимое в одной или нескольких папках. Это также позволяет вам найти имя файла, похожее на файлы, которые вы ищете.
dupeGuru поставляется в разных версиях для платформ Windows, Mac и Linux. Его функция быстрого алгоритма нечеткого сопоставления поможет вам найти дубликаты файлов в течение минуты. Его можно настраивать, вы можете извлекать точные дубликаты файлов, которые хотите, и стирать ненужные файлы из системы.
Установите dupeGuru на Linux
Установить dupeGuru в Linux используйте следующую команду в соответствии с вашим дистрибутивом Linux.
$ sudo apt install dupeguru [On Debian, Ubuntu and Mint] $ sudo yum install dupeguru [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/dupeguru [On Gentoo Linux] $ sudo apk add dupeguru [On Alpine Linux] $ sudo pacman -S dupeguru [On Arch Linux] $ sudo zypper install dupeguru [On OpenSUSE]

5. FSlint — поиск дубликатов файлов для Linux
FSlint это бесплатная утилита, которая используется для поиска и очистки различных форм мусора в файловой системе. Он также сообщает о дублирующихся файлах, пустых каталогах, временных файлах, повторяющихся/конфликтующих (двоичных) именах, неверных символических ссылках и многом другом. Он имеет режимы командной строки и графического интерфейса.
Однако важно отметить, что на момент прекращения моих знаний в сентябре 2022 г. FSlint последний раз обновлялся в 2013 году и может не поддерживаться или быть несовместимым с более новыми дистрибутивами Linux.
Установите FSlint в Linux
Установить FSlint в Linux используйте следующую команду в соответствии с вашим дистрибутивом Linux.
$ sudo apt install fslint [On Debian, Ubuntu and Mint] $ sudo yum install fslint [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/fslint [On Gentoo Linux] $ sudo apk add fslint [On Alpine Linux] $ sudo pacman -S fslint [On Arch Linux] $ sudo zypper install fslint [On OpenSUSE]

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