Как оживить дохлый ssd transcend. Восстановление (разблокировка) SSD диска OCZ Vertex

Для Андроид 23.07.2019
Для Андроид

Каждый пользователь ПК рано или поздно сталкивается с проблемами, когда необходимо исправлять ошибки, которые происходят с системой. И хорошо, если они не затронули личные данные. Хуже, если придется заниматься восстановлением SSD-диска. Что же нужно для этого?

Устройство

Прежде чем разобраться с тем, как восстанавливать данные с твердотельного накопителя, стоит понимать, что же это такое. SSD - накопитель, который устанавливают в систему компьютера. Часто его сравнивают с жестким диском, поскольку оба устройства имеют одинаковые задачи. Но существует существенная разница.

Твердотельный накопитель является очень быстрым диском, который справляется с работой в несколько раз шустрее жесткого диска. Вызвано это разницей в конструкции.

Построен на магнитных дисках и считывающей головке, твердотельный накопитель работает как флешка и основан на микрочипах.

В данный момент SSD лишь набирают популярность. Их часто приобретают в пару к винчестерам и ставят на них операционную систему для быстрой загрузки. Поскольку твердотельный накопитель является чересчур дорогостоящим, жесткий диск нельзя полностью заменить SSD. Хотя в серверных станциях и геймерских системах могут устанавливать по несколько твердотельных накопителей.

Проблемы с накопителем

Как уже упоминалось, SSD популярен благодаря своей высокой скорости. Но, помимо этого, его еще считают надежным устройством. Это вызвано тем, что конструкция накопителя не имеет подвижных деталей, поэтому он не страдает от небольших повреждений, которые может не перенести винчестер.

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

Какие шансы?

Стоит сразу сказать, что восстановление данных с SSD-диска несколько отличается от того процесса, который необходим в случае с винчестером. К сожалению, есть ситуации, которые не позволяют восстановить потерянные документы.

Но в большинстве случаев вернуть файлы возможно. Пользователю придется подобрать подходящую программу и следовать инструкции.

Специальная команды

Вопрос о том, состоится ли восстановление SSD-диска, волнует многих. Ответить однозначно непросто, поскольку есть пара нюансов, которые могут повлиять на результат.

Отличительной чертой накопителя является наличие определенной команды, которая есть у SSD. TRIM отвечает за то, чтобы все данные, которые были удалены с диска, действительно уничтожались. Твердотельный накопитель полностью стирает файлы с блоков данных.

Работает эта команда очень просто. Когда пользователь удаляет документы, подает сигнал о том, чтобы файлы были уничтожены, а не откладывались в специальные блоки.

Но здесь есть один момент: конечно же, сразу документы не будут удалены. Устройство сообщит пользователю о том, что файлы удалены, но очистка блока состоится немного позже. Поэтому есть шанс быстро вернуть данные.

Все популярные производители твердотельных накопителей стараются создать универсальные устройства, которые бы отличались друг от друга лишь объемом архива. Скорость у всех накопителей одинаковая, поэтому команда TRIM будет выполнена на 100 %.

Что делать?

Если существует подобная команда, возможно ли восстановление SSD-диска? На деле получится немногое. Например, некоторые накопители не поддерживают команду полного удаления файлов, поэтому любая программа справится с восстановлением. Также TRIM может не работать в определенной операционной системе. Могут быть сложности с интерфейсом или материнской платой. USB и FireWire протоколы не поддерживают команду.

Отформатированные диски

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

Полное форматирование полностью уничтожает данные, в то время как быстрое работает с таблицами раздела информации. Поэтому любая популярная программа для восстановления справилась бы со вторым типом удаления. Но позже технология работы твердотельного накопителя изменилась. Сейчас будет непросто справиться с быстрым форматированием, не говоря уже о полном.

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

Сбой дисков

Для чего нужно восстановление SSD? Жесткий диск может быть испорчен системой или поврежден. Возможно, устройство перестало читаться, а ОС его не может обнаружить. В этом случае вернуть личные данные будет очень просто. Достаточно подобрать нужный софт и восстановить файлы.

Это связано с тем, что накопитель не может активировать TRIM. Из-за того что команда не запущена, файлы с блоков не будут удалены. Соответственно, их будет легко восстановить.

Инструкция по восстановлению

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

После этого придется подключить SSD. Многие пользователи советуют для этого использовать не интерфейс SATA, а USB. Это связано с тем, что «родной» порт может активировать команду TRIM, а соответственно, файлы будут удалены безвозвратно.

Если же подключить накопитель через USB, удаление не будет активировано, а значит, документы останутся в сохранности.

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

Результаты

Когда программа соберет всю информацию, появится таблица, в которой будут указаны все утерянные данные. Некоторые программы используют определенную маркировку. Если файл можно восстановить и сохранить на ПК, напротив будет зеленая галочка. Если он поврежден, а его восстановление под вопросом, напротив будет желтая галочка. Красный цвет сигнализирует о том, что файлы были сильно «разрушены» и есть лишь их остатки. Соответственно, подобные данные невозможно будет «реинкарнировать».

Программы

Программ для восстановления данных с твердотельного накопителя большое количество. К примеру, можно использовать Magic Partition Recovery. Утилита может справиться с удаленными разделами и испорченными секторами.

Программа работает со многими форматами файлов. Она может за короткое время просканировать накопитель, а после составить отчет. Также есть глубокий анализ SSD. В этом случае утилита работает с содержимым файлов, не используя файловую таблицу.

Magic Uneraser - еще одна программа для восстановления документов. Она отличается лишь интерфейсом от предыдущего варианта. Работает со всеми существующими форматами медийных файлов. Быстро сканирует накопитель, а также собирает отчет о восстановленных данных. Утилита совместима с жесткими дисками, твердотельными накопителями, картами памяти и флешками.

Ремонт

Говоря о восстановлении контроллера SSD-диска, стоит сказать и о физических повреждениях устройства. Есть по каким-то причинам накопитель поломался, не стоит его сразу выбрасывать. Многие специалисты говорят о том, что его вполне реально починить. Тут вопрос в другом: есть ли необходимые инструменты и навыки у пользователя?

В этом случае необходимо знать диапазон чтения, типы памяти, стандартные ошибки. Специалисты внимательно осматривают устройство, отсоединяют чипы, выбирают крепление и сканируют плату.

Конечно, подобные операции обычный пользователь совершить не сможет. Для этого нужно разбираться в устройстве накопителя, а также иметь соответствующие программы для проверки и инструменты для починки.

Приветствую всех Хабровчан!

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

Как нетрудно догадаться, с накопителями, расположенными в зеленой зоне, обычно возникает меньше всего проблем (при условии, что инженер обладает необходимым инструментарием, разумеется). А накопители из красной зоны способны доставить немало страданий как их владельцам, так и инженерам-восстановителям. В случае выхода из строя подобных SSD шансы вернуть назад потерянные данные на сегодняшний день слишком малы. Если ваш SSD расположен в красной зоне или рядом с ней, то я бы советовал делать backup перед каждой чисткой зубов.

Те, кто уже сегодня сделал backup, добро пожаловать под кат.

Тут следует сделать небольшую оговорку. Некоторые компании умеют чуть больше, некоторые чуть меньше. Результаты, проиллюстрированные на диаграмме, представляют из себя нечто среднее по индустрии по состоянию на 2015 год.

На сегодняшний день распространены два подхода к восстановлению данных с неисправных SSD.

Подход №1. Вычитывание дампов NAND flash микросхем

Решение задачи что называется в лоб. Логика проста. Пользовательские данные хранятся на микросхемах NAND flash памяти. Накопитель неисправен, но что, если сами микросхемы в порядке? В абсолютном большинстве случаев так и есть, микросхемы работоспособны. Часть данных, хранящихся на них, может быть повреждена, но сами микросхемы функционируют нормально. Тогда можно отпаять каждую микросхему от печатной платы накопителя и считать ее содержимое с помощью программатора. А после попробовать собрать логический образ накопителя из полученных файлов. Этот подход в настоящее время используется при восстановлении данных с usb flash накопителей и различных карт памяти. Сразу скажу, что работа эта не из благодарных.

Трудности могут возникнуть еще на этапе считывания. Микросхемы NAND flash памяти выпускаются в разных корпусах, и для конкретной микросхемы в комплекте с программатором может не оказаться нужного адаптера. Для таких случаев в комплекте обычно есть некоторый универсальный адаптер под распайку. Инженер вынужден, используя тонкие проводки и паяльник, соединить нужные ножки микросхемы с соответствующими контактами адаптера. Задача вполне решаемая, но требует прямых рук, определенных навыков и времени. Сам то я с паяльником знаком не близко, поэтому такая работа вызывает уважение.

Не будем также забывать, что в SSD таких микросхем будет скорее всего 8 или 16, и каждую придется распаять и считать. Да и сам процесс вычитывания микросхемы тоже быстрым не назовешь.
Ну а дальше остается только из полученных дампов собрать образ и дело в шляпе! Но тут то и начинается самое интересное. Не буду углубляться в подробности, опишу только основные задачи, которые предстоит решить инженеру и используемым им ПО.

Битовые ошибки

Природа микросхем NAND flash памяти такова, что в сохраненных данных непременно появляются ошибки. Отдельные ячейки памяти начинают читаться неверно, причем стабильно неверно. И это считается нормой ровно до тех пор пока количество ошибок внутри определенного диапазона не превысит некоторый порог. Для борьбы с битовыми ошибками используются коды коррекции (ECC). При сохранении пользовательских данных, накопитель предварительно делит блок данных на несколько диапазонов и каждому диапазону добавляет некоторые избыточные данные, которые позволяют обнаружить и исправить возможные ошибки. Количество ошибок, которые могут быть исправлены определяется мощностью кода.

Чем выше мощность кода, тем длиннее последовательность приписываемых байт. Процесс вычисления и добавления упомянутой последовательности называется кодированием, а исправления битовых ошибок - декодированием. Схемы кодирования и декодирования обычно аппаратно реализованы внутри контроллера накопителя. При выполнении команды чтения накопитель наряду с прочими операциями выполняет также исправление битовых ошибок. С полученными файлами дампов необходимо провести ту же процедуру декодирования. Для этого нужно определить параметры используемого кода.

Формат страниц микросхем памяти

Единицей чтения и записи у микросхем памяти выступает единица, именуемая страницей. Для современных микросхем размер страницы равен приблизительно 8 КБ или 4 КБ. Причем это значение не является степенью двойки, а немного больше. Т. е. внутри страницы можно разместить 4 или 8 КБ пользовательских данных и еще что-нибудь. Эту избыточную часть накопители используют для хранения кодов коррекции и некоторых служебных данных. Обычно страница поделена на несколько диапазонов. Каждый диапазон состоит из области пользовательских данных (UA) и области служебных данных (SA). Последняя как раз и хранит внутри себя коды коррекции, которые защищают данный диапазон.

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

Скремблирование VS Шифрование

Большинство современных SSD не хранят пользовательские данные в открытом виде, вместо этого они предварительно скремблируются или зашифровываются. Разница между этими двумя понятиями достаточно условна. Скремблирование - это некоторое обратимое преобразование. Основная задача этого преобразования получить из исходных данных нечто похожее на случайную последовательность бит. Данное преобразование не является криптостойким. Знание алгоритма преобразования позволяет без особого труда получить исходные данные. В случае с шифрованием знание одного лишь алгоритма ничего не дает. Необходимо также знать и ключ для расшифровки. Поэтому, если в накопителе используется аппаратное шифрование данных, и вам неизвестны параметры шифрования, то из считанных дампов данные восстановить не получится. Лучше даже не приступать к этой задаче. Благо большинство производителей честно признаются в том, что используют шифрование.

Более того, маркетологи сумели сделать из этой преступной (с точки зрения восстановления данных) функциональности опцию, которая якобы дает конкурентное преимущество над другими накопителями. И ладно если бы были отдельные модели для параноиков, в которых была бы качественно сделана защита от несанкционированного доступа. Но сейчас, видимо, настало время, когда отсутствие шифрования считается плохим тоном.
В случае со скремблированием дела обстоят не так печально. В накопителях оно реализовано как побитовая операция XOR (сложение по модулю 2, исключающее «ИЛИ») , выполненная над исходными данными и некоторой сгенерированной последовательностью бит (XOR паттерном).

Часто эту операцию обозначают символом ⊕.

Поскольку
То для получения исходных данных необходимо произвести побитовое сложение прочитанного буфера и XOR паттерна:

(X ⊕ Key) ⊕ Key = X ⊕ (Key ⊕ Key) = X ⊕ 0 = X

Остается определить XOR паттерн. В самом простом случае для всех страниц применяется один и тот же XOR паттерн. Иногда накопитель генерирует длинный паттерн, скажем длиной в 256 страниц, тогда каждая из первых 256 страниц микросхемы складывается со своим куском паттерна, и так повторяется для следующих групп из 256 страниц. Но бывают случаи и посложнее. Когда для каждой страницы индивидуально генерируется свой паттерн на основании какого-то закона. В таких случаях помимо прочего нужно еще попытаться разгадать этот закон, что уже, мягко скажем, непросто.

Сборка образа

После выполнения всех предварительных преобразований (исправление битовых ошибок, устранение скремблирования, определение формата страницы и, возможно, некоторых других) заключительным этапом идет сборка образа. В силу того, что количество циклов перезаписи для ячеек микросхемы ограничено, накопители вынуждены использовать механизмы выравнивания износа, чтобы продлить время жизни микросхем. Следствием этого является то, что пользовательские данные сохранены не последовательно, а хаотично разбросаны внутри микросхем. Очевидно, что накопителю необходимо как-то запоминать куда он сохранил текущий блок данных. Для этого он использует специальные таблицы и списки, которые так же хранит на микросхемах памяти. Множество этих структур принято называть транслятором. Вернее будет сказать, что транслятор это некая абстракция, которая отвечает за преобразования логических адресов (номера секторов) в физические (микросхема и страница).

Соответственно, чтобы собрать логический образ накопителя, необходимо разобраться с форматом и назначением всех структур транслятора, а также знать как их найти. Некоторые из структур являются достаточно объемными, поэтому накопитель не хранит ее целиком в одном месте, а она также оказывается кусками разбросана по разным страницам. В таких случаях должна быть структура, описывающая это распределение. Получается некий транслятор для транслятора. На этом обычно останавливаются, но можно пойти еще дальше.

Данный подход к восстановлению данных заставляет полностью эмулировать работу накопителя на низком уровне. Отсюда вытекают плюсы и минусы этого подхода.

Минусы:

  • Трудоемкость . Поскольку мы полностью эмулируем работу накопителя, нам придется выполнить всю грязную работу за него.
  • Риск потерпеть фиаско . Если не удастся решить хотя бы одну из поставленных задач, то о восстановлении не может быть и речи. А вариантов много: невозможность прочитать микросхемы, потому что программатор их не поддерживает; неизвестные коды коррекции; неизвестный XOR паттерн; шифрование; неизвестный транслятор
  • Риск еще больше угробить накопитель . Помимо трясущихся рук риском является сам нагрев микросхем памяти. Для изношенных микросхем это может привести к появлению дополнительного числа битовых ошибок.
  • Время и стоимость работ
Плюсы:
  • Широкий круг задач . Все, что нужно от накопителя, это работающие микросхемы памяти. Неважно в каком состоянии остальные элементы.

Подход №2. Технологический режим

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

Как уже было сказано выше, со временем в микросхемах памяти неизбежно появляются битовые ошибки. Так вот, согласно статистике, причиной выхода из строя SSD в большинстве случаев является появление некорректируемых битовых ошибок в служебных структурах. То есть на физическом уровне все элементы работают нормально. Но SSD не может корректно инициализироваться из-за того, что одна из служебных структур повреждена. Такая ситуация разными моделями SSD обрабатывается по-разному. Некоторые SSD переходят в аварийный режим работы, в котором функциональность накопителя значительно урезана, в частности, на любые команды чтения или записи накопитель возвращает ошибку. Часто при этом, чтобы как-то просигнализировать о поломке, накопитель меняет некоторые свои паспортные данные. Например, Intel 320 series вместо своего серийного номера возвращает строку с кодом ошибки. Наиболее часто встречаются неисправности из серии «BAD_CTX %код ошибки%”.

В таких ситуациях очень кстати оказывается знание технологических команд. С помощью них можно проанализировать все служебные структуры, также почитать внутренние логи накопителя и попытаться выяснить, что же все таки пошло не так в процессе инициализации. Собственно скорее всего для этого и были добавлены техно-команды, чтобы производитель имел возможность выяснить причину выхода из строя своих накопителей и попытаться что-то улучшить в их работе. Определив причину неисправности, можно попытаться ее устранить и вновь вернуть накопитель к жизни. Но все это требует по-настоящему глубинных знаний об архитектуре устройства. Под архитектурой здесь я в большей степени понимаю микропрограмму накопителя и служебные данные, которыми она оперирует. Подобным уровнем знаний обладают разве что сами разработчики. Поэтому, если Вы к ним не относитесь, то Вы либо должны обладать исчерпывающей документацией на накопитель, либо Вам придется потратить изрядное количество часов на изучение данной модели. Понятное дело разработчики не спешат делиться своими наработками и в свободном доступе таких документаций нет. Говоря откровенно, я вообще сомневаюсь, что такие документации существуют.

В настоящее время производителей SSD слишком много, а новые модели появляются слишком часто, и на детальное изучение не остается времени. Поэтому практикуется немного другой подход.

Среди технологических команд очень полезными оказываются команды, позволяющие читать страницы микросхем памяти. Таким образом можно считать целиком дампы через SATA интерфейс накопителя, не вскрывая корпус SSD. Сам накопитель в таком случае выступает в роли программатора микросхем NAND flash памяти. В принципе, подобные действия даже не должны нарушать условий гарантии на накопитель.

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

На словах то оно, кончено, все просто звучит. Но на разработку подобных решений уходит немало человеко-часов. И в результате мы добавляем в поддержку всего одну модель SSD.

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

Минусы:

  • Сложность и стоимость разработки . Достаточно немногие компании могут себе позволить содержать свой отдел разработок и проводить подобного рода исследования.
  • Решения индивидуальны .
  • Ограниченный круг задач . Не ко всем накопителям применим данный подход. SSD должен быть физически исправен. Также, редко, но все же бывает, что повреждения некоторых служебных структур, исключает возможность восстановления пользовательских данных.
Плюсы:
  • Простота .
  • В некоторых случаях позволяет обойти шифрование . По сути подход к восстановлению данных с помощью технологических команд на сегодняшний день является единственным известным способом восстановить данные с некоторых накопителей, использующих аппаратное шифрование данных.

Заключение

На войне все средства хороши. Но лично я отдаю предпочтение второму подходу как более тонкому инструменту. И наиболее перспективному, поскольку все более широкое распространение аппаратного шифрования исключает возможность восстановления информации с „сырых“ дампов микросхем. Однако и у первого подхода есть своя ниша задач. По большому счету это те задачи, которые нельзя решить с использованием технологических функций накопителя. В первую очередь это накопители с аппаратной неисправностью, и при этом нет возможности определить поврежденный элемент, или характер повреждений исключает ремонт. И браться за дело рекомендуется только в том случае, если уже есть успешный опыт восстановления информации с подобной модели SSD, или есть информация о решении. Необходимо знать, с чем придется столкнуться: используется ли шифрование или скремблирование, какой XOR паттерн вероятнее всего используется, известен ли формат транслятора (есть ли сборщик образа). В противном случае шансы на успех невелики, по крайней мере оперативно решить задачу не получится. К тому же нагрев негативно влияет на изношенные микросхемы памяти, в результате чего могут появиться дополнительные битовые ошибки, которые, в свою очередь, могут привнести свою ложку дегтя в последующем.

На этом пока все. Берегите себя! И да хранит ваши данные backup!

В статье под названием «Как SSD-накопители стирают данные » мы рассказывали, почему твердотельные накопители непрерывно «зачищают» свободное пространство, практически мгновенно стирая данные после быстрого форматирования диска или удаления раздела. Звучит страшно, не так ли? Тем не менее, не всегда все так плохо, как может показаться. Часто ваши файлы все-таки остаются на SSD диске, а значит, могут быть восстановлены. Давайте посмотрим, когда это происходит и почему это возможно.

TRIM: когда функция не работает

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

