Твердотельная память, по своей сути, в пределах срока службы должна быть надежнее любых носителей с подвижными частями, однако данные на ней теряются очень часто. Связано это, в первую очередь, с характером эксплуатации. Статистика показывает, что среди причин потери или недоступности данных на первое место по частоте выходит «человеческий фактор».
• Логические ошибки – в основном результат некорректного извлечения устройства.
• Механические поломки и воздействие жидкости.
• Электрические повреждения – результат некорректного подключения устройства. Неправильно подключенные колодки кабеля от дополнительных гнезд USB на передней панели превращают компьютер в настоящего «убийцу» flash-дисков, а для неопытного пользователя причина сгорания flash-дисков одного за другим долго остается непонятной.
• Сбои контроллера – результат воздействия статического электричества.
• Сбои и деградация flash-памяти – единственная технически оправданная причина.
Физические нарушения
Как и в случае с жесткими дисками, дефект ячеек хранения ведет к полной утрате информации, а все остальные случаи – просто к ее недоступности. Между интерфейсом компьютера и ячейками памяти последовательно лежат контакты разъема, контроллер, миниатюрные проводники печатной платы. Питаются обе микросхемы через общий стабилизатор напряжения.
• Последствия повреждения контактов USB очевидны. При повреждении, коррозии или сильном загрязнении контактов карт памяти карта, скорее всего, тоже не распознается кард-ридером. Для карт памяти с многочисленными контактами параллельного интерфейса возможна и ситуация, когда загрязнение контактной площадки приводит к сбоям при обращении к карте, хотя как устройство она распознается.
• Перегорание элементов обвязки flash-диска USB проявляется тем, что брелок перестает как-либо распознаваться компьютером: обе микросхемы остаются без питания. Это тоже достаточно простой случай. Если стабилизатор встроен внутрь контроллера, ситуация усугубляется: случайное изменение полюсов питания почти всегда приводит к перегоранию стабилизатора, но в данном случае это означает и поломку контроллера в целом.
• Неисправность контроллера почти неизбежно приводит к недоступности карты или flash-диска. В отдельных случаях, особенно при повреждении микропрограммы, карта теряет лишь отдельные функции, например запись.
• Порча микросхемы flash-памяти чаще всего проявляется недоступностью определенных блоков, хотя остальные блоки читаются и записываются нормально. Информация из этих блоков восстановлению уже не подлежит.
Логические нарушения
Если накопитель исправен физически, но представляется как пустой или неформатированный, а находящиеся на нем данные не видны операционной системе, то в данном случае повреждены служебные таблицы файловой системы.
Данные почти всегда остаются на месте, и их можно попытаться восстановить с помощью программ, находящих файлы по их сигнатурам. Наряду с известными и универсальными пакетами R-Studio и EasyRecovery, описанными в главе 2, существует множество программ, специально предназначенных для работы с картами памяти и извлечению из них, в первую очередь, фотографий.
Восстановление данных, потерянных из-за физических неисправностей
Диагностика физических причин потери данных на flash-накопителях довольно проста. Некоторые шаги в процессе диагностики являются и началом восстановления данных.
1. Если карта памяти не распознается или не читается, прежде всего, вставьте ее в другой кард-ридер. Таким образом сразу исключаются причины сбоя, связанные с устройством чтения.
2. Осмотрите карту на наличие механических повреждений. Внимательно с лупой изучите контактные площадки. Протрите их этиловым или изопропиловым спиртом. Напряжения и токи в интерфейсе очень малы, и для возникновения ошибки достаточно небольшого загрязнения.
Если используется flash-диск USB, целесообразно сразу разобрать его и осмотреть разъем с контактами и плату. Здесь будут видны и дефекты пайки, и подгоревшие элементы обвязки.
3. При попадании flash-диска в воду следует как можно скорее разобрать его, промыть под струей водопроводной воды, а затем тщательно ополоснуть в дистиллированной воде. Для промывки очень полезна ультразвуковая ванночка. Сушить подобные устройства нужно при температуре не выше 60 °C в течение нескольких часов. Если электрохимическая коррозия не слишком велика, такого «ремонта» окажется достаточно. Без промывки и до полного высыхания карту или flash-диск, побывавшие в жидкости, категорически нельзя подключать даже кратковременно!
4. Подключив flash-диск в порт USB, проследите за определением устройства операционной системой:
• если вообще ничего не происходит, значит, причина сбоя кроется в контактах, схеме питания или контроллере, что менее вероятно;
• если началось определение устройства, значит, контакты и схема питания, скорее всего, исправны. Если операционная система в результате определяет «неизвестное устройство USB», то, возможно, вышел из строя контроллер flash-памяти (рис. 4.5);
Рис. 4.5. Определение flash-диска с неисправным контроллером
• если определение устройства прошло удачно, но вместо названия flash-диска появляется что-то нечитаемое типа K-а.◊~~nл_-_#e, проблема, скорее всего, связана с микропрограммой контроллера;
• если диск определился правильно, значит, контроллер исправен, хотя может быть и наоборот.
5. Попробуйте открыть диск Проводником Windows. Обратите внимание на определяемый операционной системой объем диска, наличие файлов и папок.
6. Запустите одну из программ восстановлении данных и попытайтесь с ее помощью создать образ подключенного flash-диска. В случае неудачи попробуйте применить другую программу, например Flashnul-0.991. Если одной из программ удалось восстановить образ диска, проблема, скорее всего, чисто логическая.
7. Отключите диск: как и в случае с винчестерами, лишнее время работы может повредить и без того неисправный носитель.
Если карта памяти в кард-ридере не распознается программами восстановления данных, а контакты ее целы, самой вероятной причиной могут быть электрические повреждения чипа, находящегося внутри карты. Повреждения контактов карт памяти можно попытаться исправить подручными средствами. Например, можно попробовать восстановить контактную площадку очень тонкой медной фольгой с помощью пайки или токопроводящего клея. Можно даже продублировать все контакты карты припаянными к ним проводами, разобрать кард-ридер и подключить эти провода к соответствующим контактам слота.
Если повреждены электронные компоненты карты памяти фотоаппарата, единственное, что остается сделать, – купить новую карту, вставить ее в фотоаппарат и постараться вновь отснять те сюжеты, которые были на испорченной карте. К сожалению, устройство карты нельзя отремонтировать. Впрочем, встречаются сообщения о том, как в лабораториях спецслужб восстанавливают данные с SIM-карт сотовых телефонов, использованных террористами в качестве радиовзрывателей, но технические подробности и сведения о затратах на такое восстановление остаются секретом.
Далее речь пойдет лишь о flash-дисках USB, которые можно диагностировать и ремонтировать даже в домашних условиях.
Неисправности разъема и обвязки
Выломанный разъем USB – типичная механическая поломка flash-диска. Механизм ее появления очевиден – торчащий из корпуса брелок случайно зацепить очень легко. В этом случае обычно страдают дорожки на печатной плате (самое уязвимое место диска). Для восстановления информации вместо реконструкции проводников и поиска подходящего разъема проще припаять к плате конец с разъемом, отрезанный от любого кабеля USB (рис. 4.6). Конечно, это не совсем эстетично, но быстро и удобно.
Рис. 4.6. Замена сломанного разъема
Из всех навесных элементов на плате flash-диска чаще всего выходит из строя параметрический стабилизатор питания, а иногда и подключенный последовательно с ним гасящий резистор. Причиной сбоя чаще всего является случайная переполюсовка кабеля, идущего от материнской платы к дополнительному разъему USB на корпусе. Хотя об этом знают все, ошибки при сборке компьютеров регулярно повторяются. По этой же причине рекомендуют, особенно на чужом компьютере, подключать flash-диски только в разъемы, смонтированные непосредственно на материнской плате (в современных компьютерах их обычно шесть).
Сгоревший стабилизатор легко определить визуально. За считанные секунды из-за неправильного подключения он успевает полностью выгореть, задев плату вокруг себя (рис. 4.7), что подтверждает и запах.
Рис. 4.7. Выгоревший стабилизатор
Выходя из строя, стабилизатор тем самым защищает контроллер. Не исключено, что на flash-диске со сгоревшим стабилизатором все же успела пострадать и микросхема контроллера. Тем не менее всегда целесообразно начать с ремонта питания. После этого судьба контроллера выяснится автоматически.
При отсутствии подходящего стабилизатора на 3,3 В, например LM317, можно заменить его двумя последовательно включенными диодами (рис. 4.8). Падение напряжения в прямом направлении на одном диоде составляет примерно 0,8–0,9 В, поэтому после двух таких диодов от 5 В останется 3,2–3,4 В – напряжение, необходимое для питания контроллера и микросхемы памяти. Полярность включения диодов удается определить, рассмотрев ход дорожек печатной платы. При миниатюрных диодах и достаточной аккуратности можно полноценно отремонтировать накопитель (рис. 4.9). У такой замены есть еще один плюс: flash-диск с таким стабилизатором не сгорит, даже если на него будет подано питание в обратной полярности. Диоды не пропустят ток в обратном направлении.
Рис. 4.8. Замена стабилизатора двумя диодами
Рис. 4.9. Диоды установлены на плату
Если проблема связана со стабилизатором питания, описанные манипуляции ее решают полностью. Но для страховки целесообразно сразу же сделать копию – образ диска одной из программ восстановления либо, если на диске не оказалось логических ошибок, немедленно скопировать его содержимое на жесткий диск обычным способом.
Неисправность контроллера
При неисправности контроллера существуют два принципиальных решения проблемы. Выбор одного из них зависит от тех технических средств, которыми располагает пользователь.
1. Возьмите аналогичный flash-диск в качестве донора и замените неисправный контроллер. Если к повреждению контроллера прибавилась неисправность элементов обвязки, проще переставить микросхему памяти на плату донора. В результате можно будет прочитать данные обычным образом либо, при одновременном наличии логических ошибок, восстановить их программным методом.
2. Выпаять микросхему памяти и считать данные с нее через программатор. К такой методике приходится прибегать, если не удалось найти подходящий контроллер. В программаторе удается прочитать даже частично испорченные микросхемы памяти – это основной способ извлечь из них информацию. Сложность заключается в восстановлении таблицы трансляции адресов.
Для ремонта понадобится паяльный фен и маска для защиты элементов, окружающих выпаиваемую микросхему. Цена паяльной станции начинается от $120. Если пользователь самостоятельно не может выполнить такие манипуляции, то следует обратиться в любую мастерскую по ремонту сотовых телефонов, специалисты которой владеют техникой пайки микросхем.
Чтобы снять дамп (dump) с выпаянной микросхемы памяти, необходим программатор, поддерживающий данный тип микросхем. Во flash-дисках в основном используются микросхемы в корпусах 48-pin TSOP1 Standard Type, 48-pin NAND Flash TSOP1, USOP и WSOP. Выбор программаторов велик: это либо устройства, подключаемые к портам COM, либо USB, реже – платы PCI с выносной колодкой.
Особый интерес представляют аппаратно-программные комплексы, состоящие из программатора, набора утилит для снятия и анализа дампа и базы данных, позволяющей восстанавливать таблицы трансляции. В эту базу закладываются алгоритмы построения таблиц трансляции для контроллеров и микросхем памяти различных производителей. Желательно, чтобы базу данных можно было обновлять и пополнять.
В качестве примера будет рассмотрен отечественный комплекс Flash Recovery Tool v.1.0, предлагаемый компанией BVG Group (http://www.bvg-group.ru). Он состоит из внешнего блока с панелью для переходников под разные типы микросхем и самих переходников (рис. 4.10). Светодиодные индикаторы показывают текущий режим работы: подачу питания на блок и микросхему, чтение и запись.
Рис. 4.10. Комплекс FRT
Внешний блок подключается кабелем IDE к плате контроллера комплекса HRT. Этот комплекс предназначен для восстановления жестких дисков и похож на рассмотренный ранее комплекс PC-3000.
Программная часть комплекса – одноименная программа с четырьмя основными функциями. Каждая из них реализована на отдельной вкладке главного окна программы Flash Recovery Tool.
• Raw Flash – вкладка для работы с образом на уровне микросхемы памяти.
• Glued Flash – вкладка редактирования образа микросхемы. В ней можно вырезать ненужные области данных, а также склеивать в единый блок (Glue) несколько образов, считанных с разных микросхем.
• User Data – вкладка для извлечения из образа пользовательских данных.
• Operations with chip – вкладка для работы с программатором, чтение/запись микросхем памяти.
Данная программа является интеллектуальным HEX-редактором, ориентированным на работу с данными, хранящимися на flash-носителях. Она способна автоматически, исходя из идентификатора, определять модель чипа, вставленного в программатор. Параметры считывания микросхем (размеры страниц и блоков, команды считывания) задаются в ini-файле. При необходимости можно добавлять в этот файл секции для новых микросхем: все параметры берутся из документации производителя чипа.
После считывания блоков и сохранения их в файл дампа начинается работа по извлечению полезной информации из этого файла. Если во flash-диске стояла пара микросхем памяти и с каждой был снят свой дамп, предварительно эти два файла «склеиваются» в один. При этом возможны разные варианты: стыковка «конец в конец», чередование байтов, страниц или блоков, с инверсией байтов или без нее. Одновременно отрезаются служебные области, не несущие пользовательскую информацию.
В режиме просмотра «хвостов» можно отыскать блоки по их номерам и попробовать расположить их в правильной последовательности. Программа может автоматически строить трансляторы для известных носителей, занесенных в базу данных. Затем собранные по номерам блоки, предположительно относящиеся к одному файлу, сохраняются на диск в виде обычного файла, с которым способна работать операционная система.
Разумеется, это предельно схематичное описание процесса восстановления данных с выпаянной микросхемы flash-памяти – подробные инструкции прилагаются к комплексу и выложены на сайте производителя. Цена полного комплекта FRT составляет около $1000.
Неисправности микросхемы памяти
Микросхема flash-памяти рано или поздно выходит из строя. Если вследствие деградации часть ячеек flash-памяти стала неисправна, проявления сбоев зависят от того, что в этих ячейках записано.
• При потере записей транслятора или файловой системы диск определяется как неформатированный, то есть ошибка выглядит как логическая. Вся разница в том, что отформатировать такой диск уже не удается ни стандартными средствами операционной системы, ни фирменными утилитами. Основное решение проблемы – снятие образа с диска, а затем поиск файлов в этом образе с помощью любой из программ восстановления данных.
• Если дефект обнаружен в области хранения пользовательских данных, часть файлов может оказаться нечитаемой, притом что в дереве файлов и папок они отображаются. Сбой или ошибка при обращении к подобному файлу могут даже стать причиной зависания программы – файлового менеджера. Стоит скопировать все еще доступные файлы. О файлах, попавших в сбойные блоки, можно забыть: даже если удастся извлечь остатки файлов программой, игнорирующей ошибки чтения, они вряд ли будут представлять какую-то ценность.
Таким образом, восстановление данных при повреждении микросхемы памяти в большинстве случаев практически не отличается от восстановления при логических ошибках, о котором пойдет речь далее. Независимо от причины аппаратной неисправности и результатов предварительной диагностики помочь может только программатор. Однако, если выпаянную микросхему flash-памяти не удается прочитать и на нем, ситуация действительно безнадежна.