Приветствую Хабровчан. Я Артем Макаро�� aka Robin, ведущий инженер компании Хардмастер, уже много лет специализируюсь на восстановлении данных с разнообразных носителей. В процессе профессиональной деятельности, связанной с восстановлением данных, нередко приходится писать небольшие программки себе в помощь. И однажды в ответ на очередной вопрос очередного заказчика - "а вот у вас на сайте написано: программная проблема с жёстким диском, аппаратная проблема, а у меня какая?" было принято решение написать максимально простую утилитку, которая помогла бы обычному юзеру в первом приближении получить простой и быстрый ответ на этот вопрос.
Требования к ней я сам себе поставил следующие: никаких инсталляций в систему, никакой пачки dll-ок в довесок, вся прога - один exe-шник, который работает на любой более-менее современной Windows без регистраций, sms и плясок с бубнами, т.е. жмакнул мышкой на иконку и поехали. Ну и разумеется никаких денег за использование.
Но, как нередко бывает, в процессе многомесячных полевых испытаний программка потихоньку обрастала новыми функциями, изменяла внешний вид, избавлялась от ошибок и недочётов и в итоге доросла до момента, когда ей стало нестыдно поделиться со всеми желающими, заодно попросив, по возможности, протестировать на разных контроллерах \ материнках \ накопителях. Никаких уникальных функций и опций в ней нет, но всё известное и разрозненное в различных ПО тут заботливо объединено в одно целое и продолжает развиваться.
Итак, представляю вашему вниманию Easy Disk Checker - простая в использовании утилита под Windows x86/x64 для работы с дисками и флешками на ��аксимально доступном типовому пользователю ПК «физическом» уровне, независимо от файловой системы или её отсутствия. Поддерживаются:
Жёсткие диски SATA HDD
Внешние USB диски
SSD NVMe и SATA
USB флешки и карты памяти

Нажатие на "Список дисков" инициирует сканирование шин (SATA, USB, NVMe) и отображает список доступных в системе физических устройств. Для каждого диска выводится модель, серийный номер, версия микрокода (Firmware), физический объем, LBA-адресация и заданная в операционной системе метка тома.

При выборе диска в нижней части окна отображается его логическая структура (MBR/GPT разделы, файловые системы). В случае ошибки 0-го сектора Master Boot Record выводятся сведения об автоматически определённой из нескольких возможных, проблеме.


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

Выбрав для теста нужный накопитель в окне «Обнаруженные диски» и нажав кнопку «Проверить диск» откроется окно сводной информации, разделенное на функциональные блоки:
Информация об устройстве — модель, серийный номер, версия микрокода, объём, и если поддерживается, то значение RPM (rotate per minute), внутренняя модель внешнего диска, VID\PID флешек, предполагаемая модель микроконтроллера, что помогает в поиске сервисных утилит для «прошивки» флешки, и кнопками: "Бенчмарк" и "Тест на подделку" (доступно только для флешек и карт памяти).
Текущее состояние — экспресс проверка чтения диска в областях LBA в начале, середине, конце диска и кнопками: "Полное чтение" и "Полная запись"
Безопасность и функции — если возможно, то вывод сведений об ATA пароле, HPA (Host Protected Area) и Seagate FARM (доступно только на современных дисках Seagate).
Вывод содержимого таблицы самотестирования S.M.A.R.T., свёрнутое по умолчанию, не поддерживается на USB Flash и картах памяти.




Если в окне выбора дисков была указана USB флешка или карта памяти, помимо VID\PID устройства и предполагаемого микроконтролл��ра, становится доступна кнопка запуска "фейк-теста", чтобы можно было понять, кому повезло? Тебе, удачно купившему за $1 флешку на 100 петабайт, или дядюшке Ляо, впарившему очередной неликвид.

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

Нажатие кнопки «Отмена» приводит к прерыванию процесса, частично считанный файл-образ при этом не удаляется. На время чтения блокируется «спящий режим» Windows. Запись образа на другой диск происходит потому же принципу, перед началом проверяется чтобы образ влез на диск-приёмник. Маленький образ записать на большой диск можно будет, наоборот - не получится.
Проверка на нечитаемые и "плохие" сектора реализована последовательным чтением всех доступных LBA. Для удобства визуализации вся область диска представлена в виде динамических блоков. При тестировании диска в левой части окна заполняется карта блоков согласно легенде, а в правой выводя��ся сведения о размере автоматически выбранного блока, текущих адресе сектора, моментальной и средней скоростях проверки и расчётного времени до конца теста.

Тест полной записи идентичен чтению, перед началом выводится сообщение о безвозвратной потере содержимого перезаписанных областей. Рекомендуется применять как попытка самостоятельного "ремонта бэд-блоков" убирая soft-bad сектора или инициируя remap\reassign.
Помимо вышеописанного, утилита позволяет производить очистку носителей, входящих в состав Microsoft Storage Spaces, помогая определить, какие диски из доступных в ОС входят в массив.


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