Сразу к делу: «No bootable device» (или «Reboot and Select proper Boot device») появляется, когда прошивка UEFI не нашла ни одной рабочей записи загрузки в NVRAM. Лечится это так: проверь порядок загрузки в BIOS, загрузись с live-USB, посмотри записи через efibootmgr и, если записи Arch нет, создай её заново одной командой. Ниже — пошаговый разбор с реальными командами.
При включении прошивка читает переменные NVRAM: список записей загрузки (Boot0000, Boot0001 и так далее) и порядок, в котором их пробовать (BootOrder). Если в BootOrder нет ни одной рабочей записи — на экране появляется «No bootable device». Запись может пропасть по разным причинам:
bcdedit или diskpart;Ключевой момент: сам GRUB при этом часто цел. Пропала только запись в NVRAM, которая указывает прошивке, где искать загрузчик. Поэтому ремонт обычно сводится к пересозданию записи через efibootmgr, а не к переустановке GRUB. Если же GRUB действительно сломан — тебе в статью «GRUB rescue: что делать».
Отдельно стоит случай, когда запись на месте, но загрузчик не может стартовать. Тогда ты увидишь grub rescue> или чёрный экран, а не «No bootable device». Разница важна: в первом случае чинится NVRAM, во втором — сам загрузчик.
Прежде чем лезть в NVRAM, исключи простые причины. Зайди в настройки прошивки — обычно F2 или Del при включении.
Проверь, что диск с Arch присутствует в списке загрузки и не отключён. После обновления прошивки порядок иногда сбрасывается, и первым оказывается пустой USB-порт или сетевая загрузка. Если диск виден — подними его наверх и перезагрузись.
Если Secure Boot включён, а загрузчик не подписан, прошивка молча пропустит запись. Для проверки временно отключи Secure Boot и попробуй загрузиться. Система стартовала — значит, дело в подписи, а не в NVRAM.
Проверь режим контроллера: AHCI или RAID. Если система ставилась в режиме AHCI, а в BIOS теперь стоит RAID (или наоборот), диск может не определяться. Также проверь кабель и порт: переставь диск в другой разъём SATA или M.2. Иногда «No bootable device» — это просто отвалившийся контакт.
Загрузись с флешки Arch Linux (ISO с archlinux.org). Важно: загружайся именно в режиме UEFI, а не Legacy — иначе efibootmgr не увидит переменные NVRAM.
Сначала посмотри раскладку дисков:
lsblk
Чтобы точнее понять, какой раздел ESP, добавь флаг -f — он покажет файловые системы:
lsblk -f
ESP — это раздел с файловой системой FAT32 (vfat), обычно размером 100–512 МБ. В системах с несколькими дисками ESP может лежать не на том диске, где корень. Имя диска (nvme0n1 или sda) бери из вывода lsblk, а не по памяти. Смонтируй ESP и посмотри содержимое:
mount /dev/nvme0n1p1 /mnt
ls /mnt/EFI
Внутри должен быть каталог EFI/GRUB (или EFI/arch, EFI/systemd — зависит от загрузчика) с файлом grubx64.efi. Если файлы на месте — загрузчик цел, проблема в записи NVRAM. Если каталог пуст или файлов нет — GRUB повреждён, и нужна переустановка: «Переустановка GRUB после поломки».
Теперь посмотри записи загрузки:
efibootmgr
Вывод выглядит примерно так:
BootCurrent: 0001
Timeout: 1 seconds
BootOrder: 0001,0000
Boot0000* Windows Boot Manager HD(1,GPT,...)
Boot0001* Arch Linux HD(1,GPT,...)
Звёздочка после имени означает, что запись активна. Если записи Arch в списке нет — вот и причина «No bootable device». Если efibootmgr ругается на переменные — смотри раздел про ошибки ниже.
Запись создаётся одной командой. Нужны три вещи: диск, номер ESP и путь к загрузчику.
efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader "\EFI\GRUB\grubx64.efi"
Что означают флаги:
--disk /dev/nvme0n1 — диск, на котором лежит ESP (без номера раздела);--part 1 — номер ESP на этом диске;--label "Arch Linux" — имя записи, как оно будет выглядеть в меню загрузки;--loader "\EFI\GRUB\grubx64.efi" — путь к загрузчику внутри ESP, с обратными слэшами.Для systemd-boot путь будет \EFI\systemd\systemd-bootx64.efi, для прямого запуска ядра — \vmlinuz-linux (но там нужны дополнительные параметры, это отдельная тема). Команда требует прав root: в live-окружении ты и так root, а в обычной системе добавь sudo. Если запись не создаётся, добавь флаг --verbose — он покажет причину. После создания записи проверь:
efibootmgr
Запись Arch должна появиться в списке. Она также появится в меню загрузки BIOS — там её можно выбрать вручную, не меняя порядок. Перезагружайся.
Запись создана, но прошивка может не пробовать её первой. Порядок задаётся через --bootorder:
efibootmgr --bootorder 0001,0000
Где 0001 — номер записи Arch, 0000 — Windows. Номера бери из вывода efibootmgr. После этого проверь, что BootOrder изменился:
efibootmgr
Тонкости порядка загрузки и работы с NVRAM разобраны в статье «Порядок загрузки: NVRAM и efibootmgr».
Мусорные записи — например, от давно удалённой системы или от флешки — лучше убрать, чтобы они не мешали. Сначала посмотри список с подробностями:
efibootmgr -v
Затем удали запись по номеру:
efibootmgr -b 0002 -B
-b 0002 — номер записи, -B — удаление. Будь аккуратен: не удали запись Windows или свежесозданную запись Arch. После чистки пересобери BootOrder заново.
Эта ошибка появляется, когда live-система загружена в режиме Legacy (BIOS), а не UEFI. Перезагрузись и выбери в меню загрузки флешки пункт с пометкой UEFI. Подробный разбор — в статье «EFI variables not supported: efibootmgr».
Если запись создаётся, но прошивка её не запоминает — проверь батарейку CMOS и попробуй сбросить настройки. Иногда NVRAM переполнен старыми записями: удали лишние через efibootmgr -b XXXX -B и создай запись заново.
Если записи создаются, но прошивка их игнорирует — попробуй сбросить CMOS. Способы: пункт «Load Optimized Defaults» в BIOS, перемычка на материнской плате или извлечение батарейки на несколько минут. После сброса заново включи нужные опции (XMP, режим SATA) и повтори создание записи.
Диск размечен в MBR и загружается в Legacy, а прошивка настроена только на UEFI — или наоборот. Прошивка просто не видит такой диск как загрузочный. Проверь, какой режим включён в BIOS, и сопоставь с разметкой диска. Разница между GPT и MBR — в статье «Разметка диска: GPT и MBR».
Обновление UEFI часто сбрасывает переменные NVRAM. Загрузись с live-USB и пересоздай запись Arch через efibootmgr --create. Если запись Windows тоже пропала — восстанови её, как описано в статье «Восстановление UEFI-записи Windows после Arch».
Проверь путь к загрузчику: efibootmgr -v покажет, на что ссылается запись. Сверь его с реальными файлами в ESP (ls /mnt/EFI). Частая ошибка — путь с прямыми слэшами или неверный номер раздела. Если файлов нет — переустанови GRUB.
Отключи Secure Boot в BIOS или подпиши загрузчик через sbctl. Без подписи прошивка будет пропускать запись, и ты снова увидишь «No bootable device».
Можно: некоторые прошивки позволяют добавить запись вручную из меню BIOS (пункт «Add Boot Option»). Но efibootmgr быстрее и работает одинаково на всех UEFI-системах.
Плавающая проблема почти всегда железная: кабель, порт SATA или питание диска. Проверь контакты, замени кабель, переставь диск в другой порт. Для NVMe попробуй другой слот M.2. Если после этого ошибка исчезла — дело было не в NVRAM.
«No bootable device» — это не поломка диска, а пропавшая запись в NVRAM. Порядок действий простой: проверь BIOS (порядок загрузки, Secure Boot, режим SATA), загрузись с live-USB, посмотри efibootmgr, создай запись заново и поправь BootOrder. В большинстве случаев хватает одной команды efibootmgr --create. Если записи создаются, но не работают — ищи причину в режиме загрузки (UEFI/Legacy) или сбрасывай CMOS.
Задай вопрос в чате — отвечаем быстро, по делу и без воды.
Комментарии