Восстановление данных. Практическое руководство — страница 3 из 13

Выбираем жесткий диск

Своему винчестеру мы доверяем самое дорогое, что у нас есть — свои данные. Мне часто приходится отвечать на вопросы моих знакомых, сформулированные примерно так: какого производителя выбрать? Какой модели отдать предпочтение? Мой ответ таков: цена и другие параметры (за исключением, может быть, издаваемого шума) важны, но не критичны. Важнейшим критерием является надежность. Выбранный вами диск не должен выйти из строя неожиданно. Разумеется, медленная деградация, сопровождающаяся посторонними скрежещущими звуками и стремительное размножение BAD-секторов не в счет, так как в данном случае любому и так понятно, что диск надо менять. Я и сам часто задаю себе тот же самый вопрос, пытаясь решить проблему надежности диска, но тщетно. У жестких дисков нет надежности. Вместо этого у них есть гарантийный талон. И это все! Даже не пытайтесь строить свои рассуждения на данных о сотнях тысяч часов наработки на отказ, приводимых в документации. Почему? Да потому, что эта информация берется фактически "с потолка", и производитель не несет за нее никакой ответственности.

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

Правильнее было бы говорить о неудачных моделях. В качестве примера можно привести печально известную серию Fujitsu MPG, в которой использовалась микросхема Cirrus Logic с измененным составом подложки. С течением времени из-за этой подложки образовывались паразитные утечки, и практически все эти винчестеры вымерли в течение двух лет. Еще один пример — IBM DTLA (в просторечии называемый "дятлом") с неудачной конструкцией разъема гермоблока, вызывающей периодическое исчезновение контакта и, как следствие, — преждевременное прекращение операции записи. При этом, естественно, часть сектора оказывалась незаписанной. В результате этого на диске образуются виртуальные BAD-сектора, на которых нет физических дефектов, однако контрольная сумма не совпадает. Такие сектора можно прочитать, но нельзя восстановить, так как запись данных сектора не была завершена. У меня было три таких диска. Один из них отказал в течение первых двух месяцев эксплуатации. Он был успешно отремонтирован, а затем заброшен на полку в качестве экспоната. Два других таких диска успешно работают до сих пор. При этом невозможно сосчитать, сколько дисков катастрофически отказало у моих знакомых! Как уже говорилось, в этой области все решает слепая вероятность. В качестве дополнительных факторов можно указать качество блока питания, отсутствие вибраций и т.д.

Сбор статистики об отказах жестких дисков — дело затруднительное. Абсолютное количество отказов само по себе еще ни о чем не говорит. При сборе статистики необходимо учесть распространенность данной модели, а также условия эксплуатации. Считается, что диски SCSI надежнее, чем IDE. Однако эта картина наблюдается лишь потому, что диски SCSI устанавливаются в серверах и работают, практически никогда не выключаясь. Стоит учесть, что большинство отказов происходит как раз в момент включения/выключения. При этом, разумеется, для дисков SCSI не существует проблем с перегревом, и им неведома ситуация "винчестер в сумке".

На сайте фирмы Derstein, занимающейся восстановлением данных, приводится любопытная статистика зафиксированных отказов (http://www.derstein.ru/cgi-bin/stat.cgi?do=show), которую я в сокращенном виде привожу ниже. Таблица 3.1 обобщает статистику по производителям, а табл. 3.2 — по моделям.


Таблица 3.1. Статистика отказов жестких дисков по производителям

ПроизводительКоличество зафиксированных отказов
Fujitsu498
IBM393
Maxtor210
Quantum110
Western Digital95
Samsung49
Seagate42
Conner3

Таблица 3.2. Статистика отказов жестких дисков по моделям

МодельКоличество зафиксированных отказов
IBM (IC35L040AVER07-0) 41.0 Gb119
Fujitsu (MPG3204AT) 20.4 Gb83
Fujitsu (MPG3409AT) 40.9 Gb57
Fujitsu (MPG3102AT) 10.2 Gb54
Fujitsu (MPG3204AH) 20.4 Gb48
IBM (DTLA 307030) 30.7 Gb37
Fujitsu (MPG3409AH) 40.9 Gb32
IBM (IC35L020AVER07-0) 20.5 Gb31
Fujitsu (MPE3204AT) 20.4 Gb29
Seagate (340016A) 40.0 Gb28

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

Как уже говорилось, время от времени у всех производителей встречаются неудачные модели. К тому же, источник отказов зачастую располагается вне диска. Таким образом, вопрос о надежности правильнее ставить так: "Какой диск имеет наибольшие шансы на успешное восстановление?"

С этим вопросом я обратился к ведущему инженеру фирмы АСЕ Lab Сергею Яценко, через руки которого прошли тысячи дисков. На основании его ответов я и составил приведенные ниже краткие рекомендации по выбору наиболее "живучей" модели.

Список дисков, наиболее удачных с точки зрения восстановления, то есть таких, которые проще восстанавливать, составлялся с учетом следующих факторов:

□ удобство и простота подбора блока головок в случае проблем с ним;

□ практическое отсутствие самоповреждения записи;

□ сравнительно низкое количество экстремально сложных узлов.

С учетом вышеперечисленных факторов в список лидеров включаются следующие модели: Seagate, Samsung, Hitachi-IBM (HGST), Fujitsu (2.5"), и, с некоторой натяжкой, Toshiba (2.5"), хотя у последней модели существует мерзкая проблема с протеканием подшипника шпиндельного двигателя, возникающая из-за того, что крышка его не приварена, как у других моделей, а приклеена. Стоит отметить, что хотя у дисков Maxtor эта крышка тоже приклеена, с ними такой проблемы не возникает вследствие значительно большей толщины и габаритов.

Примечание

Наименования производителей перечислены в порядке увеличения проблематичности восстановления их дисков.

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

□ Maxtor — эти диски "радуют" глючной записью и нестабильностью головок;

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

□ Quantum — хотя компания, как таковая, уже не существует, диски этого производителя продолжают катастрофически отказывать. При этом после отказа они уже практически не подлежат восстановлению. Самый действенный способ восстановления, но не самый продуктивный — это заморозка. В некоторых случаях диск после заморозки при -10 °С начинает отдавать данные… Но этот трюк проходит не часто. Замена головок у них крайне затруднена. Если блок головок насчитывает 3 или большее количество головок, его замена реальна только при впечатляющих трудозатратах.

Если у кого-то стоят диски Quantum AS, можно только посоветовать избавиться от них как можно скорее. Такие производители, как Maxtor и WDC, со своими трудностями справляются, но с явной неохотой.

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

SCSI против SATA

Некоторые жесткие диски и оптические приводы поддерживают интерфейсы ATA или ATAPI (ATA packet interface) — то есть IDE; с другой стороны, многие модели поддерживают SCSI. Изменит ли появление интерфейса serial ATA (SATА) соотношение сил в этой области? Хотя я и не являюсь профессиональным предсказателем будущего, я все же постараюсь ответить на этот вопрос на основе сравнения функциональных возможностей этих интерфейсов.

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

Примечание

Лично мне все эти попытки модернизации ATA напоминают попытки одинокого энтузиаста, пытающегося переделать "горбатый" Запорожец в мощный Мерседес! С другой стороны, если возможности ATA полностью соответствуют вашим потребностям, то именно на нем и стоит остановить свой выбор, отдав предпочтение перед SCSI. Зачем переплачивать за излишества, которые вам реально не нужны?

Вавилонская башня технологий

SCSI, ATA, ATAPI, IDE, EIDE… В этом ворохе аббревиатур даже матерому специалисту не так-то просто разобраться. Но мы все же попробуем!

Аббревиатура SCSI расшифровывается как Small Computer System Interface (Системный Интерфейс Малых Компьютеров). Конструктивно SCSI представляет собой интеллектуальный контроллер, интегрированный непосредственно в само периферийное устройство и поддерживающий унифицированный набор управляющих команд, общий для всех устройств данного типа. По сути своей контроллер SCSI представляет собой мини-компьютер, по мощности сопоставимый с Intel 80486. Во времена становления SCSI это решение было отчаянно смелым, и действительно являлось огромным шагом вперед. До появления стандарта SCSI всякое устройство имело свою собственную систему команд, ориентированную на выполнение элементарных операций (например, включить или выключить двигатель, прочитать индексную метку, переместить головку на следующую дорожку и т.д.). Это не только затрудняло программирование, но и требовало переделки контроллера даже при незначительных конструктивных изменениях периферийного устройства.

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

Электрически интерфейс SCSI представляет собой либо обыкновенный многожильный кабель, либо оптоволокно. Вообще говоря, существует множество конкурирующих стандартов, подробное рассмотрение которых выходит далеко за рамки данной книги. Достаточно лишь сказать, что физическая скорость передачи данных в последних версиях стандарта SCSI полностью удовлетворяет потребности реально существующих устройств, оставляя солидный задел на будущее. Некоторые из электрических интерфейсов поддерживают длину кабеля до 25 метров и горячую замену устройств без выключения питания. Тем не менее, утверждение о том, что все диски SCSI можно заменять и переключать на лету, неверно. Более того, оно чревато смертельными для диска последствиями. Максимальное количество устройств на шине SCSI различно и варьируется от одного электрического интерфейса к другому. В среднем, к одной шине можно подключить от 7 до 15 устройств, не сильно проигрывая в скорости передачи данных.

Для подключения контроллера SCSI к центральному процессору необходимо установить весьма сложный и дорогостоящий host-контроллер SCSI, что несколько ограничивает сферу применения данного стандарта.

Аббревиатура ATA расшифровывается как Advanced Technology Attachment (интерфейс подключения накопителей), и история его возникновения тесно связна с фирмой IBM и компьютерами типа IBM AT. Для преодоления ограничений, свойственных интерфейсу подключения накопителей, использовавшему модифицированную частотную модуляцию (Modified Frequency Modulation, MFM), применявшемуся в IBM XT, компания поручила комитету T10 (http://www.t10.org) разработку нового индустриального стандарта. С этой задачей комитет справился на славу, отголоски которой дошли до наших дней, пускай и в сильно измененном виде. Впрочем, никаких революционных идей комитет не предложил, ограничившись интеграцией стандартного контроллера жесткого диска непосредственно с самим устройством, соединенным параллельным шлейфом с не менее стандартной шиной ISA. Так вот почему контроллеры ATA такие дешевые и простые! Фактически они состоят из микросхемы буферной памяти и дешифратора адреса. Разумеется, современные контроллеры ATA существенно усложнились. Однако эти усложнения не настолько существенны, чтобы вызвать сильное подорожание.

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

Между тем, аппаратные мощности процессоров непрерывно росли, и на IBM PC начали возникать первые многозадачные системы. Как следствие, во второй ревизии стандарта, получившей кодовое наименование ATA-2, появилась поддержка режима DMA. Теперь, передав команду на чтение сектора, процессор мог спокойно переключаться на другую задачу, перекладывая заботу о дисковой подсистеме на контроллер ATA. В последующих ревизиях скорость передачи по физическому интерфейсу увеличилась до 100 Мбайт/с. Кроме того, появилась прозрачная логическая адресация (а вместе с ней — и поддержка жестких дисков большого объема). Наконец, было введено расширение ATA, получившее называние ATAPI (ATA Packet Interface — пакетный интерфейс ATA), реализующее ту же самую схему обмена командными пакетами, что и SCSI.

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

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

Интерфейс SATA (Serial ATA — последовательный ATA) представляет собой дальнейшее развитие интерфейса ATA (IDE), который после появления SATA был переименован в PATA (Parallel ATA). Теперь вместо широкого шлейфа используется тонкий кабель, соединяющий единственное устройство со своим портом. Максимальная длина кабеля и скорость передачи существенно увеличены, однако на жизни большинства пользователей это никак не отражается, поскольку и прежняя длина кабеля в большинстве случаев была вполне достаточной. Что касается скорости передачи данных, то винчестеры не в полной мере использовали даже ту пропускную способность, которая была предусмотрена предыдущей ревизией ATA. Количество подключаемых устройств по-прежнему невелико (один SATA-порт — одно SATA-устройство, а таких портов на материнских платах раз-два и обчелся). В общем, со SCSI этому интерфейсу не тягаться. Правда, появилась возможность горячей замены дисков, но для домашних компьютеров она не столь уж критична.

Примечание

Если же оставить технические подробности в стороне и взглянуть на SATA с этической точки зрения, то худшего интерфейса, вероятно, не существует в природе. Разработка SATA велась и ведется закрытым сообществом SATA-IO (Serial ATA International Organization — Международная организация Serial ATA). По этой причине и сам стандарт SATA является закрытым (см. https://www.sata-io.org/secure/spec_download.asp). Таким образом, подробная техническая документация доступна только членам данного сообщества. В открытом доступе находится лишь устаревшая информация, а современные и актуальные ревизии доступны для бесплатного скачивания лишь членам SATA-IO. Тем не менее, никто не сомневается, что будущее принадлежит SATA. Как утверждает Хэйл Лэндис (Hale Landis), "секретное общество" вынашивает планы по замене SCSI. Иначе говоря, впереди нас ждет сплошной мрак. Заинтересованным читателям можно порекомендовать следующую ссылку: http://www.ata-atapi.com/sata.htm.

Аббревиатура IDE расшифровывается как Integrated Device Electronic (Интегрированное Электронное Устройство) и де-факто является синонимом ATA, хотя в девичестве обозначало не более, чем интеграцию устройства с контроллером. На сегодняшний день эта аббревиатура переродилась в торговую марку, практически полностью вытеснившую из употребления аббревиатуру ATA.

Примечание

На сайте http://www.ata-atapi.com недвусмысленно утверждается, что ATA и ATAPI — это действительные имена интерфейсов массовых дисковых накопителей, часто называемые IDE и EIDE соответственно. IDE и EIDE, главным образом, используются продавцами, которые не ведают, чем торгуют, и журналистами, которые сами не знают, о чем пишут. Вот и дословная цитата: "ATA and ATAPI are the real names for the mass storage device interface that is frequently called IDE and EIDE. IDE and EIDE are mostly used by marketing people who do not know what they are selling and by writers for magazines who do not know what they are writing about".

Смертельная схватка

Основной недостаток интерфейсов ATA/SATA, который до сих пор не преодолен, — это ограниченное количество подключаемых устройств. До тех пор, пока вы довольствуетесь одним жестким диском и одним приводом CD/DVD-ROM, никаких проблем не возникает, но если вы захотите подключить два винчестера, один CD-ROM, один CD-RW и один DVD-ROM, то мне остается только вам посочувствовать.

Дисковые массивы, состоящие из нескольких винчестеров, на контроллерах ATA не могут быть реализованы в принципе, так как каждое устройство требует своего контроллера, а каждый контроллер — своего IRQ и канала DMA. К тому же, отсутствие полнофункционального планировщика отрицательно сказывается на производительности дисковой подсистемы (особенно на беспорядочных запросах) и усложняет ее программирование. Дело в том, что при возникновении какой бы то ни было ошибки вся очередь сбрасывается, а это значит, что инициатору запросов требуется хранить ее копию, тщательно отслеживая все изменения. Короче говоря, нормальных контроллеров RAID нет ни под ATA, ни под SATA-накопители, и, по-видимому, никогда не будет. Модели, представленные на рынке, сильно напоминают пионерские разработки, созданные впопыхах, и содержат большое количество фатальных ошибок, часто приводящих к необратимой порче данных. Пользоваться им даже в домашних целях категорически не рекомендуется. Разумеется, никакие физические законы не препятствуют созданию правильного контроллера RAID с поддержкой ATA/SATA. Однако фирмы-производители просто не хотят вкладывать деньги в эту разработку, и не сделают этого до тех пор, пока в ATA/SATA не появится полноценный планировщик очереди запросов.

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

Резюме

Для домашнего использования (если только количество подключенных устройств не очень велико) лучше всего использовать накопители ATA/SATA. То же самое относится и к серверам, обслуживающих локальные сети небольших организаций. Для высокопроизводительных рабочих станций и серверов с внушительными дисковыми массивами однозначно выбирают SCSI.

Глава 4