Как восстановить информацию с проблемного харда Seagate Momentus 5400.6 500 GB ¶
От: Nik 6 марта 2018 г. 17:26
Возникла проблема с диском [b]Seagate Momentus 5400.6 500 GB 2.5"[/b]
Функционально это стандартный внешний винт в коробке с usb-адаптером, который в винде распознается как [b]PI-357 External HDD USB Device[/b]. Разбит на 4 раздела. Использовался для резервного копирования. Иногда переносился в чехле и кармане, но последнее время (месяца 3) просто лежал. Физическим воздействиям не подвергался.
Понадобилось взять с него бэкап (архив 68gb без сжатия и пароля). При копировании обычным способом начал выдавать ошибку. Нештатными средствами ([b]TeraCopy, Non-stop copy[/b]) тоже не получилось, после 62% весь выход сбойный. Тоже самое при попытке сделать образ тома через [b]R-Studio[/b] и ей подобных (либо виснут, либо льют мусор). Система, при этом, диск видит, но обратится к его содержимому без переподключения уже не получается.
HDD не новый, гарантия давно кончилась, поэтому спокойно вынул жесткий из коробки, аккуратно снял плату, почистил контакты и подсоединил через [b]SATA [/b](менял режимы [b]IDE [/b]и [b]ACHI[/b]). Но проблему это не решило, поведение харда осталось прежним.
Начал вникать в тему, скачал [b]Викторию[/b], снял смарт. Прилагаю:
Понимаю что ремап уже ничего не даст, однако пробежался простым тестом. Результат:
В определенный момент в лог начинают валить ошибки, диск также продолжает быть виден системой (в управлении дисками даже исправен), можно зайти в его разделы через проводник, но нельзя прочитать ни один файл. Скрин:
[i](К слову сказать тоже самое происходит в [b]mhdd [/b]и [b]victoria [/b]из под [b]dos[/b])[/i]
Если переподключить, то все опять работает (и, кстати, с других разделов даже инфа копируется без ошибок, запись не пробовал).
Где-то слышал, что, чисто под виндой, при натыкании на сбойный сектор может зависать драйвер или сам контроллер... Не проблема. "Покурил" маны. Накатил убунту. [b]df -h[/b] показывает список всех устройств и разделов, все нормально. [b]fdisk -l[/b] выводит следующее:
Чтобы монтировался только нужный раздел в режиме чтения, прописал в [b]fstab[/b] для него [b]ro[/b], для всех остальных [b]noauto[/b]. Попытался вычитать инфу с помощью [b]ddrescue[/b], надо сказать весьма гибкая тулза, аналогов по возможностям для винды не нашел. И хотя диск вылетает точно также, можно выставить тайминги, размеры пропусков, читать в любую сторону и т.д. (куча настроек, ведет лог, поддерживает переподключение). Но что-то в диске виснет при обращении к определенным секторам (а их, как оказалось, не мало), переподключаю и копирую дальше, до следующего зависания. Простое отмонтирование с последующим програмным отключением устройства не помогает. Если вырубаю устройство только програмно:
[code]umount /media/bed
hdparm -f /dev/sdb
sh -c "echo 1 > /sys/block/sdb/device/delete"[/code]
то перескан его больше не находит:
[code]sh -c "echo "'- - -'" > /sys/class/scsi_host/host0/scan"[/code]
Точнее сказать девайс не отображается через [b]fdisk -l[/b], но команда:
[code]cat /sys/block/sdb/device/state[/code]
показывает его состояние как - [b]running[/b] (естественно все делал через [b]sudo[/b] и проверял на том же жестком до зависания). Ну и что-то прочитать, все таки, можно, например [b]blockdev[/b] возвращет некоторые значения... как ни странно
Вобщем все также как и в винде - помогает только переподключение. И хотя, с помощью [b]ddrescue[/b], хард постепенно вычитывается, но, судя по всему, это займет не мало времени. Поэтому хочу поинтересоваться у более опытных людей, возможно ли как-то програмно сбрасывать эти загадочные провисания винта? Послать ему какую-нибудь команду на вход или какие-то другие варианты.
п.с. Понимаю что диск уже не жилец, а для восстановления лучше отдать спецам, но в моем селе их просто нет.