Удаление efi драйвера из автозагрузки
Как редактировать/удалить/добавить пункты загрузки в загрузочное меню UEFI?
Качаем UEFI Shell, копируем его в файл /EFI/boot/bootx64.efi на FAT32 флешку, и загружаемся с нее. После удачной загрузки шелла должно появиться приглашение командной строки
Shell>
Выше приглашения должен отобразиться список имеющихся подключенных дисков (fs0:, fs1:, BLK0, и тому подобное). Чтобы еще раз вызвать этот список в случае необходимости, воспользуйтесь командой
map fs*
Из полного имени диска можно почерпнуть некоторую информацию о диске. Например:
PciRoot(0x0)/Pci(0x1,0x1)/ Ata(0x0) / HD ( 1 , MBR ,0x27212721,0x3F,0x13FA6D9)
отсюда
Ata(0x0) -интерфейс подключения диска, а также порт контроллера
HD -это жесткий диск
1 -количество разделов на диске
MBR -схема разметки
Найдя таким образом необходимый диск, нужно перейти в него
fs0:
затем при помощи старых добрых досовских команд dir и cd нужно нащупать и перейти в каталог с загрузочными efi-файлами. Обычно это /EFI/boot/. Затем, находясь в этом каталоге, можно, введя имя файла загрузчика, сразу же загрузиться в него. Чтобы добавить нужный файл в список загрузочных записей, желательно сначала считать уже имеющиеся записи при помощи команды
bcfg boot dump
Затем, чтобы добавить загрузочный файл в этот список, нужно ввести
bcfg boot add N filename.efi " label "
Где N -порядковый номер записи (если на ее месте что-то было-этот пункт перезапишется)
filename.efi -имя файла с загрузчиком
label -имя, под которым эта запись будет отображаться в списке
Можно снова просмотреть список загрузочных записей через
bcfg boot dump
и убедиться, что все на месте. Можно перезагружаться и проверять.
Для удаления записи из списка используется команда
bcfg boot rm N
где N -номер записи
cls
echo -off
for %a in fs0 fs1 fs2 fs3 fs4 fs5 fs6 fs7 fs8 fs9 fs10 fs11 fs12 fs13 fs14 fs15 fs16 fs17 fs18 fs19 fs20 fs21 fs22 fs23 fs24 fs25 fs26 fs27 fs28 fs29 fs30
if exist %a:\efi_shell\drivers\ntfs.efi then
load %a:\efi_shell\drivers\ntfs.efi
map -r
cls
goto end_load
endif
endfor
:end_load
fs0:
for %b in fs0 fs1 fs2 fs3 fs4 fs5 fs6 fs7 fs8 fs9 fs10 fs11 fs12 fs13 fs14 fs15 fs16 fs17 fs18 fs19 fs20 fs21 fs22 fs23 fs24 fs25 fs26 fs27 fs28 fs29 fs30
if exist %b:\EFI\Boot\bootx64.efi then
%b:\EFI\Boot\bootx64.efi
endif
endfor
Обозвать startup.nsh (utf16-LE) для автозагрузки при старте шелла. Положить в ту же папку, где и сам шелл, например EFI\Boot\bootx64.efi
Или вызывать из любого местоположения (startup > Enter)
Что такое Secure Boot?
Спецификация Secure Boot разработана Microsoft в рамках проекта UEFI и позволяет защитить загрузочную среду от вмешательства в загрузочные файлы путем контроля подписей загружаемых файлов на предмет их соответствия белому списку ключей, зашитых в uefi как доверенные. "Побочным эффектом" такой защиты от руткитов является невозможность установки ОС, отличной от Windows 8 (на данный момент только она поддерживает Secure Boot), а также исключает возможность запуска с старых mbr дисков и загрузочных CD-дисков/флешек.
UEFI Shell, или командная оболочка UEFI - это часть системы UEFI, предназначенная для выполнения запуска исполняемых *.efi файлов и UEFI-загрузчиков. Кроме этого, UEFI Shell позволяет: осуществлять загрузку UEFI-драйверов, выполнять файловые операции на поддерживаемых файловых системах (поддержка которых может быть добавлена загрузкой соответствующих драйверов), управлять загрузочным списком, работать с сетью (есть поддержка TCP/IP), выполнять сценарии *.nsh состоящие из команд данной оболочки.
Содержание
1. Командная оболочка UEFI Shell
Основные возможности похожи на оные у других командных оболочек. Если вам знакомы какие нибудь из них (bash, cmd и т. д.), то многие моменты будут вам знакомы.
1.1 Специальные Cимволы
1.2 Экранирование Символов
Символом выполняющим роль экранирования является ^ . Экранирование позволяет воспринимать введенный символ после символа экранирования, просто как текст. Это может потребоваться когда необходимо ввести один из специальных символов.
1.3 Кавычки
Кавычки ( " ) предназначены для объединение нескольких слов в единую строку. Командная оболочка воспринимает слова разделенные знаком пробел, как отдельные аргументы. Чтобы избежать такого восприятия, необходимую последовательность слов заключат в кавычки. К примеру, это бывает необходимо, когда в качестве аргументов используются полные пути до файла содержащие пробел.
Чтобы в строке заключенной в кавычки вставить сам знак кавычек, его необходимо экранировать ^" . То же самое касается и самого знака экранирования. Для использования его в строке, вводить его нужно так ^^ .
1.4 Перенаправления
1.4.1 Перенаправление Вывода
Вывод любой команды может быть перенаправлен в файл. Например:
В первом случае, результат выполненной команды command будет сохранен в файл file.log, с перезаписью (файл создается заново).
Во втором случае, результат выполненной команды command будет сохранен в конец файла file.log (если файла не существовало, то он создается).
У команды перенаправления существуют два модификатора a (вывод происходит в кодировке ASCII), v (вывод происходит в переменную). Например:
Специальные файлы перенаправлений NUL и NULL предназначены для подавления вывода. То есть, весь вывод направленный в эти файлы будет просто отброшен без сохранения. Пример:
command > NUL
command > NULL
1.4.2 Перенаправление Ввода
Данные из существующего файла или переменной могут быть направлены на входной поток любой команды. Например:
1.4.3 Конвейер Команд
command1 | command2
command1 |a command2
В первом случае происходит перенаправление вывода команды command1 во входящий поток команды command2. Во втором случае все тоже самое но в кодировке ASCII.
1.5 Комментарии
1.6 Переменные
Переменные создаются с помощью команды set либо с помощью перенаправления вывода в переменную. Так же существую переменные окружения, речь о которых пойдет ниже.
Доступ к переменным в командной строке, или скриптах, осуществляется путем заключения ее имени между символами процента % .
1.6.1 Переменные Окружения
Переменные окружения создаются самой командной оболочкой при ее инициализации. Некоторые из них можно изменять а некоторые нет. Каждый новый сеанс командной оболочки содержит свой независимый список переменных окружения. Ниже представлен список переменных окружения UEFI Shell:
cwd - Текущая рабочая директория. Доступна только для чтения.
lasterror - Код ошибки последней выполненной команды. Доступна только для чтения.
path - Содержит пути до директорий, перечисленных через точку с запятой, по которым UEFI Shell производит поиск запрошенных исполняемых файлов. Можно перезаписывать.
profiles - Список профилей UEFI Shell которые поддерживаются командной оболочкой. Доступна только для чтения.
uefishellsupport - Текущий уровень поддержки UEFI Shell. Всего их 4 (0, 1, 2, 3). Доступна только для чтения.
uefishellversion - Версия оболочки UEFI Shell. Доступна только для чтения.
uefiversion - Версия системы UEFI. Доступна только для чтения.
nonesting - Определяет возможность запуска вложенных копий оболочки. Доступна только для чтения.
1.6.2 Позиционные Переменные
Позиционные параметры используются в скирптах. Всего их десять, имеют вид %0 - %9 . Переменная %0 содержит в себе полный путь и имя исполняемого скрипта. Остальные переменные %1 - %9 содержат переданные аргументы.
1.6.3 Псевдонимы
Псевдонимы представляют собой дополнительное имя уже имеющейся команды или приложения. Возможны два варианта псевдонимов, на основе переменных, и созданные с помощью команды alias.
Для создания псевдонима с помощью переменной, необходимо создать переменную содержащую текст выполняемой команды. После чего вызвать созданную переменную.
1.6.4 Файловые Маски
Файловые маски в данной оболочке используют следующие символы * , ? , [] .
* - Любые символы в количестве от нуля и более.
? - Любой один символ.
[] - Один из указанных символов в квадратных скобках.
Пример использования файловых масок:
1.7 Интерактивные Возможности
1.7.1 Клавиши Истории Команд
Командная оболочка UEFI Shell запоминает последние выполненные команды. Нажатием на клавиши стрелок вверх или вниз, можно выводить в командную строку последние выполненные команды. Нажатием на клавишу F7 можно посмотреть список последних 24 команд, с возможностью повтора необходимой по ее номеру.
1.7.2 Прерывание Выполнения
В UEFI Shell присутствует возможность прерывать выполнение команды, исполняемого файла или скрипта. Осуществляется прерывание выполнения с помощью сочетания клавиш CTRL+C .
1.7.3 Контроль Выходного Потока
UEFI Shell поддерживает возможность останавливать вывод (ставить на паузу), и продолжать его с остановленного места. Остановить вывод можно сочетанием клавиш CTRL+S . Нажатием на любую клавишу исполняемая команда продолжит свое выполнение.
1.7.4 Поддержка Прокрутки Буфера
UEFI Shell позволяет прокручивать буфер вывода на 3 экрана назад. Осуществляется такая прокрутка клавишами PgUp и PgDown .
1.8 Справка Командной Строки
Вызвать общую информацию о командах в UEFI Shell можно выполнив команду help . Так как список не умещается на один экран, вы увидите лишь конец списка. Чтобы избежать такого поведения и выводить информацию постранично, необходимо запустить команду с параметром -b . Выглядеть это будет так help -b . Параметр -b можно использовать в любой ситуации, когда выходная информация не умещается на один экран.
Каждая команда из help списка обладает своей справочной информацией. Вызвать данную информацию можно выполнив необходимую команду с параметром -? , либо передав команде help название команды по которой необходимо получить справку. Пример:
2. Список команд UEFI Shell
В данном разделе будут кратко описаны стандартные команды оболочки UEFI Shell. Более подробное описание каждой команды на данный момент отсутствует. Если вы считаете, что подробное описание на русском все же необходимо, напишите об этом в комментариях.
Напомню, что справку по каждой команде можно получить запустив ее с ключом -? .
Применение основных команд данной командной оболочки можно посмотреть по этой ссылке. Применение команд загрузки драйверов можно посмотреть тут.
alias - Отображает, создает, или удаляет псевдонимы UEFI Shell.
attrib - Отображает или изменяет атрибуты файлов или директорий.
bcfg - Управляет загрузочными записями и настройками драйверов сохраненных в NVRAM (энергонезависимой памяти).
cd - Отображает или меняет текущий рабочий каталог.
cls - Очищает окно консоли, а так же позволяет задать цвета фона и текста.
comp - Сравнивает содержимое двух файлов побайтово.
connect - Привязывает драйвер к определенному устройству и запускает драйвер.
cp - Копирует один или несколько файлов или каталогов в указанное место.
date - Отображает и устанавливает текущую дату для системы.
dblk - Отображает один или несколько блоков с блочного устройства.
devices - Отображает список устройств, управляемых драйверами UEFI.
devtree - Отображает дерево устройств, совместимых с драйверами модели UEFI.
dh - Отображает дескрипторы устройств в UEFI окружении.
disconnect - Отключает один или несколько драйверов от указанных устройств.
dmem - Отображает содержимое системной памяти или памяти устройства.
dmpstore - Управляет всеми переменными UEFI.
drivers - Отображает список драйверов UEFI.
drvcfg - Настройка драйверов UEFI.
drvdiag - Диагностика драйверов UEFI.
edit - Вызывает полноэкранный текстовый редактор для файлов ASCII или UCS-2.
eficompress - Архивирует файл с использованием алгоритма сжатия UEFI.
efidecompress - Разархивирует файл сжатый алгоритмом сжатия UEFI.
else - Определяет код, выполняемый, когда if имеет значение FALSE.
endfor - Заканчивает цикл for.
endif - Заканчивает блок кода, управляемый оператором if.
exit - Выход из оболочки UEFI или текущего скрипта.
for - Начинает цикл, основанный на синтаксисе for.
getmtc - Выводит счетчик MTC.
goto - Переходит к указанной точке в выполняемом скрипте.
help - Отображает список команд UEFI Shell или справку по конкретной команде.
hexedit - Вызывает полноэкранный шестнадцатеричный редактор для файлов, блочных устройств или памяти.
if - Выполняет команды в заданных условиях.
ifconfig - Отображает или изменяет настройки протокола IPv4 для указанного сетевого интерфейса.
ifconfig6 - Отображает или изменяет настройки протокола IPv6 для указанного сетевого интерфейса.
load - Загружает драйвер UEFI в память.
loadpcirom - Загружает в память файл образ PCI Option ROM.
ls - Выводит содержимое директории или информацию о файле.
map - Отображает или определяет сопоставления файловой системы.
memmap - Отображает карту памяти, поддерживаемую средой UEFI.
mkdir - Создает одну или несколько новых директорий.
mm - Отображает или изменяет адресное пространство MEM/MMIO/IO/PCI/PCIE.
mode - Отображает или изменяет режим выходного устройства консоли.
mv - Перемещает один или несколько файлов в указанное местоположение или между файловыми системами.
openinfo - Отображает протоколы и агенты, связанные с дескриптором.
parse - Извлекает значение соответствующее заданному условию из указанного текстового файла.
pause - Останавливает выполнение скрипта и ожидает нажатия любой клавиши.
pci - Отображает список устройств PCI или информацию о них.
ping - Пингует указанный хост или IP-адрес по протоколу IPv4.
ping6 - Пингует указанный хост или IP-адрес по протоколу IPv6.
reconnect - Повторное подключение драйверов к определенному устройству.
reset - Перезагружает систему.
rm - Удаляет один или несколько файлов или каталогов.
sermode - Устанавливает атрибуты последовательного порта.
set - Отображает или изменяет переменные среды UEFI Shell.
setsize - Приводит файл к указанному размеру.
setvar - Отображает или изменяет переменную UEFI.
shift - Сдвигает позиции позиционных параметров в скрипте.
smbiosview - Отображает информацию о SMBIOS.
stall - Останавливает выполнение (ожидает) на указанное количество микросекунд (1 сек = 1000000 мксек).
time - Отображает или устанавливает текущее время для системы.
timezone - Отображает или задает информацию о часовом поясе.
touch - Обновляет временную метку указанного файла или файлов до текущей системной даты и времени.
type - Выводит содержимое указанного файла на стандартное устройство вывода (экран).
Либо скинуть настройки биоса перемычкой, либо командой bcfg driver rm 0 fs1:\EFI\BOOT\V3.EFI "V3 Full Turbo", где fs раздел с примонтированым разделом EFI
Константин Олегович
Константин Олегович ответил Mazius
Mazius, а не знаете еще такую инфу, было видео андервольтинга, если я вместо V3. EFI буду вводить не переименовывая те файлы что предоставили по типу V3_1005050.EFI мне нужно будет после этого прописывать такую команду что вы дали выше но только с driver add
Да, добавлять такую команду, как имя файла. Но лучше придерживаться правил со времен DOSа. Имя файла не больше 8 символов, расширение 3 символа.
Константин Олегович ответил Mazius
Mazius, понял, последний вопрос, если я сначала записал драйвер с именем и v3. EFI прописал его автощагрузку, потом другой если этот не подошел с названием v3_50.EFI так же его прописал автогрущится. Что будет с тем драйвером, он будет там где то валятся или удалился? Просто не хотелось бы там мусора накидать
Константин, тут точно не скажу, надо пробовать, возможен конфликт. В EFI разделе должен быть по идее один драйвер, т.е. если их будет несколько, то хз как система будет определять приоритет загрузки
Константин Олегович ответил Mazius
Mazius, Да все нашел как удалить лишние файлы, нужно просто зайти на диск UEFI и с папки BOOT удалить лишние файлы
При загрузке и установке драйверов для различных компонентов ПК может оказаться так, что файл скачивается с ошибкой или он просто не соответствует установленному оборудованию. Иногда Windows просто не может его загрузить из-за плохой работы сервера. В итоге старые драйверы будут удалены, а новые так и не установятся правильно Такой сбой в инсталляции в конечном итоге приводит к фатальным последствиям, в том числе т.н. «синему экрану смерти» (BSOD), что не даст загрузиться на Рабочий стол.
«Среда восстановления Windows (WinRE) — это инструмент для ремонта ОС, который поможет устранить распространенные причины не загружаемых операционных систем. WinRE основан на среде предустановки Windows (Windows PE) и может быть настроен с помощью дополнительных драйверов, языков, дополнительных компонентов Windows PE и других средств устранения неполадок и диагностики. По умолчанию WinRE предварительно загружается в Windows 10 для настольных изданий (Home, Pro, Enterprise и Education) и Windows Server 2016 ».
Есть несколько способов получить доступ к WinRE, но в случае, если ваш компьютер не загружается, единственным способом является обращение к исходному установочному носителю ОС. Если у вас его нет под рукой, то есть вариант скачать дистрибутив MediaCreationTool с официального сайта Microsoft на другом работающем ПК и развернуть его в качестве загрузочной флешки. Далее нужно загрузиться с ее и выбрать не инсталляцию, а пункт восстановления системы. Далее следуйте приведенной ниже инструкции после пункта Перезагрузить сейчас.
Теперь расскажем о ситуации, когда все же есть возможность загрузиться на Рабочий стол. В этом случае нужно инициировать перезапуск в режим восстановления:
После перезагрузки нужно выбрать вариант с запуском командной строки, чтобы можно было удалить неисправный драйвер. Командная строка позволяет получить полную информацию о драйверах, работающих на вашем устройстве. Вызвать ее можно с помощью такой команды:
Dism /image:C:\ /Get-Drivers
Если Windows установлена на диске с буквой, отличной от C:, убедитесь, что вы соответственно изменили вышеупомянутую команду.
На этом этапе вам должен быть предоставлен исчерпывающий список драйверов на вашем компьютере, и строка, которая вас интересует, называется «Имя публикации». Сторонние драйверы именуются с использованием правила oemX.inf, где X — это число, которое начинается с 0 и увеличивается по мере обнаружения большего количества драйверов на устройстве.
Как только вы определите, какой драйвер необходимо удалить, введите следующую команду, чтобы удалить его:
DISM /Image:C:\ /Remove-Driver /Driver:oemX.inf
Found 1 driver package (s) to remove.
Removing 1 of 1 – oemX.inf: The driver package was successfully removed.
The operation completed successfully.
На этом этапе вы можете перезагрузить компьютер и проверить, правильно ли запускается Windows без неисправного драйвера.
Если вам интересно, как вы можете определить, какой драйвер вызывает проблемы с загрузкой на вашем устройстве Windows, нет общего ответа на эту дилемму. В большинстве случаев виновниками являются только что обновленные драйверы, поэтому вам следует начать с удаления драйверов, которые были установлены только что или обновлены, перед перезагрузкой или выключением устройства.
Описанный здесь метод не работает при загрузке Windows в обычном режиме, так как он рассчитан на работу с установочным комплектом операционной системы, т.е. в среде восстановления Windows. Те же шаги можно использовать для устранения проблем с драйверами, которые не позволяют загружать устройство и в предыдущих версиях Windows, включая Windows 7 и Windows 8.1. Поддерживаются все версии Windows 10, включая следующую версию 2004, которая выйдет весной.
На новых компьютерах Microsoft требует использования UEFI с функцией «Secure Boot». Это усложняет установку других операционных систем.
На новых компьютерах Microsoft требует использования UEFI с функцией «Secure Boot». Это усложняет установку других операционных систем.
Плата с блоком памяти NVRAm Популярность ОС Windows привела к тому, что к многочисленным проблемам добавилась еще одна: «черви», вирусное ПО и трояны заставляют нас испытывать недюжинный страх за безопасность операционной системы. По утверждению Microsoft, интерфейс UEFI с функцией «Secure Boot» — это попытка вернуть пользователям уверенность в безопасности. Если загрузка ПК осуществляется UEFI в данном режиме, то такие вредоносные программы, как руткиты, оказываются не в состоянии до старта системы проникнуть в оперативную память. Все дело в том, что в режиме «Secure Boot» менеджер загрузки UEFI выполняет только подписанный цифровым ключом код, который он сверяет с зашифрованной базой данных.
Столь решительную систему защиты Microsoft предписывает использовать на всех компьютерах, которые реализуются под логотипом «Certified for Windows 8». Иными словами, все новые ПК, начиная с десктопов и ноутбуков и заканчивая Windows-планшетами, поставляются с активированным режимом «Secure Boot».
Но помимо защиты от руткитов есть одно неприятное обстоятельство — невозможность выполнения кода, не имеющего цифровой подписи. Это противоречит принципу свободной компьютерной платформы и с особым негодованием было воспринято сообществом Linux. Если режим «Secure Boot» активирован, вы не сможете ни установить, ни тем более запустить старые системы, включая Windows XP и 7. Более подробное знакомство с технологией позволит ответить на вопрос «почему?».
Удобство и быстрый запуск благодаря UEFI
Unified Extensible Firmware Interface (унифицированный расширяемый интерфейс прошивки), или кратко UEFI, призван заменить на всех компьютерах уходящий в прошлое интерфейс BIOS, который связывает аппаратные средства с операционной системой и отвечает за запуск ПК. Разработчики UEFI прежде всего преследовали цель устранить некоторые ограничения, присущие традиционной BIOS, которая появилась более 30 лет назад и перестала отвечать современным требованиям.
Отдельные этапы инициализации компонентов платформы в некоторой степени соответствуют BIOS, однако они выполняются намного быстрее. После этапа инициализации запускается менеджер загрузки UEFI. После проверки всех аппаратных компонентов он активирует встроенные в UEFI приложения и драйверы — например, оболочку для ввода команд или функцию поддержки сети. Приложения хранятся либо в NVRAM — запоминающем устройстве UEFI-совместимой материнской платы, либо на жестком диске. На последнем этапе менеджер загрузки UEFI запускает загрузчик ОС, который отвечает за старт операционных систем.
«Secure Boot» проверяет системные компоненты
Именно на этом этапе активируется «Secure Boot» и принимается решение о разрешении или запрете на загрузку операционной системы. Для защиты информации в «Secure Boot» используются три ключа шифрования: в самом верху находится ключ платформы (Platform Key), который создается производителем аппаратного обеспечения. Он требуется для обновления UEFI и загрузки новых ключей KEK (Key Enrollment Key). Согласно стандарту UEFI, ключи KEK должны предоставлять разработчики различных операционных систем, но все это чистая теория. На практике в каждом компьютере содержится лишь KEK от Microsoft для Windows 8, так как сегодня все машины с «Secure Boot» поставляются с данной операционной системой — исключением является только «хромобук» от Google. Ключ KEK занимает центральную позицию в «Secure Boot», так как он открывает доступ к базе данных с разрешенными подписями (Allow DB) и базе данных с запрещенными подписями (Disallow DB). В первой из них содержатся цифровые подписи приложений UEFI, а также подписи и/или хеши компонентов операционной системы — например, менеджера загрузки, ядра и драйверов. Только при их наличии загрузчик ОС запускает систему.
«Secure Boot» в сочетании с поставляемой Windows 8 работает безупречно, но для предыдущих версий операционных систем Microsoft не предоставляет подписей. В данном случае пользователю придется отключать «Secure Boot». Для операционных систем Linux доступны подписанный ключом загрузчик Shim и загрузчик от некоммерческой организации The Linux Foundation.
Справедливости ради стоит отметить, что разработчики Linux не отвергают идею «Secure Boot». Однако они усматривают в ней монополистские притязания Microsoft на аппаратное обеспечение, которые не проявлялись до появления «Secure Boot». С одной стороны, в стандартах по сертификации для Windows 8 компания Microsoft четко указывает, что пользователь имеет возможность отключения «Secure Boot». С другой — может произойти так, что в документации к следующей операционной системе данного примечания просто не окажется.
Последовательность загрузки ПК на основе UEFI Пришедший на смену BIOS интерфейс UEFI активирует аппаратное обеспечение, включая драйверы, и выполняет собственные приложения. Если задействуется режим «Secure Boot», UEFI проверяет наличие у драйверов и программ действительных цифровых подписей. В случае их отсутствия процесс запуска будет прерван. Ту же самую проверку проходят менеджер загрузки и ядра установленных операционных систем.
Активация аппаратных средств
На начальном этапе загрузки UEFI мало чем отличается от традиционной BIOS. После проверки того, подается ли на все аппаратные компоненты напряжение, выполняется запуск компонентов материнской платы, процессора и памяти, а затем загружается код UEFI.
Выполнение кода UEFI
Менеджер загрузки UEFI загружает носитель данных и дополнительный код UEFI из памяти NVRAM, а также из раздела UEFI на жестком диске. При этом драйверы и приложения выполняются только в том случае, если их цифровые подписи соответствуют данным, внесенным в базу Allow DB. В завершение выполняется запуск загрузчика ОС.
Загрузка операционной системы
Загрузчик ОС загружает операционные системы либо напрямую, либо с помощью их менеджеров загрузки. Код загрузки ОС и менеджер загрузки должны обладать действующим сертификатом безопасности, в противном случае процесс будет прерван. То же самое относится и ко всем компонентам ядра, которые в дальнейшем загружаются менеджером загрузки.
Проверка «Secure Boot»
В «Secure Boot» все основные файлы операционной системы (ядро, драйверы) должны обладать цифровой подписью. В таблице сертификатов файла указан подходящий сертификат для «Secure Boot», созданный в соответствии со стандартом X.509, а также снабженные цифровой подписью хеш-значения свойств основных файлов. Они должны соответствовать данным, содержащимся в базе Allow DB.
Читайте также: