Biostar uefi bios настройка

Обновлено: 07.07.2024

На рабочем видеосервере вышел из строя жесткий диск, размеченный в MBR, на котором была установлена ОС Windows 7.

Ситуация осложнялась тем, что диска для замены под рукой не оказалось, покупать долго, от слова ОЧЕНЬ (особенности организации процессов на предприятии), а сервер необходимо вводить в строй.

Из подручных материалов был только диск, который в данном сервере использовался для хранения архива. Сервер старый, а диск из новых (линейка WD Purple), соответственно встал вопрос, каким образом заставить загружаться старый компьютер (читай компьютер с BIOS) с данного жесткого диска, который размечен в GPT, чтобы не терять полезный объем.

Решение задачи

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

Итак, для решения данной задачи нам понадобиться Live CD/DVD/USB с GNU/Linux.
Лично я для этих целей пробовал использовать Ubuntu 16.04 и Debian 8. Сам автор предлагает использовать записанный на «болванку» Gparted , но каждый волен использовать то что ему ближе.

Полученные файлы необходимо записать в удобное сетевое хранилище (либо на флешку) после чего, для удобства, перенести во временное хранилище на запущенной Linux системе.
Теперь загружаемся в любимый дистрибутив GNU/Linux.

Первое, что необходимо после загрузки в Live CD, разметить наш диск в таблице разделов GPT.
(Я привожу примеры для Ubuntu 16.04)
Открываем консоль (консоль должна быть английской, локализованая консоль вызывает ошибки при обработке скрипта) и размечаем диск при помощи fdisk:


Теперь создаем новую таблицу разделов GPT на диске, а также необходимые разделы. Предполагается, что диск в системе один и определяется как /dev/sda, в противном случае, необходимо изменить название диска на то, которое подходит именно вам.


Я не буду коментировать по шагам то, что описано выше, т.к. это стандартные процедуры, которые выполняются в fdisk. Единственное, на что стоит обратить внимание, так это на то, что при создании первого раздела, на котором будет храниться DUET, необходимо изменить его тип на 'EFI System' (


), а тип второго раздела, выбрать как 'Microsoft basic data' (


) собственно на него и будет в дальнейшем производится установка Windows.

С разметкой закончили, теперь создаем файловые системы:


Со стандартными процедурами закончили, теперь переходим к магии.

Установка DUET


Делаем исполняемыми copy_duet_files.sh и duet-install:


Монтируем первый раздел в /mnt и устанавливаем EFI. Я выбрал EDK_UEFI64, потому что в дальнейшем при настройке загрузки, UDK_X64 почему-то не сохранял настройки. Разбираться было лень.

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


После нее, если все прошло гладко, и скрипт copy_duet_files.sh отработал правильно, появится приглашение эмулятора EFI.

К сожалению, на виртуальной машине воспроизвести это не получается, поэтому я привел картинку от EFI VirtualBox, она практически такая же как и та, которую должны увидеть вы.


Дальнейшая настройка загрузки производится уже через это меню. Оставляю последующую настройку загрузки через меню EFI для персонального изучения, тем более, что ничего сложного там нет. К примеру для начала можно потренироваться в том же VirtualBox в режиме загрузки EFI.

Вставляем диск с дистрибутивом Windows в дисковод или используем предварительно сформированную установочную флешку. В меню эмулятора EFI выбираем откуда производить загрузку (это выбирается через меню 'Boot Maintenance Manager' → 'Boot From File', выбор устройства с которого грузится флешка или CD/DVD. Для начала установки этого достаточно. В списке надо будет выбрать файл bootx64.efi именно он является загрузочным). Дальнейшая загрузка и установка происходит при помощи стандартного установщика Windows, но с возможностью установки на диск, который размечен в GPT.

Как устроена загрузка современных ОС? Как при установке системы настроить загрузку посредством UEFI, не утонув в руководствах и ничего не сломав?

Я обещал "самое краткое руководство". Вот оно:

  1. Создаём на диске таблицу разделов GPT
  2. Создаём FAT32-раздел на пару сотен мегабайт
  3. Скачиваем из интернета любой UEFI-загрузчик
    (нам нужен сам загрузчик, это один бинарный файл!)
  4. Переименовываем и кладем этот файл на созданный раздел по адресу /EFI/Boot/bootx64.efi
  5. Создаём текстовый конфиг, кладем его там, где загрузчик ожидает его увидеть
    (настройка и местоположение конфига зависят от конкретной реализации загрузчика, эта информация доступна в интернете)
  6. После перезагрузки видим меню загрузчика
    (Если на диске установлена Windows 8 или 10 — с большой вероятностью это руководство сокращается до пунктов 3 — 5.)

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 очень простой и предоставляет спартанского вида чёрно-белое меню. Есть варианты красивей, если душа просит красоты.

Clover. Позволяет выставлять нативное разрешение экрана, имеет поддержку мыши на экране загрузки, разные темы оформления. Дефолтная тема ужасна, конфиг в виде xml нечитаем, настроить не смог.

Различные неочевидные последствия

Вы можете легко попробовать эту схему в работе. Берёте USB-флешку, форматируете в таблицу разделов GPT, создаете FAT-раздел и копируете туда загрузчик. Комп сможет с неё стартовать.

Если просто скопировать на такую флешку boot-раздел установленного linux — система будет спокойно загружаться с флешки, не видя разницы.

image

Новые компьютеры используют прошивку UEFI вместо традиционного BIOS. Обе эти программы – примеры ПО низкого уровня, запускающегося при старте компьютера перед тем, как загрузится операционная система. UEFI – более новое решение, он поддерживает жёсткие диски большего объёма, быстрее грузится, более безопасен – и, что очень удобно, обладает графическим интерфейсом и поддерживает мышь.

Некоторые новые компьютеры, поставляемые с UEFI, по-прежнему называют его «BIOS», чтобы не запутать пользователя, привычного к традиционным PC BIOS. Но, даже встретив его упоминание, знайте, что ваш новый компьютер, скорее всего, будет оснащён UEFI, а не BIOS.

Что такое BIOS?


BIOS — это Basic Input-Output system, базовая система ввода-вывода. Это программа низкого уровня, хранящаяся на чипе материнской платы вашего компьютера. BIOS загружается при включении компьютера и отвечает за пробуждение его аппаратных компонентов, убеждается в том, что они правильно работают, а потом запускает программу-загрузчик, запускающую операционную систему Windows или любую другую, установленную у вас.

На экране настройки BIOS вы можете изменять множество параметров. Аппаратная конфигурация компьютера, системное время, порядок загрузки. Этот экран можно вызвать в начале загрузки компьютера по нажатию определённой клавиши – на разных компьютерах она разная, но часто используются клавиши Esc, F2, F10, Delete. Сохраняя настройку, вы сохраняете её в памяти материнской платы. При загрузке компьютера BIOS настроит его так, как указано в сохранённых настройках.

При загрузке компьютера по окончанию POST BIOS ищет Master Boot Record, или MBR — главную загрузочную запись. Она хранится на загрузочном устройстве и используется для запуска загрузчика ОС.

Вы также могли видеть аббревиатуру CMOS, что расшифровывается, как Complementary Metal-Oxide-Semiconductor — комплементарная структура металл-оксид-полупроводник. Она относится к памяти, в которой BIOS хранит различные настройки. Использование её устарело, поскольку такой метод уже заменили флэш-памятью (также её называют EEPROM).

Почему BIOS устарел?

BIOS существует уже давно и эволюционировал мало. Даже у компьютеров с ОС MS-DOS, выпущенных в 1980-х, был BIOS.

Конечно, со временем BIOS всё-таки менялся и улучшался. Разрабатывались его расширения, в частности, ACPI, Advanced Configuration and Power Interface (усовершенствованный интерфейс управления конфигурацией и питанием). Это позволяло BIOS проще настраивать устройства и более продвинуто управлять питанием, например, уходить в спящий режим. Но BIOS развился вовсе не так сильно, как другие компьютерные технологии со времён MS-DOS.

У традиционного BIOS до сих пор есть серьёзные ограничения. Он может загружаться только с жёстких дисков объёмом не более 2,1 Тб. Сейчас уже повсеместно встречаются диски на 3 Тб, и с них компьютер с BIOS не загрузится. Это ограничение BIOS MBR.

BIOS должен работать в 16-битном режиме процессора и ему доступен всего 1 Мб памяти. У него проблемы с одновременной инициализацией нескольких устройств, что ведёт к замедлению процесса загрузки, во время которого инициализируются все аппаратные интерфейсы и устройства.

BIOS давно пора было заменить. Intel начала работу над Extensible Firmware Interface (EFI) ещё в 1998 году. Apple выбрала EFI, перейдя на архитектуру Intel на своих Маках в 2006-м, но другие производители не пошли за ней.

В 2007 Intel, AMD, Microsoft и производители PC договорились о новой спецификации Unified Extensible Firmware Interface (UEFI), унифицированный интерфейс расширяемой прошивки. Это индустриальный стандарт, обслуживаемый форумом UEFI и он зависит не только от Intel. Поддержка UEFI в ОС Windows появилась с выходом Windows Vista Service Pack 1 и Windows 7. Большая часть компьютеров, которые вы можете купить сегодня, используют UEFI вместо BIOS.

Как UEFI заменяет и улучшает BIOS


UEFI заменяет традиционный BIOS на PC. На существующем PC никак нельзя поменять BIOS на UEFI. Нужно покупать аппаратное обеспечение, поддерживающее UEFI. Большинство версий UEFI поддерживают эмуляцию BIOS, чтобы вы могли установить и работать с устаревшей ОС, ожидающей наличия BIOS вместо UEFI – так что обратная совместимость у них есть.

Новый стандарт обходит ограничения BIOS. Прошивка UEFI может грузиться с дисков объёмом более 2,2 Тб – теоретический предел для них составляет 9,4 зеттабайт. Это примерно в три раза больше всех данных, содержащихся в сегодняшнем Интернете. UEFI поддерживает такие объёмы из-за использования разбивки на разделы GPT вместо MBR. Также у неё стандартизирован процесс загрузки, и она запускает исполняемые программы EFI вместо кода, расположенного в MBR.

UEFI может работать в 32-битном или 64-битном режимах и её адресное пространство больше, чем у BIOS – а значит, быстрее загрузка. Также это значит, что экраны настройки UEFI можно сделать красивее, чем у BIOS, включить туда графику и поддержку мыши. Но это не обязательно. Многие компьютеры по сию пору работают с UEFI с текстовым режимом, которые выглядят и работают так же, как старые экраны BIOS.

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

И это не просто замена BIOS. UEFI – это небольшая операционная система, работающая над прошивкой PC, поэтому она способна на гораздо большее, чем BIOS. Её можно хранить в флэш-памяти на материнской плате или загружать с жёсткого диска или с сети.

У разных компьютеров бывает разный интерфейс и свойства UEFI. Всё зависит от производителя компьютера, но основные возможности одинаковы у всех.

Как получить доступ к настройкам UEFI на современном ПК

Если вы обычный пользователь, перехода на компьютер с UEFI вы и не заметите. Загружаться и выключаться компьютер будет быстрее, а также вам будут доступны диски размером более 2,2 Тб.

А вот процедура доступа к настройкам будет немного отличаться. Для доступа к экрану настроек UEFI вам может потребоваться загрузочное меню Windows. Производители ПК не хотели замедлять быструю загрузку компьютера ожиданием нажатия клавиши. Но нам встречались и такие UEFI, в которых производители оставили возможность входа в настройки тем же способом, какой был в BIOS – по нажатию клавиши во время загрузки.


UEFI – это большое обновление, но произошло оно незаметно. Большинство пользователей ПК не заметят его, и им не нужно беспокоиться по поводу того, что их новый компьютер использует UEFI вместо обычного BIOS. ПК просто будут лучше работать и поддерживать больше современного аппаратного обеспечения и возможностей.

Более подробное объяснение отличий в загрузочном процессе UEFI можно почитать в статье Адама Уильямсона из Red Hat, и в официальном вопроснике UEFI FAQ.

Как включить uefi в биосе

Обратите внимание на то, поддерживает ли ваша операционная система загрузку UEFI. Данный режим был добавлен в версии Windows с 8 по 11, установленные на носители с таблицами разделов GPT. На более старых Виндовс, а также в MBR-разметке, через UEFI запуститься не получится.

Текстовые интерфейсы БИОС

Как включить uefi в биосе -1

Чтобы активировать UEFI в БИОС, достаточно переключить определённые параметры. В зависимости от модели материнской платы и версии прошивки они могут разниться. В одних интерфейсах достаточно просто включить UEFI-загрузчик, в других придётся поменять опцию безопасности «Secure Boot».

Также отметим: иногда настройка «Secure Boot» не активна, пока пользователь не установит пароль администратора на сам базовый интерфейс. В таком случае вам следует найти пункт «Administrator password» и задать пароль.

Кроме того, учтите, что многие старые БИОС не поддерживают данный режим. Однако большинство из них можно обновить до версии, в которой производитель добавил эту функцию. В таком случае переключение в UEFI-режим будет возможно благодаря одному из подразделов, в котором находится соответствующий параметр.

Как включить uefi в биосе -8

Переключить загрузку иногда можно в разделе расширенных настроек. Перейдя на вкладку «Advanced», вам следует выбрать «Boot Option filter» и установить его в положение «UEFI only».

В подавляющем большинстве для активации UEFI потребуется изменить функцию безопасности. Обычно она находится на вкладке «Security» в разделе «Boot Secure». Чтобы её включить:

  1. Перейдите в упомянутую вкладку и зайдите в раздел «Secure Boot». Далее измените опцию «Secure Boot Control» из положения «Disabled» в «Enabled».

Как включить uefi в биосе -5

Как включить uefi в биосе -6

Как включить uefi в биосе -7

Графический интерфейс UEFI

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

У MSI существует ряд версий, интерфейс которых сильно отличается от стандартного меню. Перейдя в расширенные настройки, вы увидите шесть панелей-кнопок, каждая из которых открывает те или иные параметры компьютера. Для активации UEFI вас интересует список инструментов БИОС, поэтому:

Как включить uefi в биосе -10

Как включить uefi в биосе -11

Как включить uefi в биосе -12

Gigabyte

Как включить uefi в биосе -13

Включение UEFI в интерфейсах от Gigabyte производится на вкладке «BIOS Features», а в некоторых версиях вкладка называется просто «BIOS». Здесь вам следует переключить режим безопасности «Secure Boot Mode» в положение «Standard». Затем включите непосредственно сами настройки безопасности «Secure Boot», переведя их значение в «Enabled».

В современных ASUS процедура производится прямо как в старых версиях этих материнских плат. Вам следует открыть расширенный режим безопасности и найти переключатель, для этого:

    Перейдите в «Advanced Mode», откройте вкладку «Boot» и выберите параметры «Secure Boot».

Как включить uefi в биосе -16

Как включить uefi в биосе -17

Другие графические оболочки

Как включить uefi в биосе -14

Почти все остальные графические интерфейсы размещают настройки включения UEFI-загрузки в подразделе «Security». На этой вкладке вам следует отыскать опцию «Secure Boot» и активировать её соответствующим переключателем.

Кроме того, проверьте вкладку «Boot» на наличие включенных режимов Legacy и UEFI. Деактивировать первый можно по желанию, второй же активируется в обязательном порядке.

Закрыть

Мы рады, что смогли помочь Вам в решении проблемы.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Закрыть

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Читайте также: