Удаление каталогов с большим количеством жестких ссылок

Удаление каталогов с большим количеством жестких ссылок

Я пытаюсь очистить каталог, содержащий много данных (более 1 ТБ), со многими файлами, жестко связанными для экономии места. Для некоторого контекста, это диск, где мы храним наши сборки, и у нас много медиа (несколько ГБ) в каждой сборке, поэтому мы жестко связываем файл, если он идентичен предыдущему продукту сборки. Я заметил, что попытка удалить эти каталоги необычайно медленная (~5 элементов в секунду).

Я предполагаю, что удаление занимает так много времени из-за большого количества жестких ссылок на каждый файл. Можно ли что-то сделать, чтобы ускорить этот процесс, или я застрял, удаляя несколько миллионов элементов со скоростью 5/сек?

решение1

find . -inum [inode-number] -exec rm -i {} \;

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

Я предоставил интерактивный флаг, чтобы вы могли его протестировать.

О, чтобы получить номер инода, вы можете сделать ls -ilэто, что вернет имя и номер инода вместе.

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

Связанный контент