Тем не менее, в некоторых ситуациях функция TRIM не используется системой. В частности, TRIM не будет работать, при любом из следующих условий:

  • Вы использовали накопитель SSD в корпусе USB. TRIM не работает через USB (тем не менее, он работает через ESATA);
  • Вы использовали один или несколько SSD накопителей в корпусе NAS (большинство NAS-накопителей не поддерживают TRIM, за исключением некоторых типов сетевых накопителей, работающих в сочетании с новейшей ОС);
  • Вы использовали два или более твердотельных накопителя во внутреннем массиве RAID (до недавнего времени Windows не поддерживала функцию TRIM на RAID-массивах. Даже сегодня, TRIM и RAID не всегда могут работать вместе);
  • Вы используете Windows XP или Vista (TRIM был добавлен только в Windows 7 и более новые версии ОС, в том числе Windows 8 и 8.1);
  • Ваш SSD диск отформатирован в FAT, FAT32 или EXFAT (в Windows TRIM работает только с NTFS);
  • Диск или файловая система повреждена (TRIM срабатывает только если вы эксплицитно удалили файл, отформатировали диск или заново разбили его на разделы. В противном случае, даже если вы не видите каких-либо данных, и диск кажется пустым или недоступным, команда TRIM не сработает, пока вы производите форматирование или перераспределение разделов);
  • Non-Apple SSD на Mac (в Mac OS X функция TRIM поддерживается только для SSD-накопителей, выпускаемых компанией Apple).

Если ваш случай подходит под одно из описанных выше условий, вы смело можете использовать одну из программ для восстановления данных, таких как RS Partition Recovery , чтобы вернуть ваши удаленные файлы. Вероятность того, что ваши данные по-прежнему существует и могут быть восстановлены так же высока, как при работе с традиционным жестким диском!

3 декабря 2011 в 12:32

Восстанавливаем запоротый SSD

  • Компьютерное железо

Мне подумалось, что вдруг кого-то из владельцев SSD устройства этот топик наведёт на мысль о backup"е, кого-то о в целом более осторожном отношении, а кого-то избавит от общения с не слишком торопливой службой поддержки. Всё написанное относится не тдоолько к устройствам той серии и производителя, что у меня.

Дней 10 назад мне случилось оставить на ночь ноут с батареей в критическом состоянии без зарядки. Я не слишком беспокоюсь о жизни батареи, но удар последовал с другой стороны. Утром, включив ноутбук в зарядку и включив его я с удивлением обнаружил, что:


В ВIOS"е винчестер определялся. Схватив имевшийся под рукой Ubuntu Live CD на flash"ке и вооружившись командной строкой, я приготовился к дебагу.
Стоит сразу сказать, что в случаях таких сбоев удобнее было бы использоваться какой-нибудь Data Rescue Live CD, с уже установленными утилитами диагностики вместо совершенно не нужного офисного пакета, но тем не менее.

Наберём арсенал, который нам пргодится:

$ sudo apt-get install hdpam partx smartmontools

Смотрим, что у нас случилось:
$ sudo partx -s /dev/sda
partx: /dev/sda: failed to read partition table

Итак, с таблицей разделов вроде бы можно попрощаться.
$ sudo smartctl -s on -d ata -A /dev/sda -T verypermissive
smartctl 5.41 2011-06-09 r3365 (local build)
Copyright 2002-11 by Bruce Allen,

SMART support is: Unavailable - device lacks SMART capability .
=== START OF ENABLE/DISABLE COMMANDS SECTION ===
Error SMART Enable failed: Input/output error

Ошибка ввода-вывода? Диск не поддерживает SMART? Уже бред какой-то.

$ sudo hdparm -I /dev/sda

ATA device, with non-removable media
Model Number: INTEL SSDSA2CW080G3
Serial Number: BAD_CTX 00000150
Firmware Revision: 4PC10302

Configuration:
Logical max current
cylinders 16383 16
heads 16 16
sectors/track 63 63
-
CHS current addressable sectors: 16128
LBA user addressable sectors: 156301488
LBA48 user addressable sectors: 156301488
Logical Sector size: 512 bytes
Physical Sector size: 512 bytes
device size with M = 1024*1024: 76319 MBytes
device size with M = 1000*1000: 80026 MBytes (80 GB)


Ага. Можно заметить, что число условных SSD цилиндров упало в 10000 раз и согласно десктопному Gparted"у размер винчестера составляет 8MB (каюсь, в логах не сохранилась консольная команда и её вывод для просмотра этого безобразия, прошу верить мне на слово). Серийный номер отсутствует и вместо него BAD_CTX что-то там. Хорошо, симптомы поняли, можно обращаться к поиску и в поддержку. Действительно, оказывается, проблема далеко не единична , но, увы, такой идиот с Linux"ом я один.

В кратце для не знакомых с языком и ленивых, форумчане говорят о повальной подверженности всех Intel"овских SSD такому багу, особенно затронувшее 320ю серию и X25M. Есть новость о прошивке 0362, которая призвана избавить именно от этого бага, но количество обращений людей с уже этой прошивкой с теми же симптомами говорит о нерешённости проблемы. Да, лучшим решением в данном случае было бы отправить винчестер обратно в Intel, чтобы у них появился стимул поправить свои ошибки.

К сожалению, поддержка Intel не отличается расторопностью, и отвечает примерно раз в сутки, затупливая по техническим вопросам, и очень рекомендуя установить их SSD Toolbox для определения проблемы. Хочется отдельно заметить, что основной срез пользователей SSD - это владельцы MacBook"ов, у которых аналогично со мной есть трудности с установкой софта под Windows. Отдельного упоминания достойно то, что эта тулза, предназначенная для определения неисправностей, требует:
- Java
- .NET 3.5
- Windows Media Player Redistributable 11
что делает её установку на компьютере, загруженном с Live CD практически невозможной задачей (во-первых из за ограничений объёма на виртуальном винчестере, а во-вторых в связи с тем, что WMP 11 требует проверки аутентичности Windows, которая со скрипом и стонами лишь у некоторых особо выдающихся личностей получается в Wine.
Пламенный привет разработчикам этого ПО.
Мне чудом удалось объснить ситуацию поддержке, и они согласились на замену, но для замены нужно заполнить неимоверное количество форм, к которым нужно ещё приложить подтверждение поупки мной устройства. Волею судеб, я сейчас в десяти тысячах километров от дома, и не ждал такого подвоха.

К счастью, на форумах все однозначно говорят, что содержимое диска восстановлению не подлежит, но что работоспособность восстановить возможно. И то время, которое было потрачено на переписку со службой поддержки, я не потратил зря, а с пользой потратил на чтение форумов и эксперименты, краткий разультат которых здесь и привожу.

Нужно восстановить количество цилиндров, вернув заветные 16383.
Для этой операции нам нужны будут две команды, запуск обоих затруднён для защиты от дурака и вредителя.

Выставляем пользователя, и пароль для мастер-операций над диском.

$ sudo hdparm –user-master user –security-set-pass abc /dev/sda

Далее нам нужно разблокировать расширенный набор ATA-команд, в частности secure-erase, которые блокируются при загрузке системы. Этому есть несколько способов, один из которых - внешний бокс, отключить и включить его питание. Внешнего бокса у меня не было, но чудесным образом срабатывает отправка ноута в sleep и пробуждение.

Следующие команды выполняют некую безопасную очистку, я запускал обе, так как уверенности какая из них понадобится, не было. Перед каждой запускал установку мастер-пароля и закрытие крышки ноутбука.

$ sudo hdparm –user-master user –security-erase abc /dev/sda
$ sudo hdparm –user-master u –security-erase-enhanced abc /dev/sda

Теперь совсем для не слабонервных. Сброс установок диска к заводским. Для запуска команды нужен ещё один ключ, который вам подскажет командная строка, и для очищения совести я его здесь приводить не стану, равно как и упомяну, что в документации эта команда помечена как ОСОБО ОПАСНАЯ и НЕ ЗАПУСКАТЬ.
$ sudo hdparm --dco-restore /dev/sda

Итого выводы, которые я сделал для себя:
- держите Live CD под рукой
- не оставляйте ноут совсем без питания на критическом заряде
- делайте бэкапы, в том числе keyring"ов, списков установленных пакетов, конфигов и rsa ключей
- обновляйте прошивки (после того, как вы узнали, что она точно неплохо работает)
- беречь нервы

Хочу дополнительно отметить, что не всегда такой метод полностью восстанавливает функционал, и что иногда диск остаётся глючным, тормозным.

Ещё раз послаю пламенный привет поддержке Intel, и сообщить им, что я так и не могу зайти под своими логином и паролем на их community, чтобы опубликовать этот чудодейственный рецепт у них, и напомнить, что я уже неделю жду от них хотя бы какого-нибудь ответа почему же я не могу этого сделать.

В следующем топике расскажу об интересной статистике смертей SSD, возвратов, починок и ошибок в работе по производителям и моделям.

PS Любимый Хабр, поправь, пожалуйста, отображение тэга "code".
PPS Случайно нашёлся

О надёжности SSD.

Казалось бы, нет движущихся частей - все должно быть очень надежно. Это не совсем так…

Восстановление данных с Solid State Drive (SSD)

Восстановление данных с любых SSD накопителей! Накопители Solid State Drive (SSD) появились сравнительно недавно, но уже успели завоевать большую популярность. Преимущество SSD по сравнению с традиционными накопителями на жёстких дисках на первый взгляд очевидны, это высокая механическая надёжность, отсутствие движущихся частей, высокая скорость чтения / записи, низкий вес, меньшее энергопотребление.

SSD - это твердотельный накопитель (англ. SSD, Solid State Drive или Solid State Disk), энергонезависимое, перезаписываемое запоминающее устройство без движущихся механических частей с использованием флэш-памяти. SSD полностью эмулирует работу жёсткого диска.

О надёжности SSD.

Казалось бы, нет движущихся частей - все должно быть очень надежно. Это не совсем так. Любая электроника может сломаться, не исключение и SSD. С низким ресурсом MLC-чипов ещё можно как-то бороться коррекцией ошибок ECC, резервированием, контролем за износом и перемешиванием блоков данных. Но самый большой источник проблем - контроллер и его прошивка. По причине того, что контроллер физически расположен между интерфейсом и микросхемами памяти, вероятность его повреждения в результате сбоя или проблем с питанием очень велика. При этом сами данные, в большинстве случаев сохраняются. Помимо физических повреждений, при которых доступ к данным пользователя невозможен, существуют логические повреждения, при которых также нарушается доступ к содержимому микросхем памяти. Любая, даже незначительная ошибка, баги в прошивке, может привести к полной потере данных. Структуры данных очень сложные. Информация «размазывается» по нескольким чипам, плюс чередование, делают восстановление данных довольно сложной задачей.
В таких случаях восстановить накопитель помогает прошивка контроллера с низкоуровневым форматированием, когда заново создаются служебные структуры данных. Производители стараются постоянно дорабатывать микропрограмму, исправлять ошибки, оптимизировать работу контроллера. По этому, рекомендуется периодически обновлять прошивку накопителя для исключения возможных сбоев.
В SSD накопителе, как и в HDD, данные не удаляются сразу после того, как файл был стёрт из ОС. Даже если переписать файл по верху нулями - физически данные еще остаются, и если чипы флеш-памяти достать, и считать на программаторе - можно найти 4кб фрагменты файлов. Полное стирание данных стоит ждать тогда, когда на диск будет записано данных равное количеству свободного места + объем резерва (примерно 4 Гб для 60Гб SSD). Если файл попадёт на «изношенную» ячейку, контроллер ещё не скоро перезапишет её новыми данными.

Основные принципы, особенности, отличия в восстановлении данных с SSD и USB Flash накопителей.

Восстановление данных с SSD накопителей достаточно трудоёмкий и долгий процесс по сравнению с портативными flash накопителями. Процесс поиска правильного порядка, объединения результатов и выбора необходимого сборщика (алгоритм/программа полностью эмулирующая работу контроллера SSD накопителя) для создания образа диска не лёгкая задача.
Связанно это в первую очередь с увеличением числа микросхем в составе SSD накопителя, что во много раз увеличивает число возможных вариантов действий на каждом этапе восстановления данных, каждое из которых требует проверки и специализированных знаний. Так же, в силу того, что к SSD предъявляются значительно более жесткие требования по всем характеристикам (надёжность, быстродействие и т.д.), чем к мобильным флеш накопителям, технологии и методики работы с данными, применяемые в них, достаточно сложны, что требует индивидуального подхода к каждому решению и наличию специализированных инструментов и знаний.

Статья взята из открытых источников: http://hardxdisk.blogspot.ru/p/blog-page_5651.html



Рекомендуем почитать

Наверх