[Цитировать]

    asteroid7
  • 27330
  • Стаж: 3 года
  • Сообщений: 26
  • Репутация:3

    [+] [-]
100030asteroid7, спасибо, а как успел добавить в DBF? aa
Скачиваем крайнюю версию grub4dos-for_UEFI-2023-03-29.7z
На разделе первом разделе флешки FAT32 (сделанной с помощью DBF.exe от Ander_73) в папке \efi\boot\ переименовал файл bootx64.efi (чтобы не мешался)
Взял из архива grub4dos-for_UEFI-2023-03-29.7z два файла: BOOTX64.EFI, BOOTIA32.EFI
Скопировал их в эту же папку (\efi\boot\ на разделе FAT32).
Расположил файл menu.lst в папке efi/grub/
Там же, рядом с menu.lst, разместил картинку и шрифты, это файл splashimage.jpg и папка font.
Файлы menu.lst, splashimage.jpg и папку font (это поддерживает кириллицу) взял из архива efi.7z предоставленного BalAngel, ссылка на скачивание в конце его поста. За что ему спасибо!
На разделе FAT32, в файле menu_efi.lst сделал запись:
menuentry "grub4dos-for-EFI" {
search --no-floppy --file --set /efi/boot/BOOTX64.EFI
chainloader /efi/boot/BOOTX64.EFI
}
Ниже пример загрузки образа .iso
В корне раздела положил файл Win10_11_PE_x64(EFI)_2022(NVME).iso (от Xemom1)
В файле efi/grub/menu.lst сделал запись:
title Загрузка Win10_11_PE_x64(EFI)_2022(NVME)
find --set-root /Win10_11_PE_x64(EFI)_2022(NVME).iso
map /Win10_11_PE_x64(EFI)_2022(NVME).iso (0xff)
chainloader (0xff)


Последний раз редактировалось: asteroid7 (2023-04-09 15:53), всего редактировалось 2 раз(а)

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 1 месяц
  • Сообщений: 3586
  • Репутация:127

    [+] [-]
100031На разделе FAT32, в файле menu_efi.lst сделал запись
Интересно, зачем? Вышеприведённые манипуляции просто убили DBF и теперь в UEFI будет сразу грузиться G4D_UEFI.

[Цитировать]

    asteroid7
  • 27330
  • Стаж: 3 года
  • Сообщений: 26
  • Репутация:3

    [+] [-]
100033
100031На разделе FAT32, в файле menu_efi.lst сделал запись
Интересно, зачем? Вышеприведённые манипуляции просто убили DBF и теперь в UEFI будет сразу грузиться G4D_UEFI.
Не совсем так. При загрузке у меня появляется меню GRUB2 и далее, если я выбрал пункт "grub4dos-for-EFI", жму Enter и происходит переход на меню G4D_UEFI. Проверено на двух ноутбуках, доступных мне с UEFI.
И что интересно, при проверке загрузки этой флешки с помощью эмулятора QEMU - всё получается именно так, как Вы утверждаете, появляется сразу именно меню G4D_UEFI !!!
Но меня мало волнует, что там QEMU отображает, интересен результат реальной загрузки.
В чём же здесь "убийство" DBF? По-Вашему, как правильнее сделать переход на G4D_UEFI?

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 1 месяц
  • Сообщений: 3586
  • Репутация:127

    [+] [-]
100039По-Вашему, как правильнее сделать переход на G4D_UEFI?
1. На разделе ФАТ32 создать папку \efi\grub
2. Положить в неё файлы: BOOTX64.EFI из архива grub4dos-for_UEFI-2023-03-29.7z и menu.lst
3. В файл menu_efi.lst добавить меню:
menuentry "Grub4DOS UEFI" {
search --file --set /boot/dbfat32.ptn
chainloader /efi/grub/BOOTX64.EFI
}

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 1 месяц
  • Сообщений: 3586
  • Репутация:127

    [+] [-]
Наконец пофиксили совершенно дурацкую ошибку с длинным путём в configfile
(ну, как длинным, например configfile /program/linux/kaspersky/menu.lst уже зависал).
---
Вообще, единственное применение данному загрузчику вижу только в маппировании как раздел (partnew). Всё остальное умеет и GRUB2 + имеет валидную ЦП для секуре-бут.

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 1 месяц
  • Сообщений: 3586
  • Репутация:127

    [+] [-]
Пример баловства с сабжем.
У меня валяется неприкаянный ИСО-шник GreenLinux (как-бы отечественный клон LinuxMint)
Вот как запустить сие:
title GreenLinux
set iso=/linux/greenlinux-21.1-cinnamon-64bit.iso
find --set-root %iso%
partnew (%@root:~1,3%,3) 0 %iso%
map %iso% (0xff)
errorcheck off
chainloader (0xff) || kernel (0xff)/casper/vmlinuz file=/cdrom/preseed/linuxmint.seed boot=casper locale=ru_RU bootkbd=us,ru console-setup/layoutcode=us,ru &; initrd (0xff)/casper/initrd.gz
Последняя строка требует пояснения. Мега-фича сабжа - запуск ИСО-шника "как есть". Но срабатывает не везде (у меня есть ноут, где вылетает ошибка virtual drive). Поэтому добавляем условие, что при НЕ-срабатывании запускаем связку kernel+initrd из ИСО-шника (тут надо руками прописывать ключи, которые берем из конфигов груб2/суслик внутри ИСО-шника).


Последний раз редактировалось: Ander_73 (2023-07-06 12:40), всего редактировалось 1 раз

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 1 месяц
  • Сообщений: 3586
  • Репутация:127

    [+] [-]
... в продолжение предыдущей мессаги.
Как сформировать строчку запуска kernel+initrd для произвольного ИСО-шника? Рассмотрим на примере LiveCD DrWEB.
1. Открываем drweb-livedisk-900-cd.iso и ищем файл \boot\grub\grub.cfg (стандартное расположение конфига GRUB2)
2. В конфиге ищем нужный нам пункт меню menuentry:

3. Подставляем строки linux --> kernel (0xff) и initrd --> initrd (0xff)
Получаем в итоге:
chainloader (0xff) || kernel (0xff)/casper/vmlinuz boot=casper union=aufs (... и т.д.) &; initrd (0xff)/casper/initrd.lz

Добавлено через 1 час 5 минут 49 секунд:
В ходе прогонов DrWEB вылетает ошибка: Kernel first ...
Команда errorcheck off решает проблему. Пост с меню запуска подправлен.

Страница 4 из 4


Показать сообщения:    

Текущее время: 29-Мар 14:26

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы