В ходе попытки восстановить данные с неисправного жесткого диска я запускаю команду ddrescue
.
Команда выполнялась в течение 9 дней, и я подумал по звуку дисковой активности, что, возможно, она что-то делает. Все это время вывод командной строки выглядел более или менее статичным:
$ sudo ddrescue -r3 /dev/sdb /home/dave/RECOVERY/usb500.image /home/dave/recovery_usb500.logfile
Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued: 0 B, errsize: 0 B, errors: 0
Current status
rescued: 0 B, errsize: 500 GB, current rate: 0 B/s
ipos: 2539 MB, errors: 1, average rate: 0 B/s
opos: 2539 MB, time from last successful read: 9.7 d
Splitting failed blocks...
Одна часть, которая менялась, это где говорится ipos
и opos
. Потребовалось 9 дней, чтобы приблизиться 500000 MB
, что является размером неисправного диска. Однако когда он туда попал, он снова упал 0
и снова начал подниматься. Когда я пишу это, это примерно так 2580 MB
и считается.
Размер создаваемого файла изображения составляет 0 байт.
Файл журнала имеет размер около 3 МБ и выглядит следующим образом:
# Rescue Logfile. Created by GNU ddrescue version 1.14
# Command line: ddrescue -r3 /dev/sdb /home/dave/RECOVERY/usb500.image /home/dave/recovery_usb500.logfile
# current_pos current_status
0x975C3000 /
# pos size status
0x00000000 0x00862000 -
0x00862000 0x00014800 /
0x00876800 0x00800400 -
~~~~~~edited for brevity ~~~~~~~~
0x74702CCE00 0x00320000 -
0x74705ECE00 0x00025800 /
0x7470612600 0x005F3A00 -
Я начинаю беспокоиться, что это просто пустая трата времени, и никакие данные не восстанавливаются вообще.
Есть ли какие-либо указания на этот вывод, что происходит что-то полезное?
Есть ли какая-либо причина, чтобы позволить ddrescue
команде продолжать работу, как есть, или я должен остановить ее и сделать что-то еще?
Это самое последнее содержание /var/log/syslog
Jun 10 07:29:17 homebase-i3 kernel: [568470.316436] sd 5:0:0:0: [sdb] Sense Key : Medium Error [current]
Jun 10 07:29:17 homebase-i3 kernel: [568470.316443] sd 5:0:0:0: [sdb] Add. Sense: Unrecovered read error
Jun 10 07:29:17 homebase-i3 kernel: [568470.316450] sd 5:0:0:0: [sdb] CDB: Read(10): 28 00 11 ff 02 98 00 00 08 00
Jun 10 07:29:17 homebase-i3 kernel: [568470.316465] end_request: critical target error, dev sdb, sector 301925016
Jun 10 07:29:17 homebase-i3 kernel: [568470.346640] sd 5:0:0:0: [sdb] Unhandled sense code
Jun 10 07:29:17 homebase-i3 kernel: [568470.346646] sd 5:0:0:0: [sdb] Result: hostbyte=invalid driverbyte=DRIVER_SENSE
Jun 10 07:29:17 homebase-i3 kernel: [568470.346651] sd 5:0:0:0: [sdb] Sense Key : Medium Error [current]
Jun 10 07:29:17 homebase-i3 kernel: [568470.346656] sd 5:0:0:0: [sdb] Add. Sense: Unrecovered read error
Jun 10 07:29:17 homebase-i3 kernel: [568470.346662] sd 5:0:0:0: [sdb] CDB: Read(10): 28 00 11 ff 02 98 00 00 08 00
источник
--force
опции, это не правильноВы должны быть в состоянии остановиться,
ddrescue
поскольку он использует файл журнала, чтобы иметь возможность перезапустить свою работу (закрыть) с того места, где он остался. Однако я бы проверил, был ли недавно обновлен файл журнала, посмотрев на отметку времени или выполнивtail -f /home/dave/recovery_usb500.logfile
.То, что ваш файл изображения все еще настолько мал, может быть связано с тем, что еще не были успешно извлечены блоки с диска. Это, однако, было бы плохим результатом после всего этого времени работы. Предполагая, что на устройстве всего несколько плохих блоков, и что они не находятся в начале, ваш статус первых записей будет
+
. IIRCddrescue
начинает чтение до тех пор, пока не обнаружит ошибку, а затем начнет разделять оставшуюся часть диска. Ваш диск, кажется, выходит из строя с самого начала.Если
+
в журнале нет (несколько) записей и размер вашего файла все равно будет,0
я не думаю, чтоddrescue
это неправильно. Нет,+
значит, что с вашего диска ничего не удалось восстановить. Это может означать перегоревшую электронику или плохую голову, так как в случае неисправности нескольких секторов вы получите результаты намного быстрее.Что касается еще чего-то. Я предполагаю, что вы уже пытались прочитать несколько блоков с нормальным дд. Вы смотрели на системный журнал на основе этого и погуглили все найденные там сообщения?
Поиск «Result: hostbyte = invalid driverbyte = DRIVER_SENSE» приводит к нескольким интересным прочтениям (частично по-немецки) с еще несколькими предложениями:
Помимо охлаждения нечитаемого диска (с охлаждающим спреем) я не пробовал ничего из этого сам.
источник
dd
, так как я не знаю, что это такое. Мне кажется, что большая часть диска и данных не повреждена, но есть некоторая неисправность в некоторой критической области диска, где происходит индексация или просмотр файлов.ddrescue
это производной отdd
этого не останавливается, когда возникает ошибка. Вы проверяли на+
признаки?+
признаков. Есть только-
и\
знаки.ddrescue
начнется после всего этого времени. Если вы хотите, мы можем поболтать (ссылка вверху этой страницы) об этом/var/log/syslog
к вопросу.