The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

Рекомендации по восстановлению данных со сбойного накопителя
USB флехи и SSD предмет простой: или прочиталось или нет. Шансов что при
повторной попытке не читавшийся сектор прочитается - мало. Если заряд в флехе
утек, то утек. Если там что-то более системное, слет таблиц трансляции, кончина
(фирмвари) контроллера и прочее - ddrescue опять же не поможет. Это или
спецутилиты под конкретный контроллер или подпайка к NAND и вычитывание на
программаторе. Сам не сделаешь с такими вопросами.

HDD - интереснее, механика мрет разнообразно. Довольно часто с цатой попытки
чтение нестабильного сектора все же проскакивает. Если наивно монтировать диск
средствами ОС, ядро наткнувшись на read error быстро сдастся, файлов не
получишь, если не прочиталось по быстрому что-то важное типа суперблока, таблиц
разделов и проч. А если построить образ за несколько проходов - может выйти
довольно живым, монтируемым и с доступными файлами, плюс-минус то, что не
прочиталось совсем.


Идея такая, что проходов чтения несколько:

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

2) Когда образ из 1) готов, дочитываем более дотошно, с повторными попытками и
прочими камасутрами, например реверс направления чтения или что еще, в надежде
что чтение все же проскочит. Количество "уточняющих" проходов - пока не
задолбаешься, или пока не перестанут вычитываться сектора. Или как вариант
пациент может умереть на очередной итерации, но это уже не важно, образ уже
достаточно хороший, это была минимизация потерь. Насколько получится - столько
и будет. Чем больше тем лучше, но HDD может решить иначе. Если не идиотничать,
получишь большинство файлов в целости и сохранности.

Некоторые моменты:

1) Читать имеет смысл по размеру блока ECC. У старых жестких дисков 512 байтов.
У новых ("advanced format") - 4096 байтов. Чем меньше блок тем медленнее
чтение. Прочлось-не прочлось индивидуально для ECC-блока ("hardware sector").
Необоснованно крупные блоки увеличивают потери данных. Если читать блоком
мегабайт - даже если не прочтётся 1 сектор, чтение завалится для всего
мегабайта и потеряется целиком. А если это 512 байтов сектора и не прочелся 1
сектор а остальные ок - мы получим почти мегабайит данных, кроме 1 сектора.
Разница однако. Особенно если это партишн или суперблок, без которых так сходу
ФС вообще не смонтируется.

2) При желании этим заниматься неплохо бы узнать кто такие UNC, IDNF, defect
lists, атрибуты smart и проч, чтобы хотя-бы примерно понимать на что нарвался и
перспективы (pending sectors, ...). Неплохо бы понимать логи/битмап чтения
используемой софтины. По крайней мере чтобы не напортачить. Например если при
разных попытках использовать разные размеры блока - есть риск ушатать образ,
когда утилита читанет очередные сектора в неправильное смещение образа, считая
не тот размер блока который реально был. Do not use force, try to think, Luke.

3) В тяжелых случаях может потребоваться подкрутить таймауты ядра на link
reset, число попыток и все такое прочее. Иначе ядро разочаруется в HDD и
потеряет его. "Насовсем" - до ребута. Но это лечится - можно вручную
пересканировать и найти пропавший жесткий диск.

4) Перезагружать и особенно выключать компьютер с нестабильным жестким диском -
худшая идея на свете. Если жесткий диск не стартанет - облом стопроцентный,
после этого данные сможет вынуть только серьезный специалист. Необдуманный
ресет может облегчить кошелек на очень круглую сумму. Если жесткий диск все-же
потерялся, как в 3) - гуглишь как вызвать рескан жестких дисков, изучаешь /sys
и заново ресканишь свой жесткий диск. Через минутку-другую после отвала.
Фирмварь в это время может вкалывать пытаясь ремапнуть проблемный сектор, ядро
же думает что жесткий диск повис и пытается link reset устроить. Фирмвара может
думать довольно крепко, не ответит даже на IDENTIFY пока не закончит. В этом
случае ядро очень огорчается и считает девайс мертвым. Так что подождать
немного до того как ресканить. Никаких ребутов и выключений питания - после них
жесткий диск может не запуститься совсем.

5) Если бэдов всего несколько штук, можно записать в них что-нибудь, жесткий
диск проверит читается ли это и если нет - переназначит на резервные. Но это
имеет смысл только если бэдов не больше 3-5 штук. Со стукнутым жестким диском
это или самообман или скрытые грабли для тех кому его всучишь, разрушения на
этом не закончатся, по мере разлета пыли бэдов станет больше.

6) Если порушено много - осторожно! После того как у жесткого диска закончится
grown defect list (таблица ремапа, типично жесткий диск может перенести
2000-4000 проблемных секторов) - может случиться все что угодно. WD уходят в
что-то типа safe mode, считая девайс слишком дохлым, и обычными способами уже
ничего не получишь. ATA командами "read sector" - читается. Но вот всякие NCQ и
READ MULTI отваливаются, ядро так с наскока получает от ворот поворот и видит
сплошные read error. Наверное можно переубедить, заставив забить на NCQ и
читать по 1 сектору, но - лучше не нарываться.
 
28.02.2018 , Автор: Аноним , Источник: https://www.opennet.ru/openforum/vs...
Ключи: disk, bad, sector, ddrescue / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Диски и файлы / Диагностика и Восстановление после сбоя

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, Аноним (-), 22:53, 28/02/2018 [ответить] [показать ветку] [···]     [к модератору]
  • +/
    Спасибо, познавательно Лично я до чтения статьи ограничился бы одним проходом ... весь текст скрыт [показать]
     
     
  • 2.2, Аноним (-), 11:09, 01/03/2018 [^] [ответить]     [к модератору]  
  • +/
    Не нужно складывать все эти разы Утилита ddrescue, например, умеет строить ma... весь текст скрыт [показать]
     
     
  • 3.5, Аноним (-), 22:38, 01/03/2018 [^] [ответить]    [к модератору]  
  • +/
    Один раз так прочиталось, другой раз эдак. Или считаем прочитанные без ошибок данные всегда верными?
     
     
  • 4.6, angra (ok), 04:46, 02/03/2018 [^] [ответить]    [к модератору]  
  • +/
    > Один раз так прочиталось, другой раз эдак.

    Хоть раз такое встречал? ЕМНИП на каждый сектор идет несколько байт CRC, если совпадения не произойдет, то контроллер выдаст ошибку, а не данные. Теоретически конечно возможны изменения в данных, которые дадут такой же CRC, но маловероятны.

     
     
  • 5.11, Аноним (-), 14:50, 03/03/2018 [^] [ответить]     [к модератору]  
  • +1 +/
    Сейчас там чаще всего не CRC а FEC - код коррекции ошибок Поэтому ошибка чтения... весь текст скрыт [показать]
     
  • 4.12, Аноним (-), 14:56, 03/03/2018 [^] [ответить]     [к модератору]  
  • +/
    У современных накопителей довольно мощные коды FEC, поэтому отдавать разные данн... весь текст скрыт [показать]
     
  • 2.10, Аноним (-), 14:23, 03/03/2018 [^] [ответить]     [к модератору]  
  • +1 +/
    С этим можно налететь Вплоть до того что если у вас MBR или суперблок с 1 попыт... весь текст скрыт [показать]
     
  • 1.3, Аноним (-), 11:18, 01/03/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    Без реальных примеров - грош цена статье. Теория, теория...
     
     
  • 2.16, Аноним (-), 07:52, 07/03/2018 [^] [ответить]     [к модератору]  
  • +/
    Это из практического опыта бега по граблям, используя Linux, при желании вынуть ... весь текст скрыт [показать]
     
  • 1.4, Аноним (-), 11:56, 01/03/2018 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Довольно рваная информация, но интересная По ddrescue смысл в том, что сначала ... весь текст скрыт [показать]
     
  • 1.7, Аноним (-), 19:12, 02/03/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Какой алгоритм для восстановления microSD? Можно по шагам: подключить ридер, запустить такую-то утилиту с такими-то параметрами?
     
     
  • 2.13, Аноним (-), 03:32, 04/03/2018 [^] [ответить]     [к модератору]  
  • +1 +/
    Самое очевидное - понять что с картой и куда копать Разобраться в ситуации в Li... весь текст скрыт [показать]
     
  • 1.8, demimurych (ok), 21:03, 02/03/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Манера подачи материала отбивает желание с ним знакомиться. Это раз.
    Попытка прочитать сбойный сектор по нескольку раз известна с махровых Нортон Диск Доктор и прочих похожих утилит.
     
     
  • 2.9, Michael Shigorin (ok), 10:47, 03/03/2018 [^] [ответить]    [к модератору]  
  • +/
    > Манера подачи материала отбивает желание с ним знакомиться. Это раз.

    Это был развесистый комментарий в обсуждении новости о ddrescue, если что.  А в советы его предложил вытащить я, так что и претензии ко мне.

     
  • 2.14, Аноним (-), 03:58, 04/03/2018 [^] [ответить]     [к модератору]  
  • +1 +/
    Это вообще по хорошему должно бы быть где-то в wiki и отрихтовано Если хотите и... весь текст скрыт [показать]
     
  • 1.15, illkman (?), 21:44, 05/03/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    На pc3000 если нужны данные, если нет то можно добивать долбать и тп.
     
     
  • 2.17, Аноним (-), 08:14, 07/03/2018 [^] [ответить]     [к модератору]  
  • +/
    А за хлебом в магазин надо на самолете подкатывать Иначе не по пацански Если у... весь текст скрыт [показать]
     
  • 1.18, Сергей (??), 08:56, 07/03/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Не когда не доводилось восстанавливать!
    Обычно zabbix спамит об ошибках диска.
    Идешь в магазин и покупаешь новый диск.

     
     
  • 2.20, Crazy Alex (ok), 15:58, 19/03/2018 [^] [ответить]    [к модератору]  
  • +/
    Особенно о проблемах на компе родителей, ноутбуке жены и так далее, угу. Face it - большинство "простых пользователей" бекапов не делает. А жаловаться всё равно потом к кому-то бегут.
     
     
  • 3.21, Аноним (-), 13:44, 24/03/2018 [^] [ответить]    [к модератору]  
  • +/
    А еще Zabbix не помогает если кто-то по запаре махнул рукой и коробка с внешним диском улетела со стола.
     
  • 1.19, L (??), 18:14, 09/03/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Прекрасный материал. Очень интересно. Автору большое спасибо.
     
  • 1.22, Аноним (-), 00:06, 09/04/2018 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Если на диске есть ценная информация, то лучше отдать в специализированный серви... весь текст скрыт [показать]
     
     
  • 2.23, Аноним (-), 08:50, 10/04/2018 [^] [ответить]     [к модератору]  
  • +/
    В идеале - да Но за услуги именно хороших профессионалов - дерут Потому что хо... весь текст скрыт [показать]
     
     
  • 3.24, Аноним (-), 10:32, 11/04/2018 [^] [ответить]     [к модератору]  
  • +/
    В 2011 знакомая обращалась в известный центр в Москве За восстановление морски... весь текст скрыт [показать]
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor