1. Перед установкой и настройкой ОС создать на НЖМД таблицу разделов в формате GPT. Поскольку в составе инсталлятора ОС такие утилиты отсутствуют, рекомендуется создавать таблицу с использованием Live CD Parted Magic версии >= 6.6. На нем присутствуют графическая утилита gparted и консольная утилита gdisk, позволяющие выполнить указанные действия. Первой должна быть создана ESP. Размер ESP должен быть приблизительно равен 100 МБ. Отформатировать ESP необходимо в ФС FAT.
Примечание
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 не подойдут, поскольку собраны с использованием библиотек, отсутствующих в ОС), либо собрать самостоятельно из открытых исходных кодов. Должны быть следующие пакеты:
3. Установка ОС проводится в штатном режиме в соответствии с эксплуатационной документацией, за исключением установки загрузчика. Загрузчик не устанавливать;
4. После завершения установки ОС необходимо перезагрузить ПЭВМ и вновь загрузиться с установочного диска ОС в режиме «Восстановление». В режиме восстановления в окне «Войти в режим восстановления» выбрать раздел, на который была установлена ОС, а затем выбрать «Запуск оболочки в /dev/наименование_раздела». Нажать <Alt+F2> и в консоли выполнить команду:
chroot /target
5. Выполнить команду, чтобы убедиться, что не установлены пакеты GRUB, кроме fly-admin-grubeditor
:
dpkg -l | grep grub
Если какие-то пакеты все же установлены, необходимо их удалить командой:
6. Монтировать раздел с данными USB-накопителя и установить с него все deb пакеты GRUB2. Возможно для этого придется предварительно установить пакеты
gettext
и efibootmgr
с установочного диска ОС.
7. Создать в корне ФС директорию boot_EFI, монтировать к ней раздел ESP и создать на ней следующую структуру директорий:
Примечание
/EFI/grub
;8. Выполнить команду:
В результате выполнения указанной команды в директории /boot_EFI/EFI/grub/
должны появиться модули grub2;
9. Выполнить команду:
В результате выполнения указанной команды в директории /boot_EFI/EFI/grub/
будет создан файл grub.efi
, собранный с поддержкой необходимых модулей.
Примечание
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/
, то необходимо указать корректный путь к нему. Выполнить следующую команду:
На некоторых 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
.
Примечание
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, выполнить:
где GRUB Boot Manager — название записи, как она будет выглядеть в BIOS, -d /dev/sda
— диск, на котором расположен ESP-раздел, -p 1
— номер ESP-раздела (нумерация начинается с 1), -l \\EFI\\grub\\grub.efi
— путь к файлу grub.efi относительно корня ESP-раздела. Путь обязательно указывается через \\
. Для добавления записи, вызывающей загрузчик Windows 7, выполнить:
В случае неправильного добавления записи ее необходимо удалить следующим образом:
– выполнить команду efibootmgr -v и посмотреть номер записи (например, Boot0004*);
– удалить неправильную запись командой:
15. Перезагрузить ПЭВМ, зайти в BIOS и установить в меню загрузки первым пунктом «GRUB Boot Manager».