Когда компьютер вместо привычной загрузки Windows выводит чёрный экран с приглашением Shell>, система не нашла загрузочное устройство и открыла встроенную оболочку UEFI Shell. Это не ошибка оборудования, а командная строка прошивки материнской платы, через которую можно вручную указать загрузчик, проверить диски или обновить BIOS. Понимание базовых команд позволяет выйти из этой ситуации без визита в сервис.
Оболочка работает по принципам, похожим на классический DOS или командную строку Windows: есть диски, каталоги, файлы и команды для навигации. Однако синтаксис и логика именования устройств отличаются, поэтому привычные команды вроде C: здесь не сработают. Ниже разберём основные команды, их назначение и типовые сценарии применения.
Что такое UEFI Shell и когда он появляется
UEFI Shell — это минимальная командная среда, встроенная в прошивку UEFI или запускаемая с внешнего носителя. Она предназначена для диагностики, настройки загрузки, запуска EFI-приложений и обслуживания системы до старта операционной системы. Оболочка существует в двух версиях: Shell 1.x (старый вариант) и Shell 2.x (современный, с расширенным набором команд и поддержкой скриптов).
Чаще всего пользователь сталкивается с оболочкой в таких ситуациях:
- 🔧 BIOS не находит загрузочную запись и автоматически открывает Shell как запасной вариант;
- 💾 загрузочная флешка записана без корректного EFI-загрузчика;
- ⚙️ оболочка запущена намеренно — для прошивки материнской платы или контроллера;
- 🧩 повреждена структура раздела EFI System Partition (ESP), и запись загрузки потеряна.
Если Shell появился сам по себе, первым делом стоит проверить порядок загрузки в настройках UEFI и убедиться, что диск с системой определяется. Сама оболочка при этом — полезный инструмент диагностики: через неё видно, какие устройства прошивка вообще распознаёт.
Навигация по устройствам: fs0, map и bcfg
Главное отличие UEFI Shell от привычных командных строк — способ обозначения дисков. Вместо букв C: или D: используются идентификаторы вида fs0, fs1 и так далее. Это файловые системы, которые прошивка смогла смонтировать: обычно это разделы FAT32 на дисках и флешках.
Чтобы увидеть список доступных устройств, выполните:
map
Команда выведет таблицу соответствий: какие fsX привязаны к каким физическим устройствам (обозначения вида BLK, HD, CDROM). Если нужной флешки в списке нет, помогает переподключение накопителя и команда map -r, которая обновляет перечень устройств.
Для просмотра и управления записями загрузки служит команда bcfg. Например, bcfg boot dump покажет текущий список загрузочных записей — то же самое, что раздел Boot в настройках BIOS, только в текстовом виде.
Базовые команды для работы с файлами
Набор файловых команд в UEFI Shell во многом повторяет DOS, поэтому освоить его несложно. Переход на нужный диск выполняется простым вводом его имени, а дальше работают знакомые команды навигации и просмотра.
fs0:
ls
cd EFI
dir
Основные команды, которые понадобятся чаще всего:
- 📂
lsилиdir— показать содержимое текущего каталога; - 📁
cd— перейти в каталог,cd ..— вернуться на уровень выше; - 📄
type файл— вывести содержимое текстового файла; - 📋
cpиmv— копировать и перемещать файлы; - 🗑
rm— удалить файл или каталог; - 📝
edit файл— открыть встроенный текстовый редактор (в Shell 2.x).
Обратите внимание: оболочка работает только с разделами, файловую систему которых понимает прошивка. Стандартно это FAT32; поддержка NTFS зависит от наличия соответствующего драйвера UEFI, который на многих платах отсутствует. Если диск с NTFS не отображается в выводе map, это ожидаемое поведение, а не неисправность.
Запуск загрузчиков и EFI-приложений
Одна из главных практических задач в UEFI Shell — ручной запуск загрузчика, когда автоматическая загрузка не срабатывает. Исполняемые файлы в среде UEFI имеют расширение .efi и запускаются простым вводом пути к файлу.
Типовая последовательность для ручной загрузки Windows выглядит так:
fs0:
cd EFI\Microsoft\Boot
bootmgfw.efi
Для загрузочной флешки путь обычно иной — чаще всего загрузчик лежит по адресу \EFI\BOOT\BOOTX64.EFI. Если система запустилась после ручного указания загрузчика, значит, сама прошивка и файлы в порядке, а проблема — в записи загрузки. В таком случае её можно добавить командой bcfg boot add или восстановить штатными средствами уже из запущенной ОС.
⚠️ Внимание: командаbcfgизменяет NVRAM-память прошивки. Перед добавлением или удалением записей загрузки зафиксируйте текущее состояние командойbcfg boot dump, чтобы иметь возможность вернуть исходную конфигурацию.
Обновление прошивки через UEFI Shell
Некоторые производители материнских плат и серверного оборудования предусматривают обновление BIOS именно через UEFI Shell: на флешку кладут файл прошивки и специальную утилиту .efi, после чего её запускают из оболочки. Конкретное имя утилиты и порядок действий зависят от производителя, поэтому перед прошивкой обязательно сверьтесь с инструкцией для вашей модели платы на официальном сайте.
Общий принцип выглядит так:
fs0:
ls
flash.efi firmware.bin
⚠️ Внимание: прерывание процесса прошивки (отключение питания, извлечение флешки) способно сделать плату незагружаемой. Запускайте обновление только при стабильном питании и строго по инструкции производителя вашей конкретной модели.
☑️ Подготовка к работе в UEFI Shell
Справочная таблица основных команд
Ниже собраны команды, которые закрывают большинство повседневных задач в оболочке. Полный список команд вашей версии Shell можно получить вводом help, а справку по конкретной команде — help имя_команды.
| Команда | Назначение | Пример |
|---|---|---|
map | Список смонтированных устройств | map -r |
ls / dir | Содержимое каталога | ls -b |
cd | Смена каталога | cd EFI\BOOT |
bcfg | Управление записями загрузки | bcfg boot dump |
exit | Выход из оболочки в меню BIOS | exit |
Команда exit завершает сеанс оболочки и возвращает в интерфейс настройки UEFI либо перезагружает систему — поведение зависит от прошивки. Если нужна перезагрузка напрямую, используйте reset.
Скрипты и автоматизация: startup.nsh
Оболочка поддерживает выполнение скриптов — текстовых файлов с расширением .nsh, содержащих последовательность команд. Особую роль играет файл startup.nsh: если он находится в корне загрузочного устройства, Shell выполняет его автоматически при старте. Именно этим механизмом пользуются загрузочные флешки для прошивки и диагностики.
Создать такой скрипт можно прямо в оболочке через встроенный редактор edit или заранее в любом текстовом редакторе на ПК. Кодировка файла должна быть ASCII/ANSI — скрипт в UTF-16 оболочка может не распознать. Это частая причина, почему вроде бы корректный startup.nsh не выполняется.
Почему startup.nsh не запускается
Наиболее частые причины: файл сохранён в кодировке UTF-8 с BOM или UTF-16 вместо ASCII; файл лежит не в корне устройства; флешка отформатирована не в FAT32 и не монтируется прошивкой; в настройках UEFI отключён запуск оболочки с внешних носителей. Проверьте эти пункты по очереди.
Частые вопросы
Что делать, если команда map не показывает мою флешку?
Проверьте, что накопитель отформатирован в FAT32 — другие файловые системы прошивка может не монтировать. Подключите флешку в другой USB-порт (лучше напрямую к плате, без хабов) и выполните map -r для обновления списка устройств. Если устройство не появляется и после этого, проверьте его на другом компьютере.
Как выйти из UEFI Shell обратно в BIOS?
Введите команду exit и нажмите Enter — оболочка закроется, и вы вернётесь в интерфейс настройки UEFI либо система перезагрузится, в зависимости от прошивки. Для прямой перезагрузки используйте команду reset.
Почему компьютер сам загружается в UEFI Shell?
Наиболее вероятная причина — прошивка не находит ни одной рабочей загрузочной записи и открывает оболочку как запасной вариант. Проверьте в настройках UEFI порядок загрузки, убедитесь, что диск с системой определяется, и попробуйте вручную запустить загрузчик с раздела ESP. Если ручной запуск работает, восстановите запись загрузки.
Можно ли через UEFI Shell повредить систему?
Сами по себе команды просмотра (map, ls, help) безопасны. Осторожность требуют команды удаления файлов (rm), изменения загрузочных записей (bcfg) и особенно утилиты прошивки — их действия необратимы. Перед любыми изменениями фиксируйте текущее состояние и следуйте документации производителя.
Чем UEFI Shell отличается от командной строки Windows?
Это принципиально разные среды: Shell работает до загрузки ОС, внутри прошивки, и оперирует устройствами fs0, fs1 вместо букв дисков. Многие команды похожи по синтаксису, но набор возможностей иной — оболочка предназначена для обслуживания загрузки и прошивки, а не для работы с установленной системой.