Как можно ускорить команду поиска? все, что я ищу, - это полный список возможных каталогов с аннотированными проблемными файлами.

У меня есть старый жесткий диск IDE 2002 года с 156 ГБ данных в одном разделе EXT3. Я пометил несколько лет назад как наличие ошибок smartctrl. У меня больше нет материнской платы с портами IDE, и smartctrl не работает с моим адаптером IDE-USB.

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

Пока что из 63404 файлов 348 приводят к ошибкам ввода / вывода. 1/2 процента. Я счастлив слепо избавиться от них.

ОБНОВЛЕНИЕ: заняло около 5 часов, чтобы найти, чтобы закончить. Было найдено 115000 файлов, 800 из которых имели ошибки ввода / вывода.

2 ответа2

4

Тот факт, что вы называете этот диск "старым жестким диском IDE" по крайней мере "лет назад", заставляет меня предположить, что он имеет очень ограниченную емкость по сравнению с современными дисками. (Изменить: Вы отредактировали вопрос, чтобы сказать 156 ГБ. Это определенно мало по сегодняшним меркам.)

find скорее всего не выдает ошибки ввода-вывода; это могло бы сообщать о них. Ошибки исходят от ядра, которое отвечает на проблемы, о которых сообщает накопитель.

Предполагая, что у вас достаточно свободного места для создания образа диска, лучше всего использовать для этого ddrescue .

ddrescue предназначен специально для обработки маргинальных носителей и делает это значительно лучше, чем старая рабочая лошадка dd даже когда последняя используется, например, с conv=noerror . Есть две большие вещи, которые ddrescue делает лучше, чем dd:

  • Это гарантирует, что местоположение данных не меняется. Если блок данных находится в одном месте на источнике и доступен для чтения, он будет размещен в том же месте на цели. Это означает , что такие вещи , как файловая система зачетов не изменяются, гарантируя , что данные для чтения остается неизменным.
  • Он начинает читать большие куски, отмечая, где существуют проблемы, а затем возвращается и читает (и записывает) все обнаруженные проблемные области. Для предельных носителей это дает вам изображение, содержащее большинство данных в течение первого прохода, и для каждого последующего прохода оно становится все более и более полным.

У этого также есть хороший показ прогресса, но вы можете получить это также от dd .

Ничто из этого не зависит от данных SMART.

Если у вас есть образ диска (или всех его разделов), он / она может быть смонтирован в виде петли для дальнейшего анализа и извлечения данных. Поскольку этот диск имеет только один раздел, самый простой подход может состоять в том, чтобы просто создать образ этого раздела, поскольку он избегает необходимости иметь дело со смещениями устройства обратной связи и такими вещами. Вы даже можете сделать дополнительную копию, сохранить одну на случай, если вы все испортите, и попытаться привести в порядок другую, запустив на ней e2fsck . Это даст вам доступ к данным с минимальным побочным ущербом, хотя некоторые части файловой системы, вероятно, будут недоступны из-за повреждения метаданных файловой системы.

1

Умные ошибки указывают на неисправность накопителя, поэтому, вероятно, поиск занимает так много времени.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .