Ошибка WinError 21 «The device is not ready» в DMDE появляется в момент обращения программы к флешке, когда Windows не может выполнить чтение секторов устройства — накопитель либо физически отвалился, либо его контроллер завис и перестал отвечать на команды. Это не ошибка самой программы: DMDE лишь транслирует код, который вернула операционная система при попытке низкоуровневого доступа к диску.
Типичная картина выглядит так: флешка отображается в списке устройств, вы запускаете сканирование или открываете том, и через несколько секунд появляется окно с кодом 21. Иногда сбой возникает сразу, иногда — на определённом LBA-адресе, что указывает на проблемную область памяти NAND. Ниже разберём, чем это вызвано, как отличить программный сбой от аппаратного и в каком порядке действовать, чтобы не усугубить состояние накопителя.
Что означает код WinError 21
Код 21 — это системная ошибка Windows, означающая, что устройство ввода-вывода не готово к выполнению операции. Драйвер USB-стека отправил команду чтения, но накопитель не подтвердил готовность в отведённый таймаут. Для флешек это почти всегда признак проблемы на уровне контроллера или питания порта, а не файловой системы.
Важно отличать WinError 21 от похожих кодов. Ошибка 23 (CRC) указывает на повреждение данных при чтении, ошибка 1117 — на сбой ввода-вывода, а 21-я означает именно отсутствие ответа устройства. Если в DMDE код появляется на одном и том же секторе, вероятна деградация ячеек памяти; если всплывает хаотично — подозрение падает на питание, кабель или сам контроллер.
Основные причины ошибки на флешках
Причин у кода 21 несколько, и они требуют разных действий. Перечислим наиболее распространённые:
- 🔌 Нестабильное питание USB-порта — передняя панель корпуса, хабы без внешнего питания и длинные удлинители часто не дают достаточного тока, и контроллер флешки уходит в перезагрузку.
- 💾 Износ или деградация NAND-памяти — при попытке чтения сбойных ячеек контроллер зависает, пытаясь выполнить повторные чтения, и Windows фиксирует таймаут.
- 🌡️ Перегрев контроллера — при длительном сканировании дешёвые флешки греются и отваливаются, после остывания снова определяются.
- ⚙️ Сбой прошивки контроллера — накопитель может определяться, но любое обращение к данным вызывает зависание.
- 🔧 Конфликт драйверов или антивируса — реже, но встречается блокировка прямого доступа к диску сторонним ПО.
Отдельно стоит ситуация, когда флешка была извлечена во время записи. В этом случае контроллер может остаться в незавершённом состоянии транзакции, и первые обращения к нему будут возвращать ошибку готовности, пока устройство не будет полностью обесточено.
Быстрая диагностика перед работой в DMDE
Прежде чем запускать посекторное сканирование, выполните простые проверки — они отсеивают большинство неаппаратных причин и не требуют специальных инструментов.
☑️ Проверка перед сканированием в DMDE
Обратите внимание на поведение светодиода флешки, если он есть. Равномерное мигание при обращении — норма; постоянное свечение без реакции системы или полное отсутствие индикации при определяемом устройстве чаще говорит о зависшем контроллере.
Также полезно открыть «Управление дисками» (diskmgmt.msc) и посмотреть, как система видит накопитель. Если диск числится со статусом «Нет носителя» или его ёмкость отображается нулевой — проблема аппаратная, и DMDE сможет помочь только при удачном доступе к чипу памяти через специализированное оборудование.
Пошаговое устранение программных причин
Начинайте с обратимых действий, которые не затрагивают данные на накопителе. Первый шаг — полное обесточивание: извлеките флешку, подождите пару минут и подключите заново. Это сбрасывает состояние контроллера и помогает при «зависшей» транзакции после небезопасного извлечения.
Второй шаг — проверка через другой порт и другой компьютер. Если на втором ПК DMDE читает диск без ошибок, причина в USB-контроллере или драйверах первой машины. В этом случае обновите драйвер чипсета с сайта производителя материнской платы и удалите устройство в «Диспетчере устройств» с последующим переподключением, чтобы Windows заново установила драйвер запоминающего устройства.
Третий шаг — работа в DMDE с щадящими настройками. Откройте диск как физическое устройство, а при появлении ошибки ввода-вывода выберите режим «Игнорировать» вместо «Повторить» и задайте в параметрах ввода-вывода уменьшенный размер блока чтения — это снижает нагрузку на умирающий контроллер и позволяет вычитать больше данных до очередного отвала.
⚠️ Внимание: не запускайте
chkdsk /fи не соглашайтесь на предложение Windows отформатировать флешку — эти операции пишут на накопитель и могут необратимо повредить структуру данных, которые вы пытаетесь восстановить.
Когда проблема аппаратная
Признаки аппаратной неисправности: ошибка 21 возникает на любом компьютере и любом порту, флешка периодически пропадает из системы прямо во время сканирования, корпус заметно нагревается, а в DMDE карта секторов показывает длинные непрерывные участки сбойных блоков. Всё это указывает на износ NAND или неисправность контроллера.
Для домашнего пользователя доступный вариант — «перепрошивка» контроллера утилитами производителя, которые подбираются по идентификаторам VID/PID устройства. Однако такая процедура полностью уничтожает данные на флешке, поэтому она применима только когда восстановление информации не требуется, а цель — вернуть накопитель к жизни.
Если же данные критичны, а флешка нестабильна, разумнее остановиться и обратиться в лабораторию восстановления данных: там чип памяти выпаивают и считывают напрямую на программаторе. Самостоятельные попытки многократного пересканирования в этой ситуации только деградируют оставшиеся ячейки.
⚠️ Внимание: утилиты низкоуровневого форматирования и «восстановления» флешек (по VID/PID) стирают всё содержимое без возможности отката. Запускайте их только после того, как данные либо спасены, либо признаны ненужными.
Сравнение сценариев: что означает поведение флешки
| Симптом | Вероятная причина | Рекомендуемое действие |
|---|---|---|
| Ошибка на одном и том же секторе | Сбойные ячейки NAND | Копирование в образ с пропуском ошибок |
| Ошибка в случайных местах | Питание порта, кабель, хаб | Подключение напрямую к заднему порту |
| Флешка пропадает из системы | Зависание контроллера, перегрев | Охлаждение, короткие сессии чтения |
| «Нет носителя», ёмкость 0 байт | Отказ контроллера или прошивки | Лаборатория восстановления данных |
| Ошибка только на одном ПК | Драйверы, USB-контроллер ПК | Обновление драйверов чипсета |
Эта таблица помогает быстро сузить круг поиска, но помните: симптомы могут комбинироваться, и точный диагноз ставится только по совокупности проверок на разных портах и машинах.
Почему DMDE показывает ошибку, а Проводник — нет
Проводник читает только таблицу разделов и каталоги — небольшой объём данных. DMDE при сканировании обращается ко всем секторам подряд, включая повреждённые области, поэтому сбойные участки проявляются именно при посекторном чтении.
Как минимизировать риски при восстановлении данных
Главный принцип при работе с нестабильной флешкой — минимум обращений к носителю. Каждое чтение сбойного блока заставляет контроллер выполнять десятки внутренних повторов, что греет чип и ускоряет деградацию. Поэтому оптимальная стратегия — один проход копирования в файл-образ с пропуском ошибок, а весь анализ файловой системы уже внутри образа.
В DMDE для этого используется функция клонирования: Сервис → Копировать секторы, где источником указывается физический диск флешки, а приёмником — файл на здоровом диске. При ошибках чтения выбирайте пропуск с заполнением нулями — позже можно повторить попытку вычитать конкретные пропущенные области отдельно.
- 🧊 Делайте перерывы между сессиями, давая флешке остыть.
- 📁 Сохраняйте образ на диск с гарантированно достаточным объёмом свободного места.
- 🔍 После создания образа открывайте его в DMDE как диск и сканируйте уже без риска.
- 🚫 Не записывайте ничего на исходную флешку до завершения восстановления.
Частые вопросы
Поможет ли переустановка DMDE или другая версия программы?
Нет. WinError 21 возвращает операционная система, а не сама программа. Любая утилита прямого доступа к диску получит тот же ответ. Менять нужно условия подключения или подход к чтению, а не софт.
Флешка определяется, но DMDE сразу выдаёт ошибку 21 — данные потеряны?
Не обязательно. Попробуйте другой порт и другой ПК, дайте устройству остыть, выполните полное обесточивание. Если ошибка сохраняется везде — вероятен отказ контроллера, и тогда данные извлекаются только считыванием чипа памяти в лаборатории.
Можно ли исправить ошибку командой chkdsk?
Нет, chkdsk работает с файловой системой, а ошибка 21 возникает на уровне доступа к устройству — до файловой системы дело даже не доходит. Более того, запуск chkdsk на проблемном накопителе может навредить данным.
Почему ошибка появляется только в середине сканирования?
Так обычно проявляются сбойные области NAND: начало диска читается нормально, а на повреждённых секторах контроллер зависает на повторных попытках чтения и Windows фиксирует таймаут. Используйте копирование в образ с пропуском ошибок.
Поможет ли другой кардридер или OTG-переходник?
Для флешки с интерфейсом USB-A переходники не нужны — подключайте напрямую. А вот если речь о microSD через кардридер, то замена кардридера — один из первых шагов диагностики: недорогие устройства чтения карт сами по себе частая причина ошибок ввода-вывода.