Чёрный экран с приглашением Shell> вместо загрузки Windows означает, что прошивка UEFI не нашла загрузочное устройство и открыла встроенную оболочку EFI Shell — в такой ситуации команды map, fs0: и bcfg позволяют найти диск с системой и восстановить загрузку вручную. EFI Shell — это командная строка, встроенная в прошивку UEFI или запускаемая с внешнего носителя, которая работает до старта операционной системы.
Оболочка используется для диагностики загрузки, прошивки BIOS/UEFI, запуска сервисных утилит и восстановления загрузчика, когда стандартные средства Windows недоступны. Синтаксис команд напоминает смесь DOS и Unix: есть навигация по дискам, просмотр файлов, запуск программ формата .efi и управление переменными NVRAM. Ниже разберём основные команды, практические сценарии и типичные ошибки.
Что такое EFI Shell и когда он появляется
EFI Shell — это интерпретатор команд, работающий в среде UEFI. На части материнских плат (особенно у ASUS, MSI, Gigabyte) он встроен в прошивку и доступен через меню загрузки, на других его нужно запускать с флешки, поместив файл оболочки (обычно Shellx64.efi или bootx64.efi) в корень FAT32-накопителя.
Автоматический вход в Shell при включении ПК — почти всегда симптом проблемы. Прошивка не нашла ни одной загрузочной записи и открыла последнее доступное средство управления. Типичные причины:
- 🔌 отключён или не определяется диск с операционной системой;
- 🧹 сброшены настройки BIOS/UEFI (после обновления прошивки или севшей батарейки CMOS);
- 🗂️ повреждена загрузочная запись или папка
EFIна системном разделе; - 💾 подключена флешка со Shell, и она стоит первой в приоритете загрузки.
Короткая проверка: введите map и посмотрите, видны ли диски. Если список пуст или в нём нет вашего SSD/HDD — проблема на уровне оборудования или настроек контроллера, а не загрузчика.
Базовые команды навигации и работы с файлами
Работа в EFI Shell строится вокруг mapping-устройств — логических имён дисков вида FS0:, FS1:, BLK0:. Префикс FS означает распознанную файловую систему (FAT32), BLK — блочное устройство без читаемой файловой системы.
Основные команды, которые понадобятся в первую очередь:
- 📁
map— вывести список всех обнаруженных устройств и их имён; - 📂
fs0:— переключиться на диск fs0 (аналогC:в DOS); - 📄
lsилиdir— показать содержимое текущего каталога; - 🧭
cd имя_папки— перейти в каталог,cd \— вернуться в корень; - 📋
cp,mv,rm,mkdir— копирование, перемещение, удаление и создание каталогов; - 📝
edit файл— встроенный текстовый редактор (не во всех версиях Shell).
Пример сеанса: находим диск и проверяем наличие загрузчика Windows:
Shell> map
Shell> fs0:
FS0:\> ls
FS0:\> cd EFI\Microsoft\Boot
FS0:\EFI\Microsoft\Boot> ls
Если в каталоге виден файл bootmgfw.efi — загрузчик на месте, и проблема, скорее всего, в записях NVRAM, а не в файлах.
Команды управления загрузкой: bcfg и загрузка вручную
Ключевая команда для восстановления загрузки — bcfg. Она управляет записями загрузки, хранящимися в энергонезависимой памяти (NVRAM) прошивки. Именно эти записи вы видите в меню «Boot» настроек UEFI.
Полезные варианты использования:
Shell> bcfg boot dump
Shell> bcfg boot add 0 fs0:\EFI\Microsoft\Boot\bootmgfw.efi "Windows Boot Manager"
Shell> bcfg boot rm 3
Первая строка показывает текущие записи загрузки, вторая добавляет новую запись с приоритетом 0, третья удаляет запись под номером 3. Будьте внимательны с удалением: ошибочно убранную запись придётся восстанавливать вручную, зная точный путь к загрузчику.
⚠️ Внимание: командыbcfgиdmpstoreизменяют переменные прошивки. Неверные действия могут оставить систему без рабочих вариантов загрузки. Перед изменениями выполнитеbcfg boot dumpи запишите текущий список записей.
Быстрая альтернатива без изменения NVRAM — запустить загрузчик напрямую. Для этого перейдите на нужный диск и введите полный путь к efi-файлу:
FS0:\> \EFI\Microsoft\Boot\bootmgfw.efi
Если Windows стартует при таком запуске — файлы в порядке, и достаточно добавить запись через bcfg либо пересоздать её штатными средствами Windows (bcdboot из среды восстановления).
Сводная таблица основных команд
Ниже — справочная таблица наиболее востребованных команд EFI Shell. Синтаксис приведён для стандартной оболочки UEFI Shell; в отдельных реализациях от производителей материнских плат набор команд может отличаться.
| Команда | Назначение | Пример |
|---|---|---|
map | Список устройств и дисков | map -r |
bcfg | Управление записями загрузки NVRAM | bcfg boot dump |
ls / dir | Просмотр содержимого каталога | ls EFI |
dmpstore | Просмотр/сохранение переменных UEFI | dmpstore -all |
reset | Перезагрузка системы | reset -s (выключение) |
Дополнительно полезны help (список всех команд вашей версии Shell), ver (версия оболочки), cls (очистка экрана) и exit (выход из Shell обратно в меню прошивки). Команда help имя_команды покажет подробный синтаксис конкретной команды — это самый надёжный способ уточнить параметры именно для вашей версии.
Практический сценарий: восстановление загрузки Windows
Разберём типовую ситуацию: ПК после сброса BIOS загружается только в EFI Shell. Порядок действий безопасный — сначала только чтение, изменения в конце.
☑️ Восстановление загрузки через EFI Shell
Начните с map и по очереди проверьте диски fs0:, fs1: и так далее командой ls. Искомый признак системного раздела — каталог EFI в корне. Внутри него ищите EFI\Microsoft\Boot\bootmgfw.efi. Если файл найден, загрузите его напрямую и убедитесь, что Windows стартует.
Затем добавьте постоянную запись. Команда выглядит так (путь и номер диска подставьте свои):
Shell> bcfg boot add 0 fs0:\EFI\Microsoft\Boot\bootmgfw.efi "Windows Boot Manager"
Если папки EFI\Microsoft на диске нет вообще — загрузчик повреждён или удалён, и одной оболочкой его не восстановить. В этом случае потребуется установочная флешка Windows и команда bcdboot из среды восстановления, которая пересоздаст файлы загрузки.
⚠️ Внимание: если команда map не показывает ни одного устройства FS, проверьте в настройках UEFI режим контроллера и подключение накопителя. Правка записей загрузки при невидимом диске бессмысленна — сначала нужно вернуть диск в систему.
Почему диск отображается как BLK, а не FS
Префикс BLK означает, что прошивка видит устройство, но не может прочитать его файловую систему. EFI Shell штатно работает с FAT12/16/32. Если системный EFI-раздел повреждён или отформатирован иначе, он появится как BLK. Проверить и исправить раздел можно из среды восстановления Windows или утилитами разметки.
Прошивка UEFI и запуск утилит через Shell
Второе массовое применение оболочки — обновление прошивки и запуск сервисных программ. Многие производители плат и ноутбуков распространяют обновления в виде efi-приложений, которые запускаются именно из EFI Shell. Общий принцип: файлы обновления копируются на флешку FAT32, затем из Shell запускается файл прошивальщика.
Общий порядок выглядит так: подготовьте флешку FAT32, скопируйте на неё файлы из официального пакета обновления вашей модели, загрузитесь в EFI Shell, перейдите на флешку (fs0: или другой номер из map) и запустите указанный в инструкции производителя .efi или .nsh файл. Точное имя файла и порядок действий всегда берите из документации конкретной модели — универсальной команды прошивки не существует.
⚠️ Внимание: прерывание процесса прошивки UEFI (отключение питания, извлечение флешки) может вывести материнскую плату из строя. Перед обновлением обеспечьте стабильное питание, а для ноутбука — подключённый адаптер и заряженный аккумулятор.
Через Shell также запускают диагностические утилиты, инструменты для работы с RAID-контроллерами и программы обновления прошивок SSD. Любую efi-программу стоит запускать только из доверенного источника: код в среде UEFI выполняется с максимальными правами, до загрузки какой-либо защиты операционной системы.
Частые ошибки и их решение
Разберём сообщения, с которыми чаще всего сталкиваются при работе в оболочке.
«fs0 is not recognized» или «not a valid mapping» — диска с таким именем нет. Выполните map и используйте реальные имена из списка. Нумерация устройств не фиксирована: после подключения флешки имена могут измениться.
«Command not found» — команда отсутствует в вашей версии Shell. Встроенные оболочки производителей часто урезаны. Решение — использовать полную версию UEFI Shell с флешки, где доступны bcfg, dmpstore и редактор.
Запись добавлена, но загрузки не происходит. Проверьте путь: он чувствителен к структуре каталогов, и лишний или пропущенный уровень вложенности делает запись нерабочей. Сверьте путь с реальным расположением файла через ls. Также убедитесь, что в настройках прошивки не включён режим, ограничивающий загрузку (например, Secure Boot может блокировать неподписанные загрузчики — поведение зависит от модели).
FAQ: частые вопросы об EFI Shell
Как выйти из EFI Shell?
Введите команду exit — оболочка закроется, и вы вернётесь в меню прошивки UEFI. Для перезагрузки используйте reset. Если компьютер каждый раз сам попадает в Shell, нужно устранить причину: проверить диск и записи загрузки.
Почему при включении ПК сразу открывается EFI Shell?
Прошивка не нашла ни одной рабочей загрузочной записи. Возможные причины: сброс настроек UEFI, отключённый или неисправный диск, повреждённый загрузчик, флешка с Shell первой в приоритете загрузки. Начните диагностику с команды map.
Чем EFI Shell отличается от командной строки Windows?
EFI Shell работает до загрузки операционной системы, внутри прошивки UEFI. Он оперирует дисками как устройствами прошивки (fs0, blk0) и умеет изменять переменные загрузки NVRAM. Командная строка Windows работает уже внутри запущенной ОС и имеет другой набор команд, хотя часть имён (cd, dir, copy) совпадает.
Как запустить EFI Shell, если он не встроен в прошивку?
Нужно поместить файл оболочки (например, Shellx64.efi, переименованный в bootx64.efi) на флешку FAT32 по пути EFI\Boot\ и загрузиться с этой флешки через меню загрузки. Готовые сборки оболочки распространяются в составе открытых проектов UEFI.
Можно ли через EFI Shell удалить или изменить файлы Windows?
Технически — да: Shell даёт доступ к разделам FAT32, включая системный EFI-раздел, с командами cp, rm, mv. Однако разделы NTFS (где находится сама Windows) стандартная оболочка не читает. Удаление файлов из папки EFI приведёт к потере загрузки, поэтому изменяйте там только то, что точно понимаете.