Astra linux uefi bios

Установка и настройка ОС на ПЭВМ с (U)EFI BIOS. Использование (U)EFI-загрузчика

1. Перед установкой и настройкой ОС создать на НЖМД таблицу разделов в формате GPT. Поскольку в составе инсталлятора ОС такие утилиты отсутствуют, рекомендуется создавать таблицу с использованием Live CD Parted Magic версии >= 6.6. На нем присутствуют графическая утилита gparted и консольная утилита gdisk, позволяющие выполнить указанные действия. Первой должна быть создана ESP. Размер ESP должен быть приблизительно равен 100 МБ. Отформатировать ESP необходимо в ФС FAT.

П р и м е ч а н и е. В случае, если на ПЭВМ сначала устанавливается ОС Windows 7 с загрузчиком (U)EFI, предварительно создавать раздел ESP нет необходимости, т. к. инсталлятор Windows 7 создаст такой раздел автоматически;

2. Создать USB-накопитель, загружаемый через (U)EFI BIOS. Для этого удалить на USB-накопителе существующую таблицу разделов, создать новый раздел размером приблизительно 100 МБ, установить ему код ef (ESP), отформатировать созданный раздел в ФС FAT, монтировать и создать на нем следующую структуру директорий:

В директорию /EFI/Boot поместить файл bootx64.efi. Файл bootx64.efi предварительно скачать из открытых источников в сети Интернет либо создать при помощи EDK. Оставшееся на USB-накопителе свободное пространство отформатировать в любой необходимой ФС (FAT, FAT32, EXT, NTFS) и использовать для хранения данных.

На этот раздел необходимо скопировать deb-пакеты GRUB2 версии >=1.99-8. Их можно взять либо в открытых репозиториях debian (из Ubuntu не подойдут, поскольку собраны с использованием библиотек, отсутствующих в ОС), либо собрать самостоятельно из открытых исходных кодов. Должны быть следующие пакеты:

grub-common, grub2-common, grub-efi-amd64-bin, grub-efi-amd64;

3. Установка ОС проводится в штатном режиме в соответствии с эксплуатационной документацией, за исключением установки загрузчика. Загрузчик не устанавливать;

4. После завершения установки ОС необходимо перезагрузить ПЭВМ и вновь загрузиться с установочного диска ОС в режиме «Восстановление». В режиме восстановления в окне «Войти в режим восстановления» выбрать раздел, на который была установлена ОС, а затем выбрать «Запуск оболочки в /dev/наименование_раздела». Нажать и в консоли выполнить команду:

5. Выполнить команду, чтобы убедиться, что не установлены пакеты GRUB, кроме fly-admin-grubeditor:

Если какие-то пакеты все же установлены, необходимо их удалить командой:

6. Монтировать раздел с данными USB-накопителя и установить с него все deb пакеты GRUB2. Возможно для этого придется предварительно установить пакеты

gettext и efibootmgr с установочного диска ОС.

7. Создать в корне ФС директорию boot_EFI, монтировать к ней раздел ESP и создать на ней следующую структуру директорий:

Читайте также:  Обновление антивирусных баз dr web linux

П р и м е ч а н и е. Если на ПЭВМ предварительно была установлена ОС Windows 7 с загрузчиком (U)EFI, то создавать на разделе ESP всю структуру директорий нет необходимости, т. к. инсталлятор Windows 7 создал ее в процессе установки. Необходимо только создать директорию /EFI/grub;

В результате выполнения указанной команды в директории /boot_EFI/EFI/grub/ должны появиться модули grub2;

grub-mkimage -o /boot_EFI/EFI/grub/grub.efi -p /EFI/grub -O x86_64-efi acpi ata ata_pthru bitmap bitmap_scale boot cat chain cmp configfile cpio date datetime echo efi_gop elf ext2 extcmd fat fixvideo font fshelp gettext gfxmenu gfxterm gptsync gzio halt help hfs hfsplus jpeg keylayouts keystatus linux loadbios loadenv ls lspci mmap msdospart multiboot2 multiboot normal part_gpt part_msdos parttool png probe read reboot regexp search_fs_file search_fs_uuid search_label search serial terminal terminfo true uhci usb_keyboard usb usbms usbserial_common video_fb videoinfo video

В результате выполнения указанной команды в директории /boot_EFI/EFI/grub/ будет создан файл grub.efi, собранный с поддержкой необходимых модулей.

П р и м е ч а н и е. В данной команде приведен примерный список модулей. При необходимости можно собирать grub.efi с другими модулями, но нельзя использовать модуль at_keyboard, т. к. он может привести к зависанию загрузчика GRUB2;

10. Создать конфигурационный файл grub.cfg. Если на ПЭВМ предварительно была установлена ОС Windows 7 с загрузчиком (U)EFI и необходимо добавить

GRUB2 возможность загружать Windows 7, то в файл /etc/grub.d/40_custom необходимо добавить следующие записи:

menuentry «Windows 7 x86_64 UEFI-GPT» <
search —file —no-floppy —set=root /EFI/Microsoft/Boot/BOOTMGFW.EFI
chainloader /EFI/Microsoft/Boot/BOOTMGFW.EFI
>

В случае, если расположение файла BOOTMGFW.EFI на ESP-разделе отличается от /EFI/Microsoft/Boot/, то необходимо указать корректный путь к нему. Выполнить следующую команду:

grub-mkconfig -o /boot_EFI/EFI/grub/grub.cfg

На некоторых BIOS при перезагрузке ОС возможно некорректное поведение ядра. Для устранения этой проблемы необходимо в файл grub.cfg добавить параметр reboot=a,w в menuentry ’Astra GNU/Linux, with Linux -generic’ и menuentry ’Astra GNU/Linux, with Linux -generic (режим восстановления)’ в секции linux /boot/vmlinuz-generic после параметра root=UUID=номер_UUID .

На некоторых BIOS при загрузке ОС возможно «зависание» ядра. Для устранения этой проблемы необходимо в файл grub.cfg добавить параметр noefi в menuentry ’Astra GNU/Linux, with Linux -generic’ и menuentry ’Astra GNU/Linux, with Linux -generic (режим восстановления)’ в секции linux /boot/vmlinuz-generic после параметра root=UUID=номер_UUID ;

11. Для соответствия спецификации EFI, а также для обеспечения возможности загрузки ОС средствами АПМДЗ необходимо скопировать файл

/boot_EFI/EFI/grub/grub.efi в директорию /boot_EFI/EFI/Boot и переименовать его в bootx64.efi .

П р и м е ч а н и е. Если на ПЭВМ предварительно была установлена ОС Windows 7 с загрузчиком (U)EFI, то файл bootx64.efi уже существует. Рекомендуется переименовать его, например в bootx64_bak.efi;

Читайте также:  Сколько процентов пользуется линуксом

12. Все подготовительные действия по настройке GRUB2 завершены. Размонтировать ESP-раздел, выйти из оболочки chroot-окружения командой exit и перезагрузить ПЭВМ. Загрузить ПЭВМ с предварительно подготовленного USB-накопителя;

13. Если USB-накопитель подготовлен правильно, то при загрузке с него произойдет запуск UEFI Shell. На экране монитора будет отображена карта разделов. Как

правило, первым разделом fs0 будет указан ESP-раздел. Для перехода на него выполнить команду:

Затем при помощи команды cd перейти в директорию \EFI\grub и запустить на исполнение grub.efi. Если все предыдущие действия выполнены корректно, то появится окно загрузчика GRUB2, в котором выбрать пункт меню ’Astra GNU/Linux, with Linux -generic’ и выполнить загрузку ОС.

П р и м е ч а н и е. Если на ПЭВМ предварительно была установлена ОС Windows 7 с загрузчиком (U)EFI и в GRUB2 добавлена возможность загружать Windows 7, то в меню GRUB2 появится пункт «Windows 7 x86_64 UEFI-GPT», при выборе которого должна произойти загрузка Windows 7;

14. После загрузки ОС убедиться, что ядро загружено с поддержкой EFI-расширений путем проверки наличия директории /sys/firmware/efi. Теперь осталось передать менеджеру загрузки EFI информацию о загружаемых ОС. Для этого использовать утилиту efibootmgr, входящую в состав ОС. Для просмотра существующего порядка загрузки необходимо выполнить команду:

Для добавления записи, вызывающей загрузчик GRUB2, выполнить:

efibootmgr -L «GRUB Boot Manager» -d /dev/sda -p 1 -l \\EFI\\grub\\grub.efi -c -v

где GRUB Boot Manager — название записи, как она будет выглядеть в BIOS, -d /dev/sda — диск, на котором расположен ESP-раздел, -p 1 — номер ESP-раздела (нумерация начинается с 1), -l \\EFI\\grub\\grub.efi — путь к файлу grub.efi относительно корня ESP-раздела. Путь обязательно указывается через \\ . Для добавления записи, вызывающей загрузчик Windows 7, выполнить:

efibootmgr -L «Windows Boot Manager» -d /dev/sda -p 1 -l \\EFI\\Microsoft\\Boot\\BOOTMGFW.EFI -c -v

В случае неправильного добавления записи ее необходимо удалить следующим образом:

– выполнить команду efibootmgr -v и посмотреть номер записи (например, Boot0004*);
– удалить неправильную запись командой:

15. Перезагрузить ПЭВМ, зайти в BIOS и установить в меню загрузки первым пунктом «GRUB Boot Manager».

Источник

Установка Astra Linux на машину с поддержкой UEFI

