uefi boot not present что делать
UEFI — что это такое и чем он отличается от BIOS?
Чтобы сделать работу на компьютере или ноутбуке ещё более эффективной, пользователь должен иметь представление о множестве на первый взгляд маловажных деталей: не только то, как узнать модель материнской платы или видеокарты, но и как настроить очерёдность обращения к дискам при загрузке ОС. Привычнее всего делать это в BIOS; есть и более современное решение — UEFI. Что это такое и как работает — попробуем разобраться.
Что такое UEFI?
UEFI (Unified Extensible Firmware Interface, унифицированный интерфейс поддерживающий расширения прошивки) — это программно-аппаратное решение, пришедшее на смену привычной БИОС (базовой системе ввода-вывода).
Посредством интерфейса, распространяемого в виде одного или нескольких файлов, пользователь может:
Таким образом, UEFI, как и БИОС, которой он пришёл на смену, служит «посредником» между низкоуровневой прошивкой аппаратуры и операционной системой; не задействовав один из этих интерфейсов, пользователь или вовсе не сможет запустить ОС, или получит ненастраиваемую, работающую с гораздо меньшей эффективностью машину.
Первые модификации UEFI, тогда ещё просто EFI, появились в начале 1990-х годов. По-настоящему «унифицированный» вариант был выпущен Intel в конце 2000 года под номером версии 1.02. Актуальная на сегодня версия 2.6 увидела свет через шестнадцать лет; несмотря на активное развитие интерфейса, включить UEFI можно пока не на всех компьютерах — перед разработчиками стоит множество нерешённых задач, связанных в первую очередь с проблемами совместимости.
Важно: несмотря на то что каждый производитель компьютеров и ноутбуков разрабатывает и внедряет свой вариант UEFI, принципы работы программно-аппаратной связки едины — не только для разного оборудования, но и для разных операционных систем, включая Windows, Linux и MacOS.
Разница между UEFI и BIOS
Хотя оба интерфейса выполняют одну задачу, разница между UEFI и BIOS есть — найти отличия не сложнее, чем узнать, как выбрать самый лучший винчестер для своего ПК. Первое и главное отличие, которое стоит вынести отдельно, — это обилие функций UEFI, приближающее эту связку к полноценной операционной системе со своими опциями, дополнениями и расширениями.
Кроме того, UEFI отличается от BIOS:
Среди не слишком приятных моментов, отличающих UEFI от BIOS, можно отметить:
Важно: в третьем случае, а также для запуска на компьютере или ноутбуке с UEFI 32-битных ОС пользователю придётся переключаться обратно на БИОС — если требуется часто запускать разные операционки на одной машине, это крайне неудобно, однако всё же лучше полного отсутствия возможности доступа к старым системам.
Как включить UEFI?
Включить режим UEFI на компьютере или ноутбуке можно двумя способами: из BIOS или непосредственно из операционной системы, о чём было упомянуто выше. В первом случае пользователю нужно:
Чтобы вызвать UEFI непосредственно из-под работающей операционной системы Windows 8/8.1/10, понадобится:
Вот и всё — пользователю удалось включить UEFI; теперь никаких сложностей с использованием этого простого и удобного интерфейса не возникнет.
Как отключить UEFI?
Отключается UEFI в порядке, обратном включению:
Важно: в таком режиме параметр расширенной совместимости CSM Support будет недоступен для изменений — чтобы включить или отключить его, потребуется вновь активировать UEFI.
Подводим итоги
UEFI — это расширенная программно-аппаратная связка, пришедшая на смену стандартной БИОС. Основные её плюсы — простота, наличие русского языка и возможность работать с жёсткими дисками с разметкой GPT; минусы — несовместимость со старыми операционными системами и архитектурой х86. Включить и отключить UEFI можно, зайдя в BIOS, а настроить — непосредственно из Windows 8/8.1/10 без необходимости перезагрузки.
Настройка UEFI-загрузчика. Самое краткое руководство в мире
Как устроена загрузка современных ОС? Как при установке системы настроить загрузку посредством UEFI, не утонув в руководствах и ничего не сломав?
Я обещал «самое краткое руководство». Вот оно:
TL;DR не надо прописывать путь к загрузчику в новых загрузочных записях UEFI — надо файл загрузчика расположить по стандартному «пути по-умолчанию», где UEFI его найдет, и вместо загрузочного меню UEFI пользоваться меню загрузчика, которое гораздо проще и безопаснее настраивается
Как делать не надо
Есть, на самом-то деле, несколько способов настроить UEFI-загрузку. Я начну с описания других вариантов — чтобы было понятно, как (и почему) делать не надо. Если вы пришли за руководством — мотайте в самый низ.
Не надо лезть в NVRAM и трогать efivars
Наиболее «популярная» процедура установки загрузчика в систему такова: установщик ОС создаёт специальный раздел, на нём — структуру каталогов и размещает файлы загрузчика. После этого он с помощью особой утилиты (efibootmgr в linux, bcdedit в windows) взаимодействует с прошивкой UEFI-чипа, добавляя в неё загрузочную запись. В этой записи указывается путь к файлу загрузчика (начиная от корня файловой системы) и при необходимости — параметры. После этого в загрузочном меню компьютера появляется опция загрузки ОС. Для linux существует возможность вообще обойтись без загрузчика. В загрузочной записи указывается путь сразу к ядру вместе со всеми параметрами. Ядро должно быть скомпилировано с опцией EFISTUB (что давно является стандартом для большинства дистрибутивов), в этом случае оно содержит в себе заголовок «исполняемого файла EFI», позволяющий прошивке его запускать без внешнего загрузчика.
При старте системы, когда пользователь выбирает нужную ему загрузочную запись, прошивка UEFI сперва ищет на прописанном в этой записи диске особый EFI-раздел, обращается к файловой системе на этом разделе (обязательно FAT или FAT32), и запускает загрузчик. Загрузчик считывает из файла настроек свой конфиг, и либо грузит ОС, либо предоставляет загрузочное меню. Ничего не замечаете? Да, у нас два загрузочных меню — одно на уровне прошивки чипа UEFI, другое — на уровне загрузчика. В реальности о существовании второго пользователи могут даже не догадываться — если в меню всего один пункт, загрузчик Windows начинает его грузить без лишних вопросов. Увидеть экран с этим меню можно, если поставить вторую копию Windows или просто криво её переустановить.
Обычно для управления загрузочными записями руководства в интернете предлагают взаимодействовать с прошивкой UEFI. Есть аж пять основных вариантов, как это можно сделать: efibootmgr под linux, bcdedit в windows, какая-то софтина на «Маках», команда bcfg утилиты uefi shell (запускается из-под UEFI, «на голом железе» и без ОС, поскольку скомпилирована в том самом особом формате) и для особо качественных прошивок — графическими средствами UEFI (говоря популярным языком, «в настройках BIOS»).
За всеми вышенаписанными «многобуков» вы могли легко упустить такую мысль: пользователь, чтобы изменить настройки программной части (например, добавить параметр запуска ОС), вынужден перезаписывать flash-память микросхемы на плате. Есть ли тут подводные камни? О да! Windows иногда способна сделать из ноутбука кирпич, linux тоже, причём разными способами. Качество прошивок часто оставляет желать лучшего — стандарты UEFI либо реализованы криво, либо не реализованы вообще. По логике, прошивка обязана переживать полное удаление всех переменных efivars без последствий, не хранить в них критичных для себя данных и самостоятельно восстанавливать значения по-умолчанию — просто потому что пользователь имеет к ним доступ, и вероятность их полного удаления далека от нуля. Я лично в процессе экспериментов неоднократно (к счастью, обратимо) «кирпичил» свой Lenovo — из загрузочного меню исчезали все пункты, включая опцию «зайти в настройки».
Работа с загрузочными записями UEFI — тоже не сахар. К примеру, утилита efibootmgr не имеет опции «редактировать существующую запись». Если ты хочешь немного изменить параметр ядра — ты удаляешь запись целиком и добавляешь её снова, уже измененную. При этом строка содержит в себе двойные и одинарные кавычки, а также прямые и обратные слеши в не особо очевидном порядке. Когда я наконец заставил эту магию работать — я сохранил её в виде bash-скриптов, которые до сих пор валяются у меня в корневой ФС:
Не надо использовать GRUB
Это чёртов мастодонт, 90% функциональности которого предназначено для дисков с MBR. Для настройки необходимо отредактировать ряд файлов, после чего выполнить команду генерации конфига. На выходе получается огромная малопонятная нормальному человеку простыня. В составе — гора исполняемых файлов. Ставится командой, которую просто так из головы не возьмешь — надо обязательно лезть в документацию
Для сравнения — самый простенький UEFI-bootloader, который есть в составе пакета systemd, ставится командой
Эта команда делает ровно две вещи: копирует исполняемый файл загрузчика на EFI-раздел и добавляет свою загрузочную запись в прошивку. А конфиг для неё занимает ровно СЕМЬ строчек.
«Самое краткое руководство» — чуть более подробно
Загрузочное меню надо реализовывать на уровне загрузчика — править текстовые конфиги гораздо проще и безопасней.
Загрузочная запись нам не нужна — дело в том, что при выставлении в настройках BIOS загрузки с диска прошивка UEFI сначала ищет на нём EFI-раздел, а затем пытается исполнить файл по строго фиксированному адресу на этом разделе: /EFI/Boot/BOOTX64.EFI
Что такое «EFI-раздел»? В теории, он должен иметь особый тип «EFI System» (ef00). На практике, годится первый раздел на GPT-диске, отформатированный в FAT32 и имеющий достаточно места, чтобы разместить загрузчик и вспомогательные файлы (если есть).
Пункт 3: «Скачиваем из интернета любой UEFI-загрузчик». Что это значит? Загрузчик — это просто исполняемый файл определенного формата, к которому в комплекте идет конфиг. К примеру, если у вас есть под рукой установленный пакет с systemd — файл загрузчика можно найти по адресу /usr/lib/systemd/boot/efi/systemd-bootx64.efi, переименовать его в bootx64.efi и скопировать в /EFI/Boot/ на EFI-разделе. Нет под рукой systemd? Скачайте архив с сайта Archlinux. Или с репозитария Ubuntu. Или Debian. Есть под рукой система с Windows? Возьмите виндовый загрузчик оттуда, тоже сгодится )) Если сумеете настроить, я честно говоря не пробовал.
Пункт 4: «Настроить конфиг». Как и обычная программа, когда загрузчик запускается — он ожидает найти по определенным путям файлы конфигурации. Обычно эту информацию легко найти в интернете. Для загрузчика systemd-boot нам необходимо в корне EFI-раздела создать каталог «loader», а в нём файл «loader.conf» с тремя строчками (привожу свои):
Параметр editor отвечает за возможность отредактировать пункт загрузочного меню перед запуском.
Рядом с loader.conf необходимо создать каталог entries — один файл в нём будет отвечать за одну загрузочную запись в boot-меню. У меня там один файл arch.conf с таким содержанием:
Я не упомянул, но довольно очевидно — ядро и initramfs должны лежать в одной файловой системе с загрузчиком, то есть на EFI-разделе. Пути к ним в конфигах отсчитываются от корня этой ФС.
Другие загрузчики
systemd-boot очень простой и предоставляет спартанского вида чёрно-белое меню. Есть варианты красивей, если душа просит красоты.
rEFind — очень красивый загрузчик. Скачать можно тут в виде deb-пакета. Использую на своём ноуте. Умеет создавать загрузочное меню автоматически, без конфига — просто сканируя файлы.
Clover. Позволяет выставлять нативное разрешение экрана, имеет поддержку мыши на экране загрузки, разные темы оформления. Дефолтная тема ужасна, конфиг в виде xml нечитаем, настроить не смог.
Различные неочевидные последствия
Вы можете легко попробовать эту схему в работе. Берёте USB-флешку, форматируете в таблицу разделов GPT, создаете FAT-раздел и копируете туда загрузчик. Комп сможет с неё стартовать.
Если просто скопировать на такую флешку boot-раздел установленного linux — система будет спокойно загружаться с флешки, не видя разницы.
UEFI boot – что это такое?
UEFI boot – это программа нового поколения, которая ускорит загрузку компьютера и она по структуре напоминает BIOS.
BIOS – это предпрограмма (код, вшитый в материнскую плату компьютера). Он запускается до загрузки операционной системы, проверяя работоспособность компьютера и отладку оборудования (драйверов). UEFI, в отличие от привычного BIOS-a, представляет собой графический интерфейс, гибко запрограммированный и действительно позволяющий быстрее запустить ОС.
Преимущества UEFI
Что касается UEFI Secure Boot, то это заранее предусмотренный разработчиками способ защиты от запуска нелицензионного кода. Он не позволяет вирусным программам заменить загрузчик, а при использовании Microsoft – спасает от пиратской версии ОС. Однако чаще всего данный режим отключен по умолчанию, или же по некоторым причинам пользователям приходится самостоятельно его отключать.
В настоящее время UEFI представляется как отдельная часть стандартного BIOS-а, но уже выпускаются компьютеры с материнскими платами, где все наоборот – BIOS считается дополнительным модулем к UEFI.
Разница между UEFI и БИОС
Возможность поддерживать разметку GPT;
Модульная архитектура;
Встроенный загрузочный менеджер;
Использование UEFI для загрузки операционной системы с USB-носителя
Порядок выполнения:
Установка Windows UEFI
Запускаем утилиту и указываем название флешки, предназначенной для установки(предварительно нужно удалить важные файлы, очистив память). В пункте «File system» (файловая система) выбираем FAT 32, далее в качестве схемы раздела – GPT (GUID Partition Table), системный интерфейс – UEFI. Поставьте галочку у пункта «Create a bootable disk using:» (создать загрузочное устройство с использованием…), выберите рядом ISO Image и укажите полный путь к ISO-образу операционной системы Windows.
После введения всех описанных параметров можно нажимать на « Start » и программа самостоятельно подготовит флеш-накопитель к загрузке ОС. Время, затраченное на этот процесс, зависит от быстродействия вашего компьютера и от поколения USB.
Если работа утилиты Rufus вас не устраивает или появляются проблемы с загрузкой UEFI, можно использовать абсолютно аналогичную программу, которая называется WinSetupFromUSB.
Скачивание также доступно на сайте производителя, а ее название (в переводе «Загрузка Windows с USB») говорит само за себя. Загрузочная флешка создается полностью аналогично, так как программы имеют практически одинаковый интерфейс.
Загрузка UEFI и подготовка к установке
Нажмите кнопку F7 и выберите подраздел «Дополнительно». Во вкладке «boot» или «startup» (загрузка) нужно выбрать функцию «поддержка USB» и установить там пункт « Full initialization» ( полная инициализация).
Во вкладке «безопасная загрузка» (Secure Boot) следует отметить пункт «Windows uefi mode» (Режим Виндовс UEFI).
Во вкладке «Загрузка» выбирается «Compatibility Support Module» (модуль поддержки совместимости) и отмечается как «enabled» (доступный). Не будет лишним кликнуть на добавочные ссылки и найти строчку «настройки загрузочных устройств», где выбрать « only uefi» ( только uefi).
Теперь вернитесь назад в основное меню и проверьте приоритет загрузочных устройств. Сначала выбирается флеш-накопитель, затем жесткий диск. Сохраните указанные параметры нажатием кнопки F10, потом – Enter и подождите, пока компьютер загрузится.
После выполнения всего вышеперечисленного можно установить операционную систему привычным для вас способом.
Устранение ошибки, возникающей в Windows 8.1
Если после установки windows или после обновления версии до 8.1 в правом углу монитора появляется уведомление о неправильной регулировке secure boot (защищенной загрузки).
На большинстве компьютеров неполадка решается заходом в меню uefi и включением режима «Secure boot» в БИОСе.
После загрузки и установки обновления компьютер перезагрузится и уведомления об ошибке больше не будут появляться.
Как отключить UEFI
Если у вас не Windows 7-8-10, а XP или Ubuntu, режим UEFI может вызвать проблемы при запуске ОС с диска или флеш-карты. Лучшим решением будет отключить данный режим.
Алгоритм отключения UEFI:
Описанная инструкция предназначена для ноутбуков марки ASUS, но для остальных марок алгоритм одинаков, разница в том, какую клавишу нужно нажимать во время старта компьютера.
Как узнать, включен ли режим безопасного запуска
Этот вариант подходит для восьмой и десятой версий Windows. Нажмите кнопки Windows+R и в полученном окне введите команду «msinfo32» ( без кавычек). Нажмите кнопку Enter.
Восстановление UEFI запуска Windows 8/8.1/10.
Автор: STRIDER · Опубликовано 05.01.2018 · Обновлено 17.03.2018
Добрый день! В этой статье я расскажу о восстановлении UEFI запуска Windows 8/8.1/10, а так же о том что же такое UEFI. Поехали!
Вспомните те времена, когда BIOS был 16-битным с адресным пространством в 1 Мб, а вся информация о загрузчиках писалась в MBR? Это были насколько помню 1990 годы. И все было неизменным, менялись только характеристики оборудования. Но развитие серверов и технологий толкнули Intel к разработке EFI.
Изначально EFI создавалась для первых систем Intel-HP Itanium в середине 1990-х годов. Ограничения PC-BIOS были, очевидно, недопустимы в больших серверных платформах, для использования в которых планировался Itanium. После того как Intel передала разработку UEFI Forum (альянс AMD, American Megatrends, ARM, Apple, Dell, Hewlett Packard Enterprise, HP Inc., IBM, Insyde Software, Intel, Lenovo, Microsoft, Phoenix Technologies). 7 января 2007 года была выпущена первая версия универсальной платформы UEFI 2.1. И впервые на смену пришли более гибкие технологии: UEFI (замена BIOS), и GPT (замена MBR).
Терминология
UEFI (Unified Extensible Firmware Interface, Единый расширяемый интерфейс прошивки). В отличие от 16-битного BIOS’а UEFI работает в 32- или 64-битном режиме, что позволяет использовать намного больше памяти для сложных процессов.
MBR («Master Boot Record» — основная загрузочная запись) использует 32-битные идентификаторы для разделов, которые размещаются в очень маленьком кусочке пространства (64 байта) в самом начале диска (в конце первого сектора диска). Из-за такого маленького объёма поддерживаются только четыре первичных раздела. Поскольку используется 32-битная адресация, то каждый раздел может быть не более 2,2 ТБ. Кроме того, загрузочная запись не имеет никакой запасной MBR, так что если приложение перезапишет основную загрузочную запись, то вся информация о разделах будет потеряна.
GPT («GUID Partition table» — таблица разделов GUID) использует уже 64-битные идентификаторы для разделов, поэтому кусочек пространства, в котором сохраняется информация о разделах, уже больше чем 512 байт, кроме того, не существует ограничения на количество разделов. Заметьте, ограничение на размер раздела в этом случае почти 9,4 ЗБ (да-да, вы всё прочитали правильно — зеттабайт, единичка с двадцатью одним нулём!). А в конце диска имеется копия GPT, которая может использоваться для восстановления повреждённой основной таблицы разделов в начале диска.
Как происходит загрузка в UEFI?
С GPT-раздела с идентификатором EF00 и файловой системой FAT32, по умолчанию загружается и запускается файл \efi\boot\boot[название архитектуры].efi, например: \efi\boot\bootx64.efi.
То есть чтобы, например, создать загрузочную флешку с Windows, достаточно просто разметить флешку в GPT, создать на ней активный FAT32-раздел и скопировать все файлы с компакт-диска с дистрибутивом операционной системы
Пример создания GPT диска в Linux:
Также в большинстве реализаций UEFI возможна загрузка в режиме совместимости с диска с разметкой MBR.
Менеджер загрузки
Восстанавливаем запуск
В открывшейся командной строке вводим последовательно:
diskpart
list volume
Выберите загрузочный раздел (100mb, и файловая система у него FAT32)
select volume 3
format fs=fat32 (форматируем загрузочный раздел, перед копированием новых загрузочных файлов).
assign letter=Z (присваиваем букву Z этому разделу).
exit (выходим из Diskpart)
bcdboot C:\Windows /s Z: /f ALL (где С: — диск с файлами Windows, Z: — буква, которую мы присвоили скрытому разделу).
diskpart
list volume
select volume N (номер скрытого раздела, которому мы присваивали букву)
remove letter=Z (удаляем букву, чтобы том не отображался в системе, когда мы перезагрузимся).
exit (выходим из diskpart).
Перезагружаемся, извлекаем все носители. И грузимся в обычном режиме. Если все сделано правильно, система начнет загрузку.