В далеком 2003-м году еще во времена первого «груба» один предприимчивый китаец с никнеймом Tinybit сделал форк с названием grub4dos — с целью адаптировать изначально линуксовый загрузчик для работы в среде MS-DOS. Одним MS-DOS дело не ограничилось, загрузчик прекрасно загружал системы под управлением Windows, а поддержка им NTFS и возможность загрузки из ISO-образов сделали grub4dos моим верным спутником на долгие годы для организации мультизагрузки на системах BIOS\MBR. Но шло время и UEFI потеснил BIOS, для линуксов с нуля был написан GRUB 2 и, казалось бы, для grub4dos наступил закат. К счастью (или к сожалению) мне не по нраву мигрировать на другие продукты только лишь потому, что «ну, пришло время обновиться», а это значит, что grub4dos наносит ответный удар.
На смену одному китайцу пришел следующий — на этот раз с никнеймом chenall. Подхватив эстафету разработки он выпускает форк уже самого grub4dos для систем под управлением UEFI. Вышло настолько хорошо, что конфигурации загрузки (которые по прежнему находятся в menu.lst) пришлось либо совершенно незначательно модифицировать, либо вообще оставить без каких-либо изменений. Вот это я понимаю — преемственность и обратная совместимость! Смотрите сами:
title Windows 10
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
Как можно заметить, концепт передачи управления другому загрузчику «по цепочке» не претерпел изменений. С условным отображением пунктов загрузочного меню тоже все в порядке:
iftitle [if %@uefi%==64 if exist (hd0,0)/EFI/Memtest86.efi] Memtest86+
chainloader /EFI/Misc/Memtest86.efi
Здесь опытный читатель заметит нововведение относительно «проверки на UEFI». Загрузка из ISO никуда не делась:
title AOMEI Partition Assistant v10.8.2
savedefault
rootnoverify (hd0,1)
set ISO=/ISO/AOMEI/PartAssist.iso
find —set-root —ignore-floppies %ISO%
map —read-only %ISO% (hd32) || map —mem %ISO% (hd32)
chainloader (hd32)
boot
А с помощью плагинов можно грузиться и напрямую из WIM-образа:
title Boot from WIM
savedefault
set WIM=(hd0,0)/EFI/Microsoft/Win10PE.wim
find /EFI/Grub/Ext/ntboot | set bd=
%bd%/EFI/Grub/Ext/ntboot %WIM%
boot
Acronis на базе Linux запускается без всяких проблем:
title Acronis Disk Director 12.5.163 Server
kernel (hd0,0)/EFI/Acronis/DiskDirector/kernel vga=791 mbrcrcs=on force_modules=usbhid quiet lang=RU_ru quiet
initrd (hd0,0)/EFI/Acronis/DiskDirector/initrd (hd0,0)/EFI/Acronis/DiskDirector/server.dat
Таким образом для тех, кто ранее пользовался grub4dos на системах BIOS, миграция на UEFI становится практически безболезненной.