При установке Astra Linux на машину, поддерживающую загрузку UEFI, установщик автоматически определяет наличие UEFI и автоматически создает и настраивает нужный загрузочный раздел. При этом:

  • Дисковый раздел для UEFI-загрузки автоматически монтируется в каталог /boot/efi;
  • Для загрузки используется UEFI-вариант штатного загрузчика grub2;
  • Образ загрузчика размещается в файле /boot/efi/EFI/astralinuxse/grubx64.efi;

При необходимости загрузочный раздел UEFI можно создать при установке ОС вручную.

Проверка параметров загрузки

Для проверки параметров загрузки можно использовать команду efibootmgr. Пример вывода команды при настроенной по умолчанию UEFI-загрузке:

Читайте также:  Recovery mode linux ubuntu

sudo efibootmgr
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0004,0000,0001,0002,0003
Boot0000* UiApp
Boot0001* UEFI VBOX CD-ROM VB2-01700376
Boot0002* UEFI VBOX HARDDISK VBca27e834-16bf61c9
Boot0003* EFI Internal Shell
Boot0004* astralinuxse

Настройка UEFI-загрузки без использования загрузчика grub2

Для создания загрузочной записи, не использующей grub2, нужно скопировать загружаемые образы (файлы /vmlinuz и /initrd.img) на дисковый раздел UEFI, и указать параметры загрузки. Возможный сценарий создания записи:

#!/bin/bash sudo mkdir /boot/efi/EFI/astralinuxefi sudo cp /vmlinuz /boot/efi/EFI/astralinuxefi sudo cp /initrd.img /boot/efi/EFI/astralinuxefi export UUID=$(sudo blkid -s UUID -o value /dev/sda2) sudo efibootmgr -c -g -L "astralinuxefi" -l '\EFI\astralinuxefi\vmlinuz' -u "root=UUID=$UUID rw quiet rootfstype=ext4 add_efi_memmap initrd=\\EFI\\astralinuxefi\\initrd.img"

Сценарий предполагает, что ОС установлена на дисковый раздел /dev/sda2. Сценарий создает каталог /boot/efi/EFI/astralinuxefi, копирует в этот каталог загружаемые образы, и с помощью команды efibootmgr создает загрузочнуй запись с нужными параметрами.
Если в качестве загрузочного диска используется диск, отличный от /dev/sda (например, /dev/vda в системе виртуализации QEMU), следует явно указать диск с помощью опции -d:

После выполнения указанных действий вывод команды efibootmgr покажет наличие нового варианта загрузки (запись Boot0005):

sudo efibootmgr
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0005,0004,0000,0001,0002,0003
Boot0000* UiApp
Boot0001* UEFI VBOX CD-ROM VB2-01700376
Boot0002* UEFI VBOX HARDDISK VBca27e834-16bf61c9
Boot0003* EFI Internal Shell
Boot0004* astralinuxse
Boot0005* astralinuxefi

И после перезагрузки система будет загружена с использованием новой загрузочной записи (параметр BootCurrent в первой строке имеет значение 0005):

sudo efibootmgr
BootCurrent: 0005
Timeout: 0 seconds
BootOrder: 0005,0004,0000,0001,0002,0003
Boot0000* UiApp
Boot0001* UEFI VBOX CD-ROM VB2-01700376
Boot0002* UEFI VBOX HARDDISK VBca27e834-16bf61c9
Boot0003* EFI Internal Shell
Boot0004* astralinuxse
Boot0005* astralinuxefi

Проверка загрузки UEFI

Для того, чтобы после перезагрузки ОС убедиться, что ОС действительно загружена с UEFI, помимо использования команды efibootmgr, можно проверить существование каталога /sys/firmware/efi, создающегося автоматически при загрузке UEFI. Выполнить такую проверку можно, например командой просмотра содержимого каталога:

Управление параметрами загрузки UEFI

Для проверки и настройки параметров загрузки UEFI можно использовать инструмент командной строки efibootmgr (требуются права суперпользователя). Справка по применению инструмента доступна в справочной системе man:

Virtual Machine Manager

При создании виртальной машины после этапа создания виртуального диска установить отметку в чек-боксе «Настроить конфигурацию перед установкой», после чего нажать кнопку «Завершить».

В открывшемся окне настроек в пункте «Firmware» выбрать вариант встроенного ПО для UEFI-загрузки. Название варианта может отличаться в различных версиях виртуализации, в общем случае не следует выбирать варианты «.ms» и «secureboot». При написании этой статьи использовался вариант встроенного ПО «UEFI x84_64 /usr/share/OVMF/OVMF_CODE_4m.fd».

Нажать кнопку «Применить» и кнопку «Начать установку».

Oracle VirtualBox

При использовании Oracle VM VirtualBox Менеджер: «Настроить» — «Система» — «Материнская плата» — установить отметку в чек-боксе «Включить EFI (только специальные ОС)».

Источник

Оцените статью
Adblock
detector