ddrescue даже не выводит в терминал ничего?

Вопрос или проблема

Я пытаюсь восстановить данные с жесткого диска (не примонтированного, но расположенного на /dev/sdc согласно lsblk), который работал безупречно до прошлой недели, с помощью ddrescue. Прошло несколько лет с тех пор, как я в последний раз его использовал, но поведение (или, скорее, его отсутствие), которое я наблюдаю, мне совсем не кажется знакомым. Я вызываю ddrescue следующей командой в пустой директории на диске, где я хочу сохранить результат в виде файла img:

sudo ddrescue -v -b 4096 -a 10M /dev/sdc recovery.img recovery.log

Проблема в том, что абсолютно ничего не происходит после того, как я ввел свой пароль. Спустя несколько часов в терминале нет никакого вывода, несмотря на запуск с флагом -v, и не созданы ни выходные, ни журнальные файлы. Запуск ps -e | grep ddre показывает, что процесс ddrescue запущен, но я не могу его остановить. Ничто от CtrlC в терминале, где запущен ddrescue, до kill -KILL *pid* из другого терминала не воздействует на него. Единственный способ остановить его — отключить устройство (что я сделал по ошибке и не очень хочу использовать намеренно, если только мне действительно не придется это сделать).

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


Обновление: Я перезапустил процесс после того, как по ошибке отключил диск. Я изменил команду на:

sudo ddrescue -v /dev/sdc recovery.img recovery.log

Для того чтобы сделать ее максимально общей, если я ошибся с размером блока или что-то еще. Однако он застревает в точно таком же состоянии.

.

Ответ или решение

Теория

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

Пример

Ваша проблема заключается в том, что ddrescue не создает никаких файлов или логов и не выводит информацию, несмотря на запущенный процесс. Аналогичные случаи указывают на то, что команда могла зависнуть из-за проблем с диском, который находится в критическом состоянии. Когда диск физически поврежден, он может стать крайне медленным или даже не отзываться вовсе, что мешает инструментариям, таким как ddrescue, совершать операции нормально.

Применение

Диагностика ситуации:

  1. Проверка аппаратного состояния: Подключите диск к другому порту USB или SATA и попробуйте снова. Некоторые порты могут обеспечивать недостаточное питание или сталкиваться с признаками неисправности.

  2. Журналы системы: Просмотрите системные логи с помощью dmesg, чтобы проверить наличие ошибок ввода-вывода или сообщений об аппаратных проблемах.

  3. Файловая система и права доступа: Убедитесь, что файловая система, на которую вы пытаетесь записать файл образа (recovery.img), исправна и что у вас есть необходимые права на запись.

Решение потенциальных проблем:

  1. Оптимизация команды: Для более мощного контроля используйте указатель карты (mapfile) и уменьшите скорость копирования. Возможно, ваш рабочий параметр -a 10M слишком агрессивен для текущего состояния диска, попробуйте убрать его или снизить порог авто-помощи (auto-help) до нескольких мегабайт или даже килобайт.

  2. Используйте параметры контроля:

    • Запустите ddrescue с увеличенным временем ожидания, добавив флаг --timeout=5m, который даст диску больше времени для обработки каждого запроса.
    • Добавьте флаг --retry-passes=3 для многократного повторения попыток чтения сбойных участков.
  3. Софт перезагрузка или удаленный доступ: Если процесс нельзя убить стандартными средствами, попробуйте выполнить мягкое выключение системы с последующей перезагрузкой. Это может восстановить доступ к диску без его физического отключения.

  4. Альтернативные утилиты: Возможно, стоит рассмотреть использование других утилит восстановления, таких как testdisk или photorec, которые иногда работают лучше в критических ситуациях.

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

Оцените материал
Добавить комментарий

Капча загружается...