Шифрование SSD-диском: обход security freeze
Мой SSD-диск разрешает сделать доступ по паролю, и я хочу воспользоваться этим для шифрования папки /home.
Для этого я хочу заюзать утилиту hdparm для установки пароля при загрузке системы: я ввожу пароль, вызываю
hdparm —user-master u —security-set-pass $PASSWORD /dev/sdb
и получаю доступ к /home.
Проблема в том, что мой BIOS сразу переводит диски в frozen-режим, о чём и сообщает hdparm -I /dev/sdb: пишет, что пароль можно поставить, но диск — в frozen.
Вопрос: как обойти это ограничение?
P.S. Моя цель — обезопасить себя не от спецслужб и не от терморектального криптоанализа, а от банального воровства: я не хочу, чтобы мои проекты легко попали в лапы воришкам-проходимцам. А опасность ограбления квартиры всё-таки существует. И они не будут заниматься вытаскиванием данных — форматнут, да и на продажу.
С другой стороны, dm-crypt снижает скорость раза в 1.5-3, что неприемлемо 🙁 (да к тому же в tuxonice-sources 3.0 не поддерживается TRIM в dm-crypt, а накатывать самостоятельно tuxonice-патчи на 3.1 как-то не хочется).
Security frozen что это
Сообщения: 4860
Благодарности: 959
| Конфигурация компьютера | |
| Процессор: Intel Core i7-970 (3,2Ghz) + Corsair Hydro H50 (СВО) | |
| Материнская плата: ASUS Rampage III Extreme (BIOS version: 1601) | |
| Память: Corsair CMT6GX3M3A1866C9 (6 x 2Gb) | |
| HDD: OCZ RevoDrive 3 (240Gb) | |
| Видеокарта: NVIDIA GeForce GTX 1050 Ti | |
| Звук: Realtek High Definition Audio (ALC889) | |
| Блок питания: Corsair CMPSU-850HX (850Вт), ~2009 г. | |
| CD/DVD: LG GH22NS50 | |
| Монитор: ASUS VK278Q (27″) | |
| Ноутбук/нетбук: ASUS EEE PC Lamborghini VX6S: Atom D2700 (2,1Ghz) | 4Gb RAM | Radeon HD 6470M (1366×768; 12,1″) | Corsair «Force 3» SSD (90Gb) | |
| ОС: Windows 7 «Ultimate» (64-bit) | |
| Прочее: Клавиатура: Logitech G19 | Мышь: ASUS GX850 | Акустика: SVEN-Audio HA-385 |
Чурки притащили ноут Lenovo. Пароль от харда, к счастью, они еще не забыли, но вот как снять его — непонятно. В BIOS пускает. При выборе User Password есть три поля: старый пароль и новый пароль + подтверждение нового пароля. Пробовал вводить старый пароль, а поля для нового оставлять пустыми. Не работает. По всей видимости нужно непременно чтобы новый пароль тоже имел хоть один символ. Master-пароль я не знаю (User-пароль не подходит). Собственно, что делать? Victoria на попытку снятия пароля пишет «Винт отверг команду».
Это сообщение посчитали полезным следующие участники:
Сообщения: 4860
Благодарности: 959
| Конфигурация компьютера | |
| Процессор: Intel Core i7-970 (3,2Ghz) + Corsair Hydro H50 (СВО) | |
| Материнская плата: ASUS Rampage III Extreme (BIOS version: 1601) | |
| Память: Corsair CMT6GX3M3A1866C9 (6 x 2Gb) | |
| HDD: OCZ RevoDrive 3 (240Gb) | |
| Видеокарта: NVIDIA GeForce GTX 1050 Ti | |
| Звук: Realtek High Definition Audio (ALC889) | |
| Блок питания: Corsair CMPSU-850HX (850Вт), ~2009 г. | |
| CD/DVD: LG GH22NS50 | |
| Монитор: ASUS VK278Q (27″) | |
| Ноутбук/нетбук: ASUS EEE PC Lamborghini VX6S: Atom D2700 (2,1Ghz) | 4Gb RAM | Radeon HD 6470M (1366×768; 12,1″) | Corsair «Force 3» SSD (90Gb) | |
| ОС: Windows 7 «Ultimate» (64-bit) | |
| Прочее: Клавиатура: Logitech G19 | Мышь: ASUS GX850 | Акустика: SVEN-Audio HA-385 |
Так. А нельзя убрать пароль даже ценой потери всей информации? Потому как сейчас речь зашла о смене Windows 8 на Windows 7, так что его по-любому форматировать придётся. Или это на пароль не повлияет?
Это сообщение посчитали полезным следующие участники:
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.
Сообщения: 4186
Благодарности: 993
Цитата Avatar-Lion:
| А нельзя убрать пароль даже ценой потери всей информации? » |
Можно, мастер-паролем. Но исходя из этого —
Цитата Avatar-Lion:
| Master-пароль я не знаю » |
вам тоже не удастся.
При Security Erase пароль ставится, а не убирается. Снимается он после эрейса автоматом. Но нужно ж сначала его поставить, чтоб потом он снялся. Попробуйте конечно «WDС» 32 символа вбить в мастер. Но я почти уверен, что именно сам ноут сменил мастер-пароль.
——-
Восстановление информации и Ремонт HDD на АПК РС3000-UDMA + DE RE, PC3000-Express + DataExtractor + SSD Edition.
Сообщения: 4860
Благодарности: 959
| Конфигурация компьютера | |
| Процессор: Intel Core i7-970 (3,2Ghz) + Corsair Hydro H50 (СВО) | |
| Материнская плата: ASUS Rampage III Extreme (BIOS version: 1601) | |
| Память: Corsair CMT6GX3M3A1866C9 (6 x 2Gb) | |
| HDD: OCZ RevoDrive 3 (240Gb) | |
| Видеокарта: NVIDIA GeForce GTX 1050 Ti | |
| Звук: Realtek High Definition Audio (ALC889) | |
| Блок питания: Corsair CMPSU-850HX (850Вт), ~2009 г. | |
| CD/DVD: LG GH22NS50 | |
| Монитор: ASUS VK278Q (27″) | |
| Ноутбук/нетбук: ASUS EEE PC Lamborghini VX6S: Atom D2700 (2,1Ghz) | 4Gb RAM | Radeon HD 6470M (1366×768; 12,1″) | Corsair «Force 3» SSD (90Gb) | |
| ОС: Windows 7 «Ultimate» (64-bit) | |
| Прочее: Клавиатура: Logitech G19 | Мышь: ASUS GX850 | Акустика: SVEN-Audio HA-385 |
misha2, Там больше 7 символов не помещается в поле для ввода пароля.
Это сообщение посчитали полезным следующие участники:
Сообщения: 5828
Благодарности: 1242
Цитата Avatar-Lion:
| Там больше 7 символов не помещается в поле для ввода пароля. » |
Насколько я понял, надо сначала три раза ошибиться, тогда ноут потребует ввести мастер-пароль нужной длины.
Сообщения: 4860
Благодарности: 959
| Конфигурация компьютера | |
| Процессор: Intel Core i7-970 (3,2Ghz) + Corsair Hydro H50 (СВО) | |
| Материнская плата: ASUS Rampage III Extreme (BIOS version: 1601) | |
| Память: Corsair CMT6GX3M3A1866C9 (6 x 2Gb) | |
| HDD: OCZ RevoDrive 3 (240Gb) | |
| Видеокарта: NVIDIA GeForce GTX 1050 Ti | |
| Звук: Realtek High Definition Audio (ALC889) | |
| Блок питания: Corsair CMPSU-850HX (850Вт), ~2009 г. | |
| CD/DVD: LG GH22NS50 | |
| Монитор: ASUS VK278Q (27″) | |
| Ноутбук/нетбук: ASUS EEE PC Lamborghini VX6S: Atom D2700 (2,1Ghz) | 4Gb RAM | Radeon HD 6470M (1366×768; 12,1″) | Corsair «Force 3» SSD (90Gb) | |
| ОС: Windows 7 «Ultimate» (64-bit) | |
| Прочее: Клавиатура: Logitech G19 | Мышь: ASUS GX850 | Акустика: SVEN-Audio HA-385 |
Leha Ares, Если ошибиться, то он отключается с кодом 20345 (если память не изменяет, я сейчас дома просто уже). Ну знаете как ноуты отключаются при попытке неправильного ввода пароля при входе в BIOS? Вот здесь примерно так же, только если мастер-пароль для харда неправильно указать или просто пустым его оставить и на Enter нажимать.
Сообщения: 4186
Благодарности: 993
Цитата Avatar-Lion:
| Там больше 7 символов не помещается в поле для ввода пароля. » |
Я ведь говорил про длину пароля по АТА-стандарту —
Цитата misha2:
| «WDС» 32 символа вбить в мастер » |
и не в БИОСе ес-нно, а в той же Виктории, указав вид пароля и его уровень.
За это время и кол-во постов — давно можно было снять пароль у мастера, на целом ящике запароленных винтов.
——-
Восстановление информации и Ремонт HDD на АПК РС3000-UDMA + DE RE, PC3000-Express + DataExtractor + SSD Edition.
Сообщения: 4860
Благодарности: 959
| Конфигурация компьютера | |
| Процессор: Intel Core i7-970 (3,2Ghz) + Corsair Hydro H50 (СВО) | |
| Материнская плата: ASUS Rampage III Extreme (BIOS version: 1601) | |
| Память: Corsair CMT6GX3M3A1866C9 (6 x 2Gb) | |
| HDD: OCZ RevoDrive 3 (240Gb) | |
| Видеокарта: NVIDIA GeForce GTX 1050 Ti | |
| Звук: Realtek High Definition Audio (ALC889) | |
| Блок питания: Corsair CMPSU-850HX (850Вт), ~2009 г. | |
| CD/DVD: LG GH22NS50 | |
| Монитор: ASUS VK278Q (27″) | |
| Ноутбук/нетбук: ASUS EEE PC Lamborghini VX6S: Atom D2700 (2,1Ghz) | 4Gb RAM | Radeon HD 6470M (1366×768; 12,1″) | Corsair «Force 3» SSD (90Gb) | |
| ОС: Windows 7 «Ultimate» (64-bit) | |
| Прочее: Клавиатура: Logitech G19 | Мышь: ASUS GX850 | Акустика: SVEN-Audio HA-385 |
misha2, MHDD и Victoria такой пароль отказалась принимать. Первая прога написала Fail. Количество буковок WDC считал тщательно, именно 32 было (последние две — просто WD а не WDC). Проверял дважды. Victoria почему-то написала «Работа с паролями невозможна, HDD в режиме Freeze-lock». Что касается мастера — если найдете такого мастера в г. Щёлково и с таким аппаратным комплексом, а также который не дороже 300 руб. возьмет за это, то дайте знать. Я такого пока что не знаю.
ZU попробовал еще раз: сделал флэшку в FAT32, запустил Volkov Commander, запустил ZU с той же флэшки, но безрезультатно. Все тот же бесконечный отсчёт на обоих ключах (/p и /s).
ATAPWD (HDD Password Utility) из состава Hiren Boot CD хард вообще отказалась видеть.
Нашёл старый рабочий компьютер (AGP, DDR1 и т.п.), тогда SATA-разъёмы только появлялись на материнках. Сей комп с подключенным хардом из ноута тупо повис после POST-экрана. Хотя со своим родным хардом включается и грузится нормально. Видать, в те годы на такие крутые харды не рассчитывали.
Удали ненужное. Или всё, что можно сказать о DCO.
Это возможность легко и быстро отключать ненужные пользователю функции винчестера, которые могут по какой-то причине мешать, создавать опасность или конфликтовать с оборудованием .

Как работает DCO
Винчестер имеет служебную микропрограмму («прошивку»). Она определяет свойства и поведение конкретной модели накопителя. Если в процессе его жизни выяснится, что в микропрограмме допущена ошибка или можно что-то улучшить — производитель выпускает обновление прошивки.
Когда разработчики создают винчестер, они стараются заложить в него большой набор функций, чтобы соответствовать стандарту и расширить область применения изделия. Ведь его могут применять в разных устройствах: компьютерах, системах видеозаписи, музыкальном центре, автомобиле, внешнем боксе, и даже в станке с ЧПУ.
Но иногда оказывается, что некоторые функции сильно мешают. Для того, чтобы их выключить, нет смысла менять всю программу. Достаточно изменить лишь её настройки. Для этого был придуман Device Configuration Overlay — отдельный небольшой модуль, в котором эти настройки хранятся и могут меняться пользователем. При этом находящаяся на винчестере информация никак не затрагивается.
«Весёлая» история
В начале 2000-х годов производители материнских плат очень старались застраховать своих пользователей от потери содержимого BIOS — микросхемы, обеспечивающей старт компьютера. Прошивки BIOS иногда портились, а также могли быть стёрты вирусами, специально созданными для порчи Flash BIOS (например, «Чернобыль»). После такого события — компьютер становился совершенно неработоспособен, и требовал квалифицированного ремонта.
И вот, конструкторы плат придумали небольшой, и как им самим показалось — удачный лайфхак. Они стали дублировать прошивку BIOS в самый конец винчестера, где нет разделов. А чтобы пользователь и вирусы не ковырялись в ней — стали «закрывать» эту область через обрезание размера винта командой HPA. Но «недолго музыка играла».
Примерно в 2004-м году ёмкости серийно продаваемых винчестеров стремительно преодолели планку в 128 Гб, и перешли на адресацию 48 бит. И тут началось такое, что никто не ожидал. Новые жесткие диски заблокировались на объём 768Mb и заметно потрепали нервы пользователям. Ведь для их разблокировки многим пришлось обращаться в сервис. Причина оказалась в том, что встроенная в BIOS программа уменьшения объёма HDD не была рассчитана на адресацию, более чем FFFFFFFh секторов (это 268435455 x 512 = 131071 Mb — предел для 28 бит). Возникало переполнение разрядов переменной, и старшие биты обнулялись. Осложнял ситуацию описанный в моей статье глюк винчестеров фирмы Seagate.
Разумеется, даже разблокировка объёма не гарантировала спокойную жизнь в дальнейшем. Неприятность могла повториться. Для того, чтобы прервать эту свистопляску, был только один надёжный способ — отключение функции HPA. Насовсем. Обычно это делалось на аппаратно-программном комплексе через модификацию микрокода, но если винчестер поддерживал DCO — задача предельно упрощалась.
Пароль — не игрушка!
Почти все современные винчестеры поддерживают функцию установки паролей и экстренного стирания данных. Но иногда пароль на винчестер ставится без уведомления пользователя. Например в некоторых ноутбуках BIOSы по-умолчанию закрывают винт паролем, и при каждом включении производят временную разблокировку HDD/SSD до выключения питания. Для пользователя этот процесс выглядит совершенно незаметно. Замысел разработчиков здесь такой: если злоумышленник похитит компьютер, то даже вынув винчестер и подключив его к другому компьютеру, он не сможет прочитать данные . Но к сожалению, пароль пользователя ПК и пароль в винчестере — не совпадают. Ибо то, что подаётся в винчестер — шифруется ноутбуками по специальному алгоритму. И при неисправности ноутбука — свою информацию потеряет уже законный пользователь. Разблокировать некоторые винчестеры довольно сложно даже в условиях мастерской. Некоторые современные модели HDD и SSD распаролить невозможно, т.к. они ещё и шифрованы. Проще предотвратить установку паролей, отключив эту опцию в самом накопителе. Это также можно сделать через DCO.
Быстрое уничтожение данных на SSD
Рассмотрим ситуацию с другой стороны. Вам необходимо быстро стереть компрометирующую информацию с накопителя. Лучше всего для этого подходят SSD. У них, в отличии от HDD, стирание данных через подсистему безопасности происходит не за десятки минут, а за пару секунд.
Однако, стереть накопитель в системе Windows непросто. Дело в том, что с целью противодействия вирусам, Windows запрещают любые действия с подсистемой безопасности, подавая в винчестер защитную команду Security Freeze lock. Отменить её можно только физически — выключив питание накопителя. Замкнутый круг? Нет.
На помощь придёт DCO.
Если отключить в накопителе опцию безопасности — то команда Freeze lock не сработает .
Я делал следующий эксперимент:
- Через DCO отключал на HDD опцию Security (это можно сделать через USB-бокс , в PIO, из-под более древней системы, или банально передёрнув питание накопителя — во всех случаях статус Frozen будет сброшен).
- Подключал накопитель к Windows 7.
- Включал через DCO функцию Security. Windows не замечала её появления, и не блокировала накопитель.
- Подавал в накопитель команду Security Erase. Данные немедленно уничтожались .
Если такой финт проделать с SSD (в частности, Samsung Evo 850 поддерживают функцию DCO) — можно добиться мгновенного стирания информации, вплоть до её уничтожения вместе с операционной системой, в обход любых защит Windows.
Скрытый объём
Некоторые модели винчестеров, особенно имеющие только один диск и одну магнитную головку, выпускаются с завода с уменьшенным объёмом и по меньшей цене. Это сделано для сегментации рынка — чтобы максимально охватить весь ряд востребованных емкостей, и получить максимум прибыли. Например, так делала фирма Maxtor на моделях Diamond Max Plus 8, Diamond Max 541 и Fireball 3. Обрезаны они были, как это ни странно, через DCO. Достаточно подать такому накопителю команду Restore DCO — и пользователь получал вдвое больший объём.
Возможен и обратный процесс. Можно указать в настройках DCO другое значение ёмкости и применить настройки. Это будет аналогично действию HPA, но не будет разблокироваться с помощью HPA. Для чего применить — решайте сами.
Отключение S.M.A.R.T.
Может потребоваться в том случае, если какая-то программа без спроса лезет накопителю в S.M.A.R.T и неверно интерпретирует данные. Например, отвлекает тревожными сообщениями, замедляет работу. Или для спасения данных используется операционная система, в которую встроены S.M.A.R.T-функции, и которые нельзя отключить (к слову, за функции мониторинга S.M.A.R.T в Windows 7 отвечает файл DFDWiz.Exe). В такой ситуации отключения SMART-функций с помощью DCO даст системам понять, что винчестер не поддерживает S.M.A.R.T и проверять его не нужно.
Аналогично может потребоваться отключение других функций. Был случай, когда знакомый подключил винчестер Samsung к стационарному видеорегистратору, после чего винт перестал раскручиваться и «впал в кому». Как оказалось, в винт была подана хитрая команда, которая перевела его в режим Power-Up In Standby. Он не позволяет винчестеру работать до подачи другой команды — Disable Power-Up In Standby. Пришлось обращаться в сервис.
Как пользоваться DCO в программе Victoria
Краткая инструкция встроена в программу Victoria, начиная с версии 4.76 на вкладке DCO, и состоит из четырёх шагов:
Шаг 1: Нажимаем кнопку Identify
При этом из служебной зоны винчестера читается DCO-структура и интерпретируется программой. Те пункты, которыми можно управлять — обзаводятся галочками. Не подлежащие изменению — деактивируются.
Шаг 2: Нажимаем кнопку Restore
В винчестер подается команда, которая сбрасывает все прошлые настройки, если они были. Если же их не было (заводская неизменённая конфигурация) — накопитель выдаст ошибку. Это абсолютно нормально!
Шаг 3: Необходимо установить или снять необходимые галочки-опции HDD. Можно ввести другой размер диска (поле Max LBA).
Шаг 4: Нажимаем кнопку Apply и применяем настройки. При этом DCO-структура, изменённая программой, возвращается обратно в накопитель.
Если винчестер вернул ошибку — ничего страшного, настройки не применились. Читаем статью до конца.
Кнопка Freeze блокирует работу DCO до выключения питания. Нажимать без необходимости её не надо.
Особенности применения DCO и причины неудач
Поскольку эта система может управлять опциями безопасности накопителя, разработчиками винчестеров введено несколько зависимостей, исключающих применение DCO для нейтрализации уже задействованных функций. Для неопытного пользователя они могут быть неочевидны, но их нужно учитывать. Рассмотрим каждую из них.

Предположим, на накопителе стоит пароль. В этом случае нельзя выключить опции безопасности сразу. Сначала нужно удалить пароль. Кроме того, все накопители, смонтированные в Windows, сразу после определения в ней получают команду Security Freeze Lock — запрет смены/установки пароля. Это сделано для того, чтобы вирусы также не могли установить пароль на HDD. Потребуется передёрнуть питание HDD. Или вообще не монтируя диск в системе, воспользоваться режимом PIO — кому как удобней.

Винчестер уже обрезан через HPA. Нельзя просто взять, и отключить HPA, которая активна. Сначала следует вернуть номинальный объём через HPA, а после — отключать функцию. А поскольку HPA ставится однократно за сессию питания — то также потребуется передёрнуть питание на HDD.

Отключить SMART тоже просто так не удастся. И на это есть 2 причины.
- Чтобы выключить SMART через DCO. нужно сначала выключить его через ATA. Переходим на вкладку SMART, и нажимаем SMART OFF.

Чтобы эксперименты были успешными, нужно соблюдать ещё одно обязательное условие: перед каждой попыткой изменением конфигурации — сбрасывать предыдущую, кнопкой Restore .

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

Между получением конфигурации и её применением — недопустимы другие операции (например получение паспорта HDD) , т.к. используется общий буфер данных.

Обе структуры DCO: извлечённая из HDD и поданная в него после изменений — сохраняются в виде файлов в папке с логами.
Заключение
Теперь вы знаете о DCO абсолютно всё. Вероятно, программа Victoria 4.76 стала первой свободной программой для Windows, умеющей работать с конфигурацией накопителей.
В 2019 г. DCO исполнилось 16 лет, и такие SSD-бренды, как OCZ-Vector / Octane, Plextor, Samsung по-прежнему поддерживают его. Есть DCO и во многих гибридных накопителях SSHD.
К сожалению, разработчики OCZ-Vertex и Kingston отказались от DCO. Альтернативой у них служат команды более нового протокола — Smart Command Transport. Но это совсем другая история.
Сергей Казанский, 11.09.2019г.
Список некоторых первоисточников.
- Форум Microsoft MSDN — Как отключить SECURITY FREEZE LOCK на жестком диске?
- Wikipedia.org — Device Configuration Overlay
- IXBT: Отключение HPA или Решение проблемы «Размер моего диска на 1 ТБ меньше паспортного»
- С. Казанский. «Как снять пароль с диска, если он известен?»
- С. Казанский: «Как вернуть объём Барракуды» (2005 г.)
Victoria — тестирование, сервисное обслуживание дисков с интерфейсами IDE и Serial ATA
Программа ориентирована на широкий круг пользователей ПК, и предназначена для тестирования, сервисного обслуживания и помощи при восстановлении информации с любых жестких дисков с интерфейсами IDE и Serial ATA. Программа представляет собой полностью готовое решение для всесторонней, глубокой, и в тоже время максимально быстрой оценки реального технического состояния HDD. В ней собраны возможности большинства фирменных диагностических утилит для HDD, и другие полезные функции, имеющиеся в ATA стандарте на современные жесткие диски, однако нет ограничений на поддерживаемые модели.
Цель написания freeware версии — помочь вовремя обнаружить неисправность жесткого диска. Также программа защищает интересы профессиональных ремонтников, ибо своевременное обнаружение болезни — залог успешного её лечения. Нередко пользователь остается в неведении о состоянии жесткого диска, вплоть до серьезной его аварии, когда уже ничего нельзя сделать (информация сильно испорчена, или для ее восстановления требуются серьезные материальные затраты). Данная программа совмещает в себе как профессиональные, так и бытовые функции, и позволяет протестировать винчестер пользователям без специальных знаний. В тоже время, программа не имеет никаких ограничений на доступ к тестируемому жесткому диску, и в руках специалиста может служить мощным диагностическим инструментом в нестандартных, и в неописанных в документации ситуациях.
Другая возможная область применения — измерение скоростных характеристик накопителей. Большинство бенчмарк-программ написаны под многозадачные ОС, и работают с диском через цепочку API+дисковый драйвер, что требует инициализации накопителя в системе, и наличия включенного режима UDMA. Виктория работает с винчестером напрямую, и кроме всего, позволяет интерактивно управлять тестированием. Автор не преследовал цель написать бенчмарк для HDD, однако некоторые методы тестирования были высоко оценены коллегами, и поэтому включены в эту версию.
Программа может служить хорошим подспорьем для работников фирм, занимающихся продажей, сборкой и обслуживанием компьютеров. Благодаря функции тестирования интерфейса, можно мгновенно распознать некачественный шлейф или нарушение контакта в нем.
Следует отметить, что Виктория показывает только физическое состояние диска. Дефекты файловых систем останутся незамеченными — для их обнаружения существуют системные утилиты (например, SCANDISK, NDD). В тоже время, если на ПК периодически пропадают или портятся данные, а на его винчестере обнаруживаются явные физические проблемы разумно предположить, что именно они и являются причиной сбоев.
Все операции с диском реализованы через порты контроллера, поэтому программе не требуется поддержка испытуемых винчестеров материнской платой и определение их в BIOS’е. Также, программе не важно, есть ли на диске какая либо файловая система, какой размер кластера, и сколько на HDD логических разделов — она показывает диск в таком виде, как это задумали разработчики HDD (в соответствии со спецификацией ATA/ATAPI7), на весь физический объем, независимо от Вашего компьютера, BIOS’а и операционной системы.
Основные возможности программы
- Чтение паспорта диска и вывод на экран полной технической информации о накопителе;
- Определение установленных в системе ATA/SATA контроллеров (включая дополнительные);
- Управление уровнем акустического шума;
- Просмотр S.M.A.R.T. параметров накопителя, быстрая оценка его состояния по псевдографическим шкалам и по регистру статуса BAD GOOD ;
- Работа с Host Protected Area: изменение физического объема диска;
- 5 режимов тестирования поверхности, верификацией, чтением и записью, с подсчетом и отображением адресов дефектных блоков;
- Режим дефектоскопии: анализ состояния поверхности 3-мя видами тестов, с подсчетом и отображением нестабильных участков, с указанием точных адресов каждого нестабильного сектора и автоматическим занесением их в текстовый файл;
- Тестирование буферной памяти и интерфейса на наличие «глюков» и искажения информации при приеме и передаче;
- Скрытие дефектов поверхности методом переназначения секторов из резерва (remap) на любом из 3-х тестов;
- Измерение производительности жесткого диска (бенчмарк функции):
- Измерение скорости линейного, нелинейного и случайного чтения с HDD;
- Измерение скорости позиционирования головок HDD и времени доступа к секторам;
- Очистка диска (или его части) от информации — «низкоуровневое форматирование;
- Управление опциями безопасности: установка пароля на HDD, снятие пароля, быстрое стирание информации без возможности её восстановления и т.п.
- Возможность остановки и запуска шпиндельного двигателя HDD;
- Тест позиционирования головок HDD (аналогично тому, как это делает ОС при интенсивной работе), с целью выявления надежности и термоустойчивости дисковой подсистемы ПК (приводит к разогреву HDD);
- Посекторное копирование произвольной области HDD в файл, с пропуском дефектных участков (может быть полезно для спасения информации с поврежденного диска);
- Посекторное копирование файлов на HDD;
- Просмотр информации о логических разделах HDD с указанием границ разделов (без определения HDD в BIOS);
- Индикация режимов работы HDD, содержимого регистров, и визуализация кодов ошибок по индикаторным лампочкам;
- Встроенная контекстно-зависимая система помощи по клавишам и консольным командам.
II. Системные требования
- CPU не ниже Intel Pentium. Существует также версия 2.9x, работаю щая на любом CPU от 486DX;
- Операционная система — DOS 4.0 или выше, Windows 9x, Me, 2000/XP (загрузочная версия Виктории имеет свою ОС, и может работать да же на «голом» компьютере с одним HDD);
- RAM 640k или выше;
- Видеокарта — не ниже CGA (цветной текстовый режим 80х25);
- Клавиатура;
- Желательно иметь хороший блок питания и хорошее охлаждение тестируемого HDD;
Здесь и далее в тексте — слова-синонимы
HDD = диск = жесткий диск = винчестер = винт = накопитель;
сдох = вышел из строя = приказал долго жить = испортился;
BIOS = биос (базовая система ввода-вывода с точки зрения программиста);
ОС = операционная система; фича (feature) = фишка = опция = функция;
глюк = баг = ошибка = неправильное поведение;
SMART = S.M.A.R.T. = встроенная в винчестер система самоконтроля.
III. Установка программы и ее запуск
(Только для не-загрузочных версий 3.0 — 3.4)
Программа состоит из единственного исполняемого файла и вспомогательного файла конфигурации vcr.ini. Файл vcr.ini не является обязательным и служит для точной настройки Виктории на определенные условия работы, что позволяет достичь максимального удобства (например, туда можно прописать адреса внешнего PCI ATA контроллера, чтобы каждый раз не выбирать нужный винт через меню), отключить звук итп.
Программа является ДОС приложением, работающем в однозадачном ре жиме, и имеющем текстовый интерфейс. Поэтому для работы Вам потребуется соответствующая операционная система. Это может быть, напри мер, загрузочный компакт-диск, сделанный на основе дискеты от Windows 9х или Windows Me, сама дискета, или даже винчестер. Можно запускать программу и непосредственно под Windows, и она будет прекрасно работать, но для этого нужно выполнить одно из условий:
- Отключить (Панель управления > Система > оборудование > контроллеры жестких дисков) тот канал IDE контроллера, к которому подключен испытуемый винчестер. Это нужно для того, чтобы программа могла обращаться напрямую к портам HDD.
- Можно не отключать канал в системе, но тогда при загрузке Windows к этому каналу ничего не должно быть подключено (а иначе ОС, найдя ATA устройство, заблокирует порты). Если Вы выбрали этот вариант, то подключать винчестер нужно после загрузки системы. Или, как вариант, включать в испытуемый винчестер питание только после полной загрузки ОС (не все дешёвые блоки питания это «терпят»)
- Абсолютно бессмысленно отключать винчестер в BIOS, ибо современные многозадачные операционные системы не пользуются BIOS’ом для проверки наличия HDD на канале. За него это делает драйвер. А вот если у Вас «чистый» DOS — отключение HDD в BIOS’е будет полезно, для того, чтобы сама DOS не видела этот диск (и чтобы не использовала таким образом порты, что теоретически может привести к конфликтам между ОС и программой).
При работе из под систем на ядре Windows NT необходимо установить драйвер UserPort. Для этого нужно:
- Скачать UserPort, например тут: http://hdd-911.com/downloads/UserPort.zip
- Скопировать файл userport.sys в папку WINDOWS\SYSTEM32\DRIVERS
- Запустить userport.exe. Перед нами появится панель с 2-мя окошками. Левое окошко относится к работе программы в ДОС-окне, правое — на полном экране. По умолчанию в них прописаны номера портов LPT — все их можно удалить. В оба окна нужно вписать номера портов secondary-контроллера HDD:
-
170h-177h
-
376h-377h
Эти тезисы являются основными и при работе с другими аналогичными программами, получающими доступ к оборудованию через порты.
Примечание:
- Загрузочная дискета Windows XP не подходит для запуска программы!;
- Очень полезным окажется какой-нибудь файл-менеджер, например Volkov Commander (для «чистого» DOS) или FAR (для Windows). Следует отметить, что внутри Виктории есть встроенный файл менеджер.
После запуска программы на экране появится ее интерфейс, состоящий из следующих основных частей:
- Самая верхняя строка: информация о версии программы и о ее авторе.
- Вторая строка: индикаторные лампочки регистров HDD, позволяющие судить о том, чем занят накопитель в данный момент.
- Третья строка: в нее выводится название модели испытуемого HDD, его серийный номер и некоторая другая информация.
- Самая нижняя строка: подсказки по функциональным клавишам.
- Вторая строка снизу: «Status Box» — отображает наиболее актуальные системные события. Например, сообщения об ошибках или ожидание готовности винчестера.
- Третья строка снизу — пустая.
- Все остальное — рабочий стол программы. На нем отображается весь процесс работы с накопителем.
IV. Управление программой
Для управления используется клавиатура ПК, поддержка других устройств ввода отсутствует.
Выбор интерфейса
Выбор IDE/SATA винчестера на стандартном порту
Возможно, при первом запуске Вам потребуется выбрать именно тот винчестер, который Вы хотите протестировать (а не тот, что прописан в файле vcr.ini — в дистрибутиве там указан Secondary Master). Для этого необходимо нажать клавишу P. Появится меню с названиями каналов. Выбор производится клавишами управления курсором «вверх» и «вниз». При перемещении курсора, в реальном времени отображается индикация (лампочки), что позволяет судить о готовности HDD. У исправного винчестера всегда будут гореть 2 лампочки: DRSC и DRDY (у некоторых может еще и INX). В регистрах ошибок может быть зажжена красная лампочка AMNF, а остальные должны быть погашены. Подробнее о назначении индикаторов см. ниже. После установки курсора на нужный пункт необходимо нажать ENTER.
Выбор винчестера на внешнем (дополнительном) PCI/ATA/SATA/RAID контроллере
Осуществляется в самом нижнем пункте меню. После нажатия ENTER начнется поиск внешних контроллеров и винчестеров на них. Определятся только реально присутствующие и исправные винчестеры, остальные система «не заметит». При нахождении каждого дополнительного порта в таблицу будет выдано:
- Название фирмы-изготовителя ATA-контроллера (или его Vendor Code);
- Название контроллера (или его ID Code);
- Класс: EXT / INT / RAID (внешний, внктренний, RAID);
- Адрес порта (или прочерк, если его не удалось определить);
- Название подключенного винчестера, если он имеется на канале, и исправен;
Все найденные порты будут пронумерованы. Вам останется лишь выбрать нужный, нажав соответствующую клавишу.
Примечание: программа может не найти винчестеры на некоторых моделях контроллеров Promise.
Чтение паспорта диска
Паспорт HDD — это зашитая на заводе изготовителе информация, характеризующая семейство HDD и его индивидуальные особенности. В него входит название семейства, название модели, уникальный серийный номер, версия встроенного микрокода, логические параметры (геометрия), параметры интерфейса и многое другое. Паспорт необходим для правильной идентификации устройства. Если паспорт винчестера по каким-то причинам потерян, HDD становится негодным, ибо ни одна программа не сможет использовать его по назначению.
Паспорт отдается при нажатии клавиши F2.
Вот что мы получаем оттуда (сверху вниз):
- Полное название модели и версию встроенного микрокода;
- Серийный номер HDD;
- Количество доступных физических секторов (LBA);
- Объем диска в байтах;
- Параметры CHS (число цилиндров, логических головок, секторов (актуально только для винчестеров < 8,4 Гб).
- SMART (статус). Enabled/Disabled — показывает, включен ли SMART мониторинг в самом накопителе.
- Errlog — внутренние журналирование ошибок.
- Selftest — внутренний самотест (обычно это тест поверхности в то время, когда к винту не происходит обращений извне). Если в накопителе присутствует что нибудь из этого, в паспорте появится надпись «[. ] present». Имейте в виду, что на некоторых винчестерах самотест может быть отключен в паспорте, но реально присутствовать и работать.
- Состояние дискового кэша. Программа делает попытку определить его размер, если это не удается, сообщает «unknown size»;
- Look ahead — предвыборка чтения. Может быть включена или выключена. Выключенная предвыборка говорит о том, что или винчестер очень старый (не поддерживает эту функцию, либо она отключена утилитами/сглючила. Винчестер с отключенной предвыборкой работает очень медленно, и обычно это сразу заметно при работе с файлами.
- Write — кэширование записи. Осуществляет отложенную запись буфера на диск, для ускорения файловых операций. Может быть включено или выключено. У всех современных винчестеров включено по умолчанию.
- Поддерживаемые режимы. Это наиболее интересная часть паспорта. В ней указано, какие технические возможности есть у данной модели HDD. Вот расшифровка сокращений:
- HPA — Host Protected Area: винчестер поддерживает возможность изменения физического объема.
- CHS — Cylinder/Head/Sector: режим адресации дискового пространства (произошедший от накопителей FDD и первых HDD), позволяющий обращаться раздельно к головкам, секторам и дорожкам. В современных накопителях логическая CHS геометрия оставлена для совместимости со старыми программами и BIOS.
- LBA — Logical Block Addressing: винчестер поддерживает адресацию логическими блоками, что является стандартом де-факто для современных HDD, ОС и BIOS.
- PIO — Programmable Input/Output: программный ввод вывод, режим обмена данными между винчестером и оперативной памятью, осуществляемый при участии центрального процессора ПК. Характеризуется простотой реализации, надежностью и универсальностью, однако отнимает процессорное время, что делает этот режим непригодным для многозадачных систем.
- DMA — Direct Memory Access: винчестер поддерживает прямой доступ к памяти, что позволяет разгрузить центральный процессор ПК при обмене с диском. Также как и LBA, этот режим является нормой, а не исключением для современных HDD. В скобках приведены предельные режимы, в которых винчестер может использовать DMA.
- AAM — Automatic Acoustic Management: винчестер позволяет программно управлять уровнем акустического шума. Это достигается за счет изменения скорости позиционирования головок.
- APM — Advanced Power Management: винчестер имеет встроенные средства управления энергопотреблением, что позволяет сделать систему более экономичной и, в некоторых случаях, повысить надежность винта (за счет меньшего тепловыделения и парковки головок). Для настольных систем малоактуально.
- DLMC — Download Microcode: винчестер позволяет обновлять себе «прошивку» путем загрузки внешнего микрокода (распространяется производителями HDD и фирменных ПК в качестве апдейтов микропрограмм).
- FLC — Flush Cache: винчестер поддерживает команду принудительного сброса кэша на диск. Вероятно, эта команда предназначена для снижения риска потери данных при внезапном отключении питания.
- SMS — Set Max Security Support: лень описывать эту фигню:) Если интересно читайте ATA стандарт.
- DCO — Device Configuration Overlay: винт поддерживает конфигурирование набора некоторых АТА функций по желанию пользователя. К ним относятся включение и выключение SMART, поддержки адресации 48 бит, AAM, изменение предельных режимов DMA и т.д. (см. также раздел «Восстановление конфигурации диска»)
- ON: винчестер запаролен ATA паролем (наличие установленного на винт пароля также индицирует лампочка PWD в верху экрана);
- OFF: на винчестере не установлен пароль;
- High, Maximum: уровень секретности установленного пароля
- Frozen:винчестер в состоянии Freeze-lock (парольная система работает, но временно заблокирована);
- Expired: пароль пытались неудачно снимать 5 раз. В результате чего HDD заблокировал парольную систему до выключения питания;
- Locked: установлен пароль, доступа к информации нет.
- Unlocked: винчестер открыт, есть доступ к информации. При этом пароль может быть установлен, если HDD временно открыт командой UNLOCK.
- Not supported: винчестер не имеет системы парольной защиты.
Программный сброс диска
Выполняется клавишей F3. Эта операция останавливает внутреннюю работу HDD (если он был занят обработкой команды или самотестом) и приводит интерфейс в состояние по умолчанию (очищает регистры после предыдущей команды и выставляет готовность к приему следующей). Необходим для диагностики накопителя, прерывания зависшей микропрограммы винта, и т.д. Выполняется сразу после нажатия кнопки. Также работает и непосредственно во время операций с диском (например, чтения). Признаком успешного сброса будет включенный индикатор AMNF
Работа с поверхностью HDD
В программу встроен мощный сканер поверхности HDD, который позволяет продиагностировать HDD на наличие сбойных участков, плавающих дефектов и ошибок интерфейса. Программа способна протестировать большинство винчестеров на предельной скорости, независимо от типа ATA контроллера и интерфейсного кабеля.
Особенностью сканера является применение эксклюзивных алгоритмов, не встречающихся до этого в других аналогичных утилитах. К ним относится автоматическое распознавание поддерживаемых стандартов, и настройка таймера в соответствии с быстродействием тестируемого HDD. Это позволяет эффективно проверять как медленные, так и быстрые диски. А оригинальный метод измерения временных интервалов позволяет работать под виртуальными ДОС машинами WINDOWS практически без снижения точности.
Скан поверхности работает в тесной взаимосвязи с паспортом HDD, получая из него все необходимые параметры. Поддерживаются режимы LBA 28 и 48 бит, которые распознаются автоматически. Все что можно было автоматизировать — успешно реализовано, и не требует никаких настроек со стороны пользователя.
Для того, чтобы протестировать поверхность винчестера, нажмите клавишу F4 «Scan». При этом на экране появится менюшка, назначение пунктов которой понятно из выводимого в ней текста. Рассмотрим третий сверху пункт он имеет 6 состояний, которые можно переключать клавишей «пробел» или клавишами стрелок «вправо» и «влево».
Линейное чтение (до версии 3.1 было «верификация»)
Тестирование поверхности в LBA адресации. Предназначено для максимально быстрой и точной диагностики состояния поверхности. Во время тестирования все адресное пространство винчестера разбивается на условные участки одинаковой длины блоки. Размер одного блока равен 256-ти секторам. Программа измеряет время доступа к каждому блоку по команде верификации, и по нему на экране рисуется прямоугольник соответствующего цвета. При этом данные физически читаются с диска, но не передаются по интерфейсу, поэтому это самый быстрый способ проверки поверхности, с ним может сравниться только работа в предельных UDMA режимах (исключение Seagate Barracuda IV, V и 7200.7 с версиями микрокода 3.xx. Для этих HDD скорость верификации ~28-32 мб/сек является нормальной).
Если винчестер зависнет из-за неисправности во время сканирования, программа ждет около 16 секунд, после чего перейдет к следующему блоку, выводя значок T (Timeout) в поле скана. Непрерывные задержки свидетельствуют о том, что HDD не отвечает на команды — можно попробовать подать команду сброса в его контроллер, нажав F3 непосредственно во время скана, иногда это помогает.
Случайное чтение:
Тестирование поверхности, когда адреса блоков выдает генератор случайных чисел. Диапазон можно задать в виде границ LBA в меню скана. При этом также измеряется время доступа к каждому блоку, но в отличие от линейного чтения, оно будет больше т.к. складывается из времени позиционирования головки на нужный цилиндр и собственно, чтения (возможно, что и из эффективности алгоритма кэширования [предположение автора]). Полученный результат достаточно точно отражает общее быстродействие диска в реальных задачах, когда винчестеру приходится совершать много циклов чтения данных из разных мест (во время работы ОС читаются не только фрагменты файла, но и части служебных таблиц файловой системы, расположенных в отдалении от тела файла). И действительно, средняя скорость чтения около 8 мб/сек совпадает с показаниями других программ (например FAR) при копировании файлов. Также эта скорость зависит от настроек, влияющих на скорость позиционирования
BUTTERFLY- чтение:
Тестирование поверхности по алгоритму «бабочка», когда попеременно читаются начало и конец дискового пространства, каждый раз со сдвигом на 1 блок (256 секторов), в результате чего к концу теста головки оказываются в середине рабочей зоны HDD. Этот алгоритм совмещает в себе позиционирование на разные дистанции, а также прямое и реверсивное чтение, и применяется в профессиональных утилитах, в том числе при заводском тестировании винчестеров средствами селфскана. Отличие от случайного чтения в том, что butterfly — это тест всей поверхности с позиционированием, сканирующий все секторы HDD по определенному закону и имеющий окончание. Случайное чтение — это агрессивный тест, не имеющий окончания и закономерности, и он почти не предсказывается алгоритмами предвыборки. Оба теста создают большую нагрузку на блок головок и электронику, поэтому позаботьтесь о хорошем охлаждении HDD воизбежании его порчи. Также следует отметить, что Butterfly выполняет проверку медленней, чем линейное чтение, и на винчестере в 10 Гб может длиться около 30 минут. Причина — потери времени на перемещение головок, и постоянные ожидания поворота дискового пакета на нужный угол. Как и в предыдущих тестах, диапазон можно задать в виде границ LBA в меню. Допустимо использовать сброс и вызывать справку во время проверки. Все 3 вида тестов могут работать совместно с дефектоскопом и ремапами — их выбирают в 4 пункте меню.
PIO-чтение (в версии до 3.1 было «Чтение»)
В отличие от верификации, используется настоящее чтение секторов из винчестера. Отличается более низкой скоростью — около 2-8 мб/сек (1 Гб читается 2-7 минут), поэтому целесообразно лишь для небольших участков. Применяется не для измерений, а в основном для отлова «глюков» винта, проверки работоспособности канала чтения и интерфейса. В реальных условиях компьютер работает с винчестером в режиме DMA, где скорость намного больше (и производители оптимизируют HDD именно под DMA режим).
С помощью PIO-чтения можно выбрать наиболее быструю модель HDD для установки в систему, не поддерживающую режим DMA. Такие системы до сих пор встречаются, например учетно-кассовые машины, медицинское диагностическое и музыкальное оборудование, различные роботы (например, автоматические узлы FTN сетей).
Примечание: Для повышения скорости работы в PIO нужно принудительно включить максимальный режим в BIOS. Обычно там стоит «Auto» по умолчанию, замена его на PIO 4 позволит поднять скорость более чем в 2 раза. Также она зависит от общего быстродействия ПК.
PIO-чтение в файл (в версии до 3.1 было «Чтение в файл»)
В отличие от «просто чтения» данные с винчестера пишутся в файл в текущем каталоге. Программа корректно обрабатывает бэд-блоки, не «вылетая» на них, вся остальная информация сектор за сектором пишется в файл (вместо дефектных участков вставляются нули). Начиная с версии 3.1 — применен алгоритм от профессиональной программы, обеспечивающий достаточно высокую скорость в PIO 4 и динамический переход с блочного чтения на посекторное в зависимости от ошибок блока. Число попыток чтения сектора при ошибке равно двум: первый раз при блочном доступе, второй при посекторном для более полного извлечения данных из поврежденных накопителей с активной предвыборкой чтения. Сброс для ускорения обработки ошибок и «длинное чтение» в бесплатной версии отключены. В связи с практической бесполезностью кодов ошибок HDD при чтении в файл они не выводятся, хотя и обрабатываются. Вместо них программа сообщает «I/O error» и номер дефективного LBA.
Содержимое дефектного сектора заполняется нулями и пишется в файл. Он имеет ограничение 2 Гб, если копирование производится на раздел FAT32, однако в NTFS никаких ограничений нет. При вводе имени файла без расширения ему автоматически будет присвоено расширение *.trk
Итог: для спасения информации с накопителя, имеющего дефекты, рекомендуется запускать Викторию с раздела NTFS, на котором помимо самой программы имеется достаточное количество свободного места. Обычно это система Windows 2000 или XP. Перед применением желательно установить режим PIO-4 для SECONDARY канала в BIOS компьютера (для увеличения скорости чтения), затем загрузить Windows с драйвером UserPort, и только после этого подавать в копируемый HDD питание — это гарантирует отсутствие обращений Windows к винчестеру.
Запись (стирание):
Производит посекторное стирание информации с диска, блоками по 256 секторов. Может использоваться для устранения некоторых видов дефектов (аналогично низкоуровневому форматированию программами от производителей HDD). По скорости сравнимо с PIO-чтением. Следует отметить, что существует более быстрый способ очистки диска от информации — стирание через подсистему безопасности. Читайте об этом в разделе «Безопасность».
Запись из файла:
Пишет содержимое файла на диск посекторно, начиная с Start LBA и заканчивая длиной файла. Для выбора файла откроется окно встроенного менеджера. Длина вычисляется автоматически, под нее подстраивается счетчик процентов. Скорость достигает 6 Мб/сек. Процесс сопровождается визуальным сканом, обрабатывается время и блочные ошибки. Функция может быть полезна для коррекции разрушений файловых систем совместно с HEX редактором, и для клонирования небольших дисков.
Проверка интерфейса:
Производит циклическую запись шаблона данных в буферную память винчестера, затем чтение оттуда и сравнение прочитанного с записанным. При этом измеряется время чтения из буфера в диапазоне от 64 до 500 мкс. На этом тесте хорошо видно, что такое многозадачность встроенной в винт микропрограммы — время чтения разных циклов получается разное и зависит от модели HDD и от его режима работы. При несовпадении записанного с прочитанным выводится сообщение с указанием времени по часам. Наличие таких ошибок говорит о неисправности интерфейса или буферной памяти винта, и такой накопитель считается потенциально опасным, так как может исказить хранящуюся на нем информацию. Для получения высокой достоверности нужно выполнять этот тест достаточно долго, аналогично тестам оперативной памяти компьютера. Во время тестирования рекомендуется пошевелить IDE шлейф для диагностики плохих контактов, которые тут же будут обнаружены программой. Перед проверкой интерфейса можно остановить вал HDD, нажав клавишу S (при этом у HDD фирмы Seagate Вы увидите бо0ольшой прикол :-).