Часть 2, настройка GRUB2.
И так, после того как мы сконфигурировали загрузчик Grub4Dos, в первой части данного материала, перейдем к загрузчику GRUB2.
Первое что необходимо сказать о данном загрузчике, EFI версия GRUB2 отличается от BIOS версии. GRUB2 EFI построен на 64/32 битной архитектуре, и загрузка некоторых элементов в нем невозможна. То есть, запустить Grub4Dos из GRUB2 EFI не удастся, так же, как и не удастся использовать MEMDISK из загрузчика SYSLINUX. Кроме того, EFI версия загрузчика не поддерживает загрузку MBR дисков. Хотя, в BIOS версии GRUB2 это все сделать можно.
О поддержке ISO файлов в GRUB2. Подключать их можно только монтированием, для просмотра и последующей загрузки его содержимого. Нет возможности загрузить ISO образ целиком в память, или загрузить его с первого сектора, как, к примеру, это умеет делать Grub4Dos.
Напомню, содержимое флешки представленное в первой части статьи:
1. Hiren's BootCD
2. Super Grub2 Disk
3. Rescatux
4. SystemRescueCd
5. Ultimate Boot CD
6. Dr.Web LiveDisk
В виду указанных выше особенностей загрузчика GRUB2 в EFI исполнении, не удалось загрузить следующие LiveCD:
Hiren's BootCD - не удалось запустить вообще. В GRUB2 EFI отсутствует команда ntldr.
Dr.Web LiveDisk - Запуск данного диска возможен при распаковке содержимого образа диска, в корень раздела флешки, но только для файловой системы FAT32. Мы используем NTFS, поэтому запуск данного LiveCD не удался.
Ultimate Boot CD - из набора программ данного диска, удалось запустить только PartedMagic. Остальные приложения отказались грузиться, так как представляли собой образы дисков.
Перейдем к конфигурационному файлу загрузчика GRUB2. Открываем файл grub.cfg в любимом текстовом редакторе (рекомендую Notepad++), так же удаляем его содержимое и вставляем следующий код.
В меню добавлен MemTest86 от PassMark. Для работоспособности соответствующего пункта, скачайте файл memtest.efi и скопируйте его в папку ISO.
Проверим полученный результат в виртуальной машине. Для этого воспользуемся VirtualBox'ом. О том, как загрузиться c флешки в VirtualBox читаем здесь.
И так, после того как мы сконфигурировали загрузчик Grub4Dos, в первой части данного материала, перейдем к загрузчику GRUB2.
Первое что необходимо сказать о данном загрузчике, EFI версия GRUB2 отличается от BIOS версии. GRUB2 EFI построен на 64/32 битной архитектуре, и загрузка некоторых элементов в нем невозможна. То есть, запустить Grub4Dos из GRUB2 EFI не удастся, так же, как и не удастся использовать MEMDISK из загрузчика SYSLINUX. Кроме того, EFI версия загрузчика не поддерживает загрузку MBR дисков. Хотя, в BIOS версии GRUB2 это все сделать можно.
О поддержке ISO файлов в GRUB2. Подключать их можно только монтированием, для просмотра и последующей загрузки его содержимого. Нет возможности загрузить ISO образ целиком в память, или загрузить его с первого сектора, как, к примеру, это умеет делать Grub4Dos.
Напомню, содержимое флешки представленное в первой части статьи:
1. Hiren's BootCD
2. Super Grub2 Disk
3. Rescatux
4. SystemRescueCd
5. Ultimate Boot CD
6. Dr.Web LiveDisk
В виду указанных выше особенностей загрузчика GRUB2 в EFI исполнении, не удалось загрузить следующие LiveCD:
Hiren's BootCD - не удалось запустить вообще. В GRUB2 EFI отсутствует команда ntldr.
Dr.Web LiveDisk - Запуск данного диска возможен при распаковке содержимого образа диска, в корень раздела флешки, но только для файловой системы FAT32. Мы используем NTFS, поэтому запуск данного LiveCD не удался.
Ultimate Boot CD - из набора программ данного диска, удалось запустить только PartedMagic. Остальные приложения отказались грузиться, так как представляли собой образы дисков.
Перейдем к конфигурационному файлу загрузчика GRUB2. Открываем файл grub.cfg в любимом текстовом редакторе (рекомендую Notepad++), так же удаляем его содержимое и вставляем следующий код.
grub.cfg (кликните на кнопку "Copy" для копирования)
insmod part_gpt
insmod part_msdos
insmod efi_gop
insmod efi_uga
insmod gfxterm
insmod loopback
insmod all_video
insmod gzio
insmod ext2
insmod fat
insmod iso9660
insmod ntfs
loadfont "${prefix}/fonts/unicode.pf2"
GRUB_GFXMODE=1024x768
gfxmode=1024x768
if terminal_output --append gfxterm
then
terminal_output --remove console
fi
color_normal=black/black
menu_color_normal=white/cyan
menu_color_highlight=yellow/light-magenta
background_color gray
set timeout=60
set default=0
set pager=1
echo -e "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
echo "http://www.BootDev.ru/"
echo -n "Загрузка... "
sleep --interruptible -v 5
menuentry "(1) SystemRescueCd" --hotkey="1" {
loopback loop /ISO/systemrescuecd-x86-4.7.1.iso
linux (loop)/isolinux/rescue32 isoloop=/ISO/systemrescuecd-x86-4.7.1.iso setkmap=us docache dostartx
initrd (loop)/isolinux/initram.igz
}
menuentry "(2) PartetMagic из образа Ultimate Boot CD" --hotkey="2" {
loopback loop /ISO/ubcd535.iso
linux (loop)/pmagic/bzImage edd=on vga=normal vmalloc=384MiB iso_filename=/ISO/ubcd535.iso
initrd (loop)/pmagic/initrd.img
}
menuentry "(3) Rescatux" --hotkey="3" {
loopback loop /ISO/rescatux-0.40b5.iso
linux (loop)/live/vmlinuz1 boot=live config boot=live config quiet splash selinux=1 security=selinux enforcing=0 locales=en_US.UTF-8 boot=live config quiet splash selinux=1 security=selinux enforcing=0 locales=en_US.UTF-8 findiso=/ISO/rescatux-0.40b5.iso
initrd (loop)/live/initrd1.img
}
menuentry "(4) Super Grub2 Disk - BIOS функции не работают!" --hotkey="4" {
loopback loop /ISO/super_grub2_disk_hybrid_2.02s2-beta1.iso
set root=(loop)
set prefix=(loop)/boot/grub/
configfile /boot/grub/grub.cfg
}
menuentry "(5) MemTest86 от PassMark" --hotkey="5" {
chainloader /ISO/memtest.efi
boot
}
menuentry "" {
echo " "
}
menuentry "(F1) Инфо о дисках системы и текущем видео режиме" --hotkey="f1" {
echo " www.BootDev.ru"
echo ""
echo "[---------------- Информация о дисках системы ----------------]"
ls -l
echo "[---------------- Информация о видео режимах ----------------]"
videoinfo
echo ""
echo "Нажмите клавишу ESC для возврата в главное меню..."
sleep --interruptible 9999
}
menuentry "" {
echo " "
}
menuentry "(r) Перезагрузить компьютер" --hotkey="r" {
reboot
}
menuentry "(h) Выключить компьютер" --hotkey="r" {
halt
}
В меню добавлен MemTest86 от PassMark. Для работоспособности соответствующего пункта, скачайте файл memtest.efi и скопируйте его в папку ISO.
Проверим полученный результат в виртуальной машине. Для этого воспользуемся VirtualBox'ом. О том, как загрузиться c флешки в VirtualBox читаем здесь.
Комментариев нет :
Отправить комментарий