Boot mode select dual что это
Перейти к содержимому

Boot mode select dual что это

  • автор:

Немного про UEFI и Secure Boot

UEFI (Unified Extensible Firmware Interface) — замена устаревшему BIOS. Эта спецификация была придумана Intel для Itanium, тогда она еще называлась EFI (Extensible Firmware Interface), а потом была портирована на x86, x64 и ARM. Она разительно отличается от BIOS как самой процедурой загрузки, так и способами взаимодействия с ОС. Если вы купили компьютер в 2010 году и позже, то, вероятнее всего, у вас UEFI.

Основные отличия UEFI от BIOS:
  • Поддержка GPT (GUID Partition Table)
  • Поддержка сервисов
  • Модульная архитектура
  • Встроенный менеджер загрузки
Как происходит загрузка в UEFI?

С GPT-раздела с идентификатором EF00 и файловой системой FAT32, по умолчанию грузится и запускается файл \efi\boot\boot[название архитектуры].efi, например \efi\boot\bootx64.efi
Т.е. чтобы, например, создать загрузочную флешку с Windows, достаточно просто разметить флешку в GPT, создать на ней FAT32-раздел и просто-напросто скопировать все файлы с ISO-образа. Boot-секторов больше нет, забудьте про них.
Загрузка в UEFI происходит гораздо быстрее, например, загрузка моего лаптопа с ArchLinux с нажатия кнопки питания до полностью работоспособного состояния составляет всего 30 секунд. Насколько я знаю, у Windows 8 тоже очень хорошие оптимизации скорости загрузки в UEFI-режиме.

Secure Boot

Я видел много вопросов в интернете, вроде:

«Я слышал, что Microsoft реализовывает Secure Boot в Windows 8. Эта технология не позволяет неавторизированному коду выполняться, например, бутлоадерам, чтобы защитить пользователя от malware. И есть кампания от Free Software Foundation против Secure Boot, и многие люди были против него. Если я куплю компьютер с Windows 8, смогу ли я установить Linux или другую ОС? Или эта технология позволяет запускать только Windows?»

Начнем с того, что эту технологию придумали не в Microsoft, а она входит в спецификацию UEFI 2.2. Включенный Secure Boot не означает, что вы не сможете запустить ОС, отличную от Windows. На самом деле, сертифицированные для запуска Windows 8 компьютеры и лаптопы обязаны иметь возможность отключения Secure Boot и возможность управления ключами, так что беспокоится тут не о чем. Неотключаемый Secure Boot есть только на планшетах на ARM с предустановленной Windows!

Что дает Secure Boot? Он защищает от выполнения неподписанного кода не только на этапе загрузки, но и на этапе выполнения ОС, например, как в Windows, так и в Linux проверяются подписи драйверов/модулей ядра, таким образом, вредоносный код в режиме ядра выполнить будет нельзя. Но это справедливо только, если нет физического доступа к компьютеру, т.к., в большинстве случаев, при физическом доступе ключи можно заменить на свои.

В Secure Boot есть 2 режима: Setup и User. Первый режим служит для настройки, из него вы можете заменить PK (Platform Key, по умолчанию стоит от OEM), KEK (Key Exchange Keys), db (база разрешенных ключей) и dbx (база отозванных ключей). KEK может и не быть, и все может быть подписано PK, но так никто не делает, вроде как. PK — это главный ключ, которым подписан KEK, в свою очередь ключами из KEK (их может быть несколько) подписываются db и dbx. Чтобы можно было запустить какой-то подписанный .efi-файл из-под User-режима, он должен быть подписан ключом, который в db, и не в dbx.

Для Linux есть 2 пре-загрузчика, которые поддерживают Secure Boot: Shim и PRELoader. Они похожи, но есть небольшие нюансы.
В Shim есть 3 типа ключей: Secure Boot keys (те, которые в UEFI), Shim keys (которые можно сгенерировать самому и указать при компиляции), и MOKи (Machine Owner Key, хранятся в NVRAM). Shim не использует механизм загрузки через UEFI, поэтому загрузчик, который не поддерживает Shim и ничего не знает про MOK, не сможет выполнить код (таким образом, загрузчик gummiboot не будет работать). PRELoader, напротив, встраивает свои механизмы аутентификации в UEFI, и никаких проблем нет.
Shim зависит от MOK, т.е. бинарники должны быть изменены (подписаны) перед тем, как их выполнять. PRELoader же «запоминает» правильные бинарники, вы ему сообщаете, доверяете вы им, или нет.
Оба пре-загрузчика есть в скомпилированном виде с валидной подписью от Microsoft, поэтому менять UEFI-ключи не обязательно.

Secure Boot призван защитить от буткитов, от атак типа Evil Maid, и, по моему мнению, делает это эффективно.
Спасибо за внимание!

  • Информационная безопасность
  • UEFI

Как включить Secure Boot в BIOS на Gigabyte и AORUS

Одним из системных требований Windows 11 является наличие безопасной загрузки Secure Boot. Эта функция является частью UEFI и предназначена для проверки запускаемых операционных систем. Secure Boot проверяет цифровую подпись и в случае ошибки блокирует загрузку ОС. Это позволяет защититься от некоторых видов вредоносных программ и контролировать список ОС, которые могут загружаться на компьютере.

После анонса Windows 11 начали интересоваться включением данной опции, чтобы подготовить компьютер к обновлению до новой операционной системы. В этой статье мы расскажем, как включить Secure Boot в BIOS на материнских платах Gigabyte и Gigabyte AORUS.

Для работы Secure Boot диск должен быть в формате GPT. Поэтому, перед включением Secure Boot нужно проверить формат диска и если диск в MBR, то его нужно сконвертировать в GPT. Подробнее:

  • Как узнать в каком формате жесткий диск MBR или GPT
  • Как преобразовать MBR в GPT в Windows 10

Процесс включения Secure Boot может сильно отличаться от одной материнской платы к другой. Точную информацию для вашей конкретной материнской платы можно получить в инструкции. Ниже мы рассмотрим несколько типичных вариантов для BIOS на платах Gigabyte и Gigabyte AORUS.

Для того чтобы включить Secure Boot на материнских платах Gigabyte или Gigabyte AORUS нужно зайти в настройки BIOS и открыть раздел « BOOT » или « BIOS ». Содержимое этих разделов похожее, но в зависимости от модели платы, название может отличаться.

зайти в настройки BIOS и открыть раздел BOOT

зайти в настройки BIOS и открыть раздел BIOS

Дальше нужно отключить функцию « CSM Support » если она включена. CSM или Compatibility Support Module – это функция эмуляции старого BIOS, позволяющая загружать операционную систему с жестких дисков с разметкой MBR. Без отключения CSM вы не сможете включить Secure Boot.

отключить функцию CSM Support

После этого нужно открыть раздел « Secure Boot ». Обратите внимание, если функция « CSM Support » включена, то раздел « Secure Boot » может не отображаться в меню.

открыть раздел Secure Boot

И включить опцию « Secure Boot Enable ». После этого необходимо сохранить настройки BIOS и перезагрузить компьютер.

включить опцию Secure Boot Enable

После включение Secure Boot можно проверить ее состояние с помощью программы « Сведения о системе », которая доступна в Windows 10. Для этого нажмите комбинацию клавиш Win-R и выполните команду « msinfo32 ».

проверить состояние Secure boot

В открывшемся окне нужно найти строки « Режим BIOS » и « Состояние безопасной загрузки ». Если все было сделано правильно, то здесь должно быть указано « UEFI » и « Включено », как на скриншоте вверху.

Возможно вам будет интересно:

  • Как проверить совместимость компьютера с Windows 11
  • Что такое Secure Boot для Windows 11
  • Программа для проверки совместимости с Windows 11
  • Запуск Windows 11 на этом компьютере невозможен
  • Как включить Secure Boot в BIOS на MSI

Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.

Остались вопросы?

Задайте вопрос в комментариях под статьей или на странице «Задать вопрос» и вы обязательно получите ответ.

Настройка UEFI Dual Boot системы, приправленной rEFInd

КДПВ. Бут-менеджер rEFInd с темой оформления Regular.

На сегодняшний день практически все уже слышали про технологию UEFI. Говорить о том, что это такое и зачем оно нужно, я не собираюсь. Сегодня я бы хотел описать простейший сценарий установки Dual Boot системы с полной поддержкой UEFI, а также рассмотреть отдельно установку и настройку бут-менеджера rEFInd. Возможно вы уже видели подобные мануалы и гайды, но я постараюсь донести весьма доходчиво суть того, что мы будем делать и зачем. В других мануалах вы лишь смотрите за «магией» картежника и пытаетесь её повторить, делая, зачастую, элементарные ошибки. Кому эта тема интересна — прошу под кат.

В целом UEFI призвана наоборот упросить процесс загрузки, а не усложнить его. К примеру, посредством этой технологии компьютер можно загружать ОС и вовсе без прослойки в лице GRUB / LILO / etc, загрузчиком может выступать сама UEFI. Однако этот метод имеет свои недостатки, например, вам придется повозиться после обновления ядра, можно, разумеется, написать скрипт, но в целом этим и занимается grub2-efi

Итак, давайте сформируем примерный список наших действий, некоторым хватит прочесть его и уже взяться за дело. Собственно тут будет всего четыре пункта. Пятый и шестой пункт опционален.

  1. Запись образа Windows 10 (8/8.1) на диск/флешку.
  2. Установка Windows 10 на часть диска.
  3. Запись образа Linux-дистрибутива с поддержкой EFI (большинство) на диск/флешку.
  4. Установка Linux-дистрибутива на оставшуюся часть диска.
  5. Установка и конфигурация rEFInd.
  6. Удаление GRUB и полный переход на rEFInd.

На первый взгляд всё очень просто, всего 4 базовых пункта, но тут есть огромное количество нюансов.

Ошибки делают на всех этапах: входят в режим Legacy-bios, указывают не тот загрузочный раздел, просто не понимают, что делают и т.д. В конечном итоге всё это приводит к массе боли и страданиям на форумах, в чатах, и т.д. На деле же всё нереально просто, нужно просто понимать, что ты делаешь на каждом этапе и проверять себя.

Сначала немного теории

UEFI видит только один специальный ESP-раздел, обычно он имеет размер 100-200 мегабайт и форматирован в FAT32 (бывает в FAT16), в нем содержаться папки с названиями а-ля Boot, Microsoft, Fedora, Ubuntu и т.д. Если вы перепробовали достаточное количество ОС и никогда не форматировали этот раздел, то там могло набраться приличное количество папок. К примеру, у меня было 2 живых оси и лежало около 6 папок.

P.S. CodeRush подсказал, что поддерживаются все FS, если на них есть соответствующие драйверы:

Это неверно. UEFI видит все разделы, для ФС которых в конкретной реализации прошивки имеются драйверы. ESP же отличается от остальных разделов только тем, что а) для FAT драйвер иметь обязательно и б) на разделе ESP осуществляется поиск загрузчиков и автоматическое создание соответсвующих переменных BootXXXX, если загрузчики нашлись.

В самих папках лежат исполняемые файлы .efi которые и выступают в роли загрузчиков ОС. В папке debian вы наверняка обнаружите файл grubx64.efi , а в папке Microsoft – bootmgr.efi .

Большинство Linux-дистрибутивов монтируют ESP-раздел к /boot/efi , то есть загрузчик Debian будет лежать примерно на таком пути: /boot/efi/EFI/debian/grubx64.efi

C директорией разобрались, а что дальше?

А дальше нужно понимать, что существует ещё порядок загрузки, которым можно руководить с помощью утилиты efibootmgr , если у вас её нет, то можете скачать через свой пакетный менеджер, во всех стандартных репозиториях она присутствует. Для начала можете просто ввести эту команду и увидеть список порядка загрузки, а также все UEFI-записи. Если хотите разобраться с утилитой, то курите ман и читайте интернеты, в целом она весьма простая. Злой Windows как раз-таки тут и затирает наш GRUB и ставит Windows Boot Manager первым приоритетом, поэтому его приходится восстанавливать. Скажу лишь как редактировать записи:
efibootmgr -b —
К примеру, efibootmgr -b 0 -B означает удалить запись 0.

P.S. CodeRush и другие комментаторы заметили, что efibootmgr является весьма опасной утилитой и отмечают, что гораздо безопасней пользовать EFI Shell.

По факту GRUB можно вообще не трогать, потому что он наверняка так и лежит в папке EFI/ , нужно лишь восстановить запись и выставить первый приоритет, но зачем что-то копать если можно chroot’нуться и ввести grub-install ? В большинстве случаев он сделает всё сам.

Кстати, стоит не забывать, что базовым функционалом efibootmgr обладает и сам, собственно, UEFI, он умеет читать эти записи и выстраивать приоритеты. Но сам просматривать ESP-разделы и добавлять новые записи он не умеет, эти обязанности возложены на EFI Shell и операционные системы.

Еще как умеет, и это умение требуется спецификацией начиная с UEFI 2.2 (SecureBoot появился в UEFI 2.3.1C).

И на последок: Все ваши действия в efibootmgr записываются в NVRAM! В большинстве случае UEFI умеет восстанавливать битый NVRAM каждый раз проверяя его и перезаписывая, в случая неполадок. Однако некоторые недобросовестные производители выпускают сырые прошивки и можно получить самый настоящий кирпич. К примеру ноутбуки с UEFI на базе Phoenix SCT окирпичиваются! Так что перед тем как продолжить читать, удостоверьтесь, что ваша модель материнской карты или ноутбука, устойчива к таким экспериментам.

P.S. Уже после написания большей части статьи я вспомнил про Secure Boot. Обычно UEFI тянет его за собой, но в большинстве случаев его можно весьма просто отключить в настройках UEFI. Многие Linux-дистрибутивы поддерживают его, но я всё же рекомендую его отключить, так как он может потянуть за собой массу проблем.

Базовый экскурс в теорию закончен.

Теперь можно перейти к практике

Дисклеймер: Сразу оговорю, что я предпочитаю стерильные условия и сам делаю полную переустановку с помощью проверенных лично мной утилит. Если вы будете использовать другие утилиты, то, пожалуйста, не пишите почему у вас что-то не получается на том или ином этапе. Мой вариант проверен сотнями переустановок друзьям и коллегам.

Первым делом нам нужно записать Windows

Потому что если поставить Windows второй, то она затрет загрузчик. Восстановить? Без проблем. Но зачем возня, если можно сразу сделать всё по уму? Впрочем я всё равно обговорю нюансы восстановления чуть позже в конце статьи.

В отличии от Linux, Windows записать гораздо проще, на мой взгляд. Первый способ до возможно многим знаком, нужно просто зайти в cmd.exe от имени администратора и ввести эти команды. Не сложно заметить, то тут нет абсолютно никакой магии. Мы просто форматируем флешку в FAT32:

diskpart
list disk
select disk
clean
create partition primary
select partition 1
active
format fs fat32 quick
assign
exit

После этого нужно просто открыть ISO-файл архиватором и перекинуть содержимое на чистую флешку. Всё, UEFI-флешка готова. На Linux можно сделать всё аналогичным образом, просто форматируем в FAT32 и копируем содержимое.

Полученную флешка должна отлично загружаться любым ПК с поддержкой UEFI.

Кстати, обратимся к теории: наш образ с Windows 10 содержит папочку efi, в ней как раз лежит всё добро для начала загрузки, которое должен увидеть наш UEFI. Поэтому простого форматирования и копирования в большинстве случаев хватает для большинства ПК.

Однако я предпочитаю второй способ с использованием утилиты Rufus. Он меня никогда не подводил. Однако это Windows-only способ. На Linux-системах использование ddresque для создания загрузочной флешки Windows НЕ РАБОТАЕТ. Так что пробуйте другие утилиты, если первый способ с простым форматирование не помог.

Всё что вам будет нужно: выбрать вашу флешку, выставить параметр «Схема раздела и тип системного интерфейса» на «GPT для компьютеров с UEFI», и нажать старт. Остальные параметры трогать не нужно. Лучше использовать флешки помельче (на 8-16 гигабайт).

Наверняка один из способов должен был прокатить, лично я ни разу с проблемами на этом этапе не встречался, главное чтобы компьютер поддерживал UEFI.

Поэтому перейдем к этапу установки

После загрузки в UEFI-режиме делаем всё по стандартной схеме, но на этапе выбора типа установки выбираем «экспертную», то есть мы разметим раздел сами. Размечать рекомендую аккуратно, особенно если дисков много. Наконец, выбрав диск, удалите все существующие разделы. Создайте один раздел с нужным вам размером, к примеру, 150 гигабайт. (Если вы предпочитаете создавать два и более разделов для ОС и файлов — без проблем, создавайте). Выберете этот раздел кликом мышки и нажмите «Далее». И если вы всё сделали верно, то Windows попросит вас создать дополнительные. Обязательно отвечайте «Да». Система создаст три раздела. Два своих для системных нужд и один тот самый нужный нам EFI-раздел. У меня он по нумерации всегда второй, всего получится 4 раздела, включая пользовательский NTFS. Если установщик не предложил создать разделы или создал всего один, то значит вы загрузились в Legacy-режиме и нужно перезаписывать флешку, что-то пошло не так. К сожалению редактор разделов Windows-установщика крайне слаб по возможностям, поэтому пробовать размечать разделы под будущий Linux тут смысла нет, оставляем это место попросту свободным. Дальше устанавливаем всё в штатном режиме.

Кстати, один из признаков правильной установки Windows в UEFI-режиме, появление логотипа производителя материнской карты / ноутбука / планшета при загрузке. Во многих UEFI (к примеру от ASUS и ASRock) есть отдельная настройка для этого. Так что если логотипа нет, но всё остальное прошло как по маслу, то ничего страшного в этом нет.

Тонко настраивать Windows на данный момент не рекомендую, так как если что-то пойдет не так, то возможно придется переустановить.

Записываем Linux?

Ага. После входа в Windows рекомендую сразу скачать образ выбранного вами дистрибутива и записать его аналогичным образом через Rufus. Правда в случае с Linux-дистрибутивами Rufus может спросить массу вопросов, к примеру он может попросить подгрузить загрузчик syslinux с интернета или выбрать режим записи образа: ISO или DD. На все вопросы отвечаем «Да.», то есть да, скачиваем последнюю версию syslinux и записываем в режиме ISO. Проверено на Ubuntu (и её вариациях Server, Mate, GNOME), Fedora, RHEL7, Debian и других.

До Dual Boot буквально один шаг

В отличии от Windows большинство дистрибутивов имеют отличную индикацию UEFI-режима. К примеру Debian в своем установщике черным по белому пишет, что система запущенна в UEFI-mode. Другие дистрибутивы проявляют это странным grub-загрузчиком, который выглядит «как-то не так».

Думаю если вы собрались ставить Linux, то вы наверняка сами знаете как ставить ваш любимый дистрибутив, поэтому я не буду заострять внимание на подробностях установки отдельно взятого дистрибутива. Потому что этот этап до боли прост. Если вы уже действительно прогрузились в UEFI-режиме и установили Windows как надо, то Dual Boot уже практически в кармане.

Итак всё что вам потребуется сделать при установке Linux:
Выбрать раздел /dev/sda2 (в вашем случае это может быть другой раздел) и указать точку монтирования — /boot/efi . Всё. Нет, правда, всё. Разумеется не забудьте разметить ext4 / Btrfs / ReiserFS / XFS / JFS раздел, примонтировать его в корень /. Кому нужен swap (если нужен) создайте и его. Дальше установщик вашего дистрибутива сделает всё сам, установит в директорию EFI/ свой GRUB и найдет запись Windows ( EFI/microsoft ).

Данная логика была проверена во всех вышеозначенных дистрибутивах. То есть повторюсь ещё раз: Главное показать вашему дистрибутиву где у вас этот заветный ESP-раздел и куда надо ему кидать загрузчик. Он его не форматирует, а просто добавляет GRUB. А вот уже сам GRUB вершит магию, изменяет приоритеты загрузки и т.д. Замечу, что некоторые дистрибутивы сами монтируют этот раздел куда надо, так как видят флаги ESP и BOOT. К примеру в установщике Debian нужно просто создать пользовательский раздел и всё.

Наводим красоту, ставим rEFInd

К сожалению счастью я болею сильной формой перфекционизма. И простой GRUB2 меня не устраивал, больно он страшный и не красивый. Беглый гуглинг рассказал мне о BURG, «красивом» форке GRUB, но он был заброшен и на данный момент скорее мертв, чем жив. К счастью для UEFI-машин есть отличная альтернатива — rEFInd. rEFInd является форком, заброшенного ныне rEFIt, а также его логическим продолжением. Первый создавался в первую очередь для Mac’ов и работы рядом с Boot Camp, нынешний форк такой узкой специализации не имеет и подходит практически для любых конфигураций.

Стоит сразу заметить, что rEFInd НЕ является загрузчиком. Это так называемый Boot Manager, он вызвает другие .efi-бинарники к исполнению, а также может направить UEFI на запуск ядра прямо с раздела /boot . Другими словами то есть систему загружает не он, а сам UEFI. Для Multi-Boot машин является отличным решением. Сам по себе rEFInd является .efi-приложением, собранным средствами UEFI Shell. Сам находится в директории EFI/refind/refind_x64.efi

Помимо того, что можно выбирать между уже установленными системами на ПК, приятным плюсом можно выделить автоматическое обнаружение загрузочных флешек и дисков. На КПДВ это можно увидеть. У меня имеется загрузочная флешка с Debian (не установщиком, а полноценной ОС) и можно увидеть удобную индикацию того, что это именно флешка, а не что-то другое. Если у вас имеется несколько ядер, то их список можно увидеть по нажатию клавиши F2. Помимо этого в файле /boot/refind_linux.conf можно задать несколько вариантов с разными параметрами ядра (например первый — стандартный для загрузки GUI, второй — безопасный режим без видеодрайвера и т.д, можно сделать дюжину вариантов, по умолчанию всего три). Также в папку EFI/tools можно накидать различных .efi-бинарников, к примеру UEFI Shell или memtest86+. rEFInd их автоматически подхватит и покажет в нижнем ряду как утилиты.

Еще пара скринов

Хотите также?

Процесс установки из под Linux необычайно прост. Все способы описаны на официальном сайте, устанавливать можно практически из любой ОС. Для начала посетите эту страничку и скачайте .deb- или .rpm-пакет.

Если у вас редкий дистрибутив вроде Slackware или Gentoo, то лично я вам помочь не смогу, но на сайте есть обычный .zip-архив и другие варианты установки, так что если уж вы работаете в подобных дистрибутивах, то наверняка поставить своими силами вы сможете без проблем.

Сделайте бэкап EFI-директории:
cp -r /boot/efi/EFI /boot/EFI.bkp
После загрузки пакета, выполните:
cd Downloads или cd Загрузки
И установите пакет:
sudo dpkg -i .deb или sudo dnf install .rpm
В моем случае dpkg не мог иногда подтянуть зависимости, если у вас возникнут такие же трудности, то установите gdebi ( sudo apt-get install gdebi ) и выполните sudo gdebi .deb .

Если у вас RHEL или CentOS, то используйте yum вместо dnf .

В логах установки пакета можно отследить лог установки rEFInd, в котором возможно будут ошибки их надо сразу отследить. Однако по моему опыту ошибок не возникает, если всё сделать правильно. Проверить результат работы установщика rEFInd можно, воспользовавшись утилитой efibootmgr , там первым приоритетом должна должен быть именно rEFInd Boot Manager.

Установить rEFInd повторно, если пакет уже установлен, можно с помощью команды:
refind-install
Установку rEFInd первым приоритетом можно произвести в ручную, с помощью команды:
refind-mkdefault

Всё очень страшно и откуда у меня столько ОС?

Да, всё страшно, пока. На самом деле ОС у вас всего две. Просто rEFInd собрал все .efi-бинарники и ещё отобразил ОС с возможностью загрузки напрямую. Для исправления этого недоразумения мы удалим лишнее, напишем свой конфиг и поставим красивую тему на rEFInd.

Первым делом зайдите в Linux, выбрав один из рабочих пунктов загрузки. В меню должен быть пункт для загрузки БЕЗ использования grubx64.efi! В разделе /boot проще работать из под администратора (потому у команду cd не хватает привелегий, а sudo она не работает), так что su и вводим пароль root’а.

Этот пункт не зря опциональный, потому что если у вас недостаточно опыта, то можно очень просто что-то сломать и не заметить. Рекомендую подготовить флешку с рабочим LiveCD, чтобы проводить восстановление, в случае неожиданностей.

Наша первая задача — удалить лишние директивы загрузки, их запросто может быть штук 6, а системы всего две.

Заходим в директорию:
cd /boot/efi/EFI && ls
Вероятно тут будет пять папок:
BOOT, microsoft, , refind и tools.
Если будет что-то лишнее — смело удаляйте.

Способ 1 (через очищение, опаснее):
Убедившись что вы загрузились через rEFInd (!) и НЕ использовали для этого GRUB можете смело удалить папку вашего дистрибутива. Перезагрузитесь и проверьте, можете ли вы загрузиться в ваш Linux. Если можете, то вероятно в меню загрузки осталось 4 директивы: Windows, Linux и два странных пункта, которые приводят (скорее всего) к загрузке Linux. Можно было догадаться, что это .efi-бинарники из папки EFI/BOOT . Папку можно удалить полностью. НО! Убедитесь, что у вас есть бэкап. Перазагружаемся. Всё отлично?

Удаляем GRUB:
sudo apt-get remove grub2 grub2-efi grub grub-efi
Или:
sudo dnf remove grub2

Теперь можно ставить тему.

Некоторые UEFI другие директории вовсе не видят. Поэтому небольшой work around для таких систем существует. Удаляем папку BOOT, переименовываем папку refind в папку BOOT, а также сам файл refind_x64.efi в bootx64.efi. Перезагружаемся.

Способ 2 (через конфиг rEFInd, безопаснее):
Этот способ гораздо безопаснее, потому что удалять и что либо трогать мы не будем, мы добьемся результата правильной настройкой конфига. Сам конфиг лежит тут: /boot/efi/EFI/refind/refind.conf
Чтобы настроить свой набор директив загрузки нужно использовать два параметра scanfor и menuentry , после настройки должен получится примерно такой конфиг:

# Сканируем записи созданные ручкуами, флешки и оптически приводы
scanfor manual,external,optical
# Пункт для загрузки Linux
menuentry Linux loader /EFI/ubuntu/grubx64.efi
icon /EFI/refind/icons/os_linux.png
>
# Пункт для загрузки Windows 10
menuentry «Windows 10» loader \EFI\Microsoft\Boot\bootmgr.efi
icon /EFI/refind/icons/os_win.png
>

Разумеется это только часть конфига, другие параметры можно взять из примера

Мой конфиг на базе первого способа с комментариями

# Ожидание в секундах перед авто-выбором ОС
timeout 20
# Скринсервер через 300 секунд, если ничего не выбрали,
# но нажали любую клавишу и отменили автовыбор
screensaver 300
# Разрешение бут-менеджера
resolution 1280 1024
# Использовать графику при загрузке Linux. Этот параметр позволит загружать ОС с красивой Plymouth
# заставкой в разрешении указанном выше
use_graphics_for linux
scanfor internal,external,optical,netboot,biosexternal
# Подключение темы
include themes/refind-theme-regular/theme.conf

Отдельно про Plymouth можно почитать здесь.

Включение красивой темы

С этим всё просто, чуть выше последняя строчка конфига указывает на .conf-файл темы. Сами темы желательно класть в папку /boot/efi/EFI/refind/themes . По-умолчанию её нет, создайте через mkdir .
Заходим в директорию themes и просто пишем git clone https://github.com/munlik/refind-theme-regular.git . В конфиге прописываем строку include themes/refind-theme-regular/theme.conf
Другие темы можно посмотреть на оф. сайте.

Там же можно посмотреть подробные процессы установки, параметры для тонкой настройки конфига и многое другое.

Пожалуй на этом всё. Мы получили красивый бут-менеджер для выбора нужной ОС с полной поддержкой UEFI. Пункт с установкой rEFInd наиболее сложный, а поэтому опциональный, большинству хватит grub2-efi .

Напоследок небольшое видео от меня:

Наверняка закралось приличное количество ошибок в тексте, буду рад, если вы отпишите о них мне ЛС.

UPD 28.10.2022: Друзья, статье уже 6 лет, несмотря на то, что rEFInd технически до сих пор актулен, я перешёл на systemd-boot, на мой взгляд он проще и удобней в настройке.

  • Софт
  • Социальные сети и сообщества
  • DIY или Сделай сам
  • Лайфхаки для гиков
  • UEFI

Загрузка в режиме UEFI или устаревшем режиме BIOS

Выберите режимы UEFI или прежних версий BIOS при загрузке в Windows PE (WinPE) или программу установки Windows. Если после установки Windows необходимо переключить режимы встроенного ПО, можно использовать средство MBR2GPT .

Как правило, установите Windows с помощью нового режима UEFI, так как он включает больше функций безопасности, чем устаревший режим BIOS. Если вы загружаетесь из сети, поддерживающей только BIOS, вам потребуется выполнить загрузку в устаревшем режиме BIOS.

После установки Windows устройство загружается автоматически в том же режиме, в котором оно было установлено.

Чтобы загрузить UEFI или BIOS, выполните следующие действия.

значок кнопки питания

  1. Откройте меню встроенного ПО. Можно использовать любой из следующих методов:
    • Загрузите компьютер и нажмите клавишу изготовителя, чтобы открыть меню. Общие используемые ключи: ESC, Delete, F1, F2, F10, F11 или F12. На планшетах распространенными кнопками являются увеличение громкости или уменьшение громкости (найдите более распространенные клавиши и кнопки). Во время запуска часто отображается экран с упоминанием ключа. Если его нет или экран проходит слишком быстро, чтобы увидеть его, проверка сайт вашего производителя.
    • Кроме того, если Windows уже установлена, на экране входа или в меню Пуск выберите Пункт Питания (), > удерживая нажатой клавишу SHIFT , при нажатии кнопки Перезапустить. Выберите Устранение неполадок с дополнительными > параметрами UEFI Firmware Settings (Дополнительные параметры > встроенного ПО UEFI).
  2. В меню встроенного ПО загрузите диск или сеть в режиме UEFI или BIOS: В меню загрузочного устройства выберите команду, которая определяет режим встроенного ПО и устройство. Например, выберите UEFI: USB-накопитель или BIOS: сеть/локальная сеть. Для одного устройства могут отображаться отдельные команды. Например, вы можете увидеть USB-накопитель UEFI и USB-накопитель BIOS. Каждая команда использует одно и то же устройство и носитель, но загружает компьютер в другом режиме встроенного ПО. Некоторые устройства поддерживают только один режим (UEFI или BIOS). Другие устройства позволяют загружаться в режиме BIOS, отключив функции безопасности UEFI вручную. Чтобы отключить функции безопасности, перейдите в раздел Безопасная > загрузка безопасности и отключите эту функцию.

Примечание Некоторые старые компьютеры (Windows 7 или более ранние версии) поддерживают UEFI, но требуют перехода к загрузочному файлу. В меню встроенного ПО найдите параметр «Загрузка из файла», а затем перейдите в папку \EFI\BOOT\BOOTX64. EFI на носителе среды предустановки Windows или программы установки Windows.

Режимы UEFI и BIOS в WinPE

Определение загрузки WinPE в режиме BIOS или UEFI

Запросите реестр, чтобы определить, в каком режиме находится устройство. Это можно сделать из командной строки:

reg query HKLM\System\CurrentControlSet\Control /v PEFirmwareType 
Код возврата Режим встроенного ПО
0x1 BIOS
0x2 UEFI

Используйте его в скрипте:

wpeutil UpdateBootInfo for /f "tokens=2* delims= " %%A in ('reg query HKLM\System\CurrentControlSet\Control /v PEFirmwareType') DO SET Firmware=%%B :: Note: delims is a TAB followed by a space. if %Firmware%==0x1 echo The PC is booted in BIOS mode. if %Firmware%==0x2 echo The PC is booted in UEFI mode. 

Обратите внимание, что между delims= и » %%A — это вкладка, за которой следует пробел.

Убедитесь, что вы загружаетесь в правильном режиме каждый раз.

Вот несколько способов убедиться, что вы загружаетесь в правильном режиме встроенного ПО при каждом запуске компьютера.

Используйте предварительно отформатированные жесткие диски и метод, который не форматируется автоматически.

Если вы хотите убедиться, что диск загружается в определенном режиме, используйте диски, предварительно отформатированные с помощью формата GPT-файла для режима UEFI или формата MBR для режима BIOS. Если при запуске установки компьютер загружен в неправильном режиме, установка Windows завершится ошибкой. Чтобы устранить эту проблему, перезапустите компьютер в правильном режиме встроенного ПО.

Удаление загрузочных файлов UEFI или BIOS

Если требуется, чтобы компьютер загружал только в определенном режиме, можно удалить файлы, используемые windows PE или программой установки Windows для загрузки в режиме UEFI или BIOS. Удалите следующие файлы в зависимости от режима загрузки.

Загрузка только в режиме UEFI

Удалите файл bootmgr из корневого каталога среды предустановки Windows или носителя программы установки Windows. Это предотвращает запуск устройства в режиме BIOS.

Загрузка только в режиме BIOS

Удалите папку efi из корневого каталога среды предустановки Windows или носителя программы установки Windows. Это предотвращает запуск устройства в режиме UEFI.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *