hdparm
удалось поговорить с приводом ¹. Вот и все, что означает «успешно». Привод сказал: «SG _IO :неверные/отсутствующие данные считывания». Я точно не знаю, что это значит², но это определенно нехорошо.hdparm
не удалось прочитать сектор .
hdparm
пошел дальше и показал буфер памяти, который должен содержать содержимое сектора, но это все нули. Это явно не то, что было прочитано с диска.
Пометка этого блока как неисправного может помочь продолжить работу с накопителем некоторое время, хотя, конечно, его следует заменить как можно скорее. (Однако плохой блок должен был быть отмечен как таковой автоматически. Я не понимаю, почему вы делаете это вручную. )Но он не позволит вам прочитать данные из этого блока.
¹ В частности, это означает, чтоHDIO_DRIVE_TASKFILE
ioctl вернул 0.
² Чтение исходного кода hdparm
показывает, что это конкретное сообщение отображается, когда sb[0] != 0x72 || sb[7] < 14 || desc[0] != 0x09 || desc[1] < 0x0c
. Я понятия не имею, что означают эти цифры.