Grub4dos
Grub4dos — это специальная версия загрузчика операционных сред Grub для использования в DOS и Windows системах. Grub4dos умеет загружаться с жёсткого диска, USB-флешек и CD/DVD дисков, а также выступать в качестве PXE-загрузчика.
Установка править
Запись на флэшку из под linux править
Нам потребуется чистая флэшка.
Вместо /dev/sdb подставляем путь до флэшки если он отличается.
Сначала отформатируте её командой:
mkfs.vfat /dev/sdb
Теперь необходимо создать раздел при помощи утилиты fdisk:
fdisk -l
Эта команда выдаст список устройств с разделами. Находим там нашу флэшку и вводим:
fdisk /dev/sdb
- Введите n
- Введите p чтобы создать основной раздел
- Нажмите 2 раза Enter
- Нажмите t
- Введите b
- Введите w
Важно: не создавайте на разделе флаг bootable иначе grub4dos не будет работать.
Теперь скачиваем grub4dos.
Монтируем флэшку в /mnt:
mount /dev/sdb /mnt
Распаковываем архив и заходим в распакованную папку. Теперь нужно записать образ загрузчика на флэшку пропустив 512 байт:
dd if=grldr.mbr of=/dev/sdb bs=446 count=1 dd if=grldr.mbr of=/dev/sdb seek=512 skip=512 bs=1
Копируем файлы grldr и menu.lst в корень флэшки.
Размонтируем флэшку:
umount /dev/sdb
Перезагружаемся и пробуем загрузится с флэшки.
Запись на флэшку из под windows править
Для начала отформатируйте флэшку программой HPUSBFW в формате fat32.
Скачайте grub4dos-gui.
Распаковуйте архив и запустите программу. Теперь нажмите кнопку обзор и выберите подключенную флэшку.
После этого программа Grub4Dos Installer установится по пути C:\Program Files создаст ярлык на рабочем столе. В вашу флэшку распакуются файлы загрузчика (папка — boot; файлы — grldr, menu.lst) и откроется Grub4Dos Installer.
В первом списке выбираем флэшку на которую хотим поставить grub4dos.
Нажимаем кнопку Install.
Если всё получилось то вы увидите консоль с предложением нажать Enter. Нажимаем Enter.
Перезагружаем компьютер и загружаемся с флэшки.
Настройка menu.lst править
Фоновая картинка править
Настройка править
Напишите в ваш lst файл
splashimage (hd0,0)/images/image.xpm
(hd0,0) замените на нужный вам диск, список можно посмотреть командой find.
/images/image.xpm замените на путь к вашей картинке на диске
Создание фоновых картинок править
Создать картинку можно в программе gimp.
Для grub4dos картинка должна содержать 14 цветов и иметь разрешение 640×480.
Как сделать:
- Откройте картинку
- Следуйте по меню Изображение > Режим > Индексированный
- В максимальном количестве цветом наберите 14 и нажмите преобразовать
- Если картинка больше чем 640×480 то следуйте по меню Изображение > Размер изображения. Затем задайте высоту 640 и ширину 480, и нажмите изменить.
- Файл > Экспортировать как. Надите формат «Изображение X PixMap» и сохраните с форматом xpm.
Примечание: картинку можно использовать и сжатую с помощью утилиты gzip
Последний раз редактировалась 23 мая 2021 в 14:24
Языки
Эта страница недоступна на других языках.
- Эта страница в последний раз была отредактирована 23 мая 2021 в 14:24.
- Если не указано иное, содержание доступно по лицензии CC BY-SA 4.0.
- Политика конфиденциальности
- Описание Викиучебника
- Отказ от ответственности
- Кодекс поведения
- Разработчики
- Статистика
- Заявление о куки
- Условия использования
- Настольная версия
BootDev
Загрузчик не помещается целиком в MBR. Присутствуют внешние файлы: обязательный grldr (основной код загрузчика), и необязательный menu.lst (файл конфигурации).
У загрузчика нет поддержки EFI загрузки.
Скачать самую актуальную версию загрузчика можно по ссылке http://grub4dos.chenall.net/categories/downloads/.
Материал для изучения
Руководство на русском языке по Grub4Dos читаем здесь. Информация отчасти уже устарела , но чтобы войти в курс дела этого будет достаточно.
После, можно пройтись по примерам отсюда. Информация актуальная , сайт на английском.
Grub4dos
Grub4dos это специальная версия загрузчика операционных систем GRUB для использования в DOS и Windows системах.
Grub4dos умеет загружаться с жёсткого диска, USB-флешек и CD/DVD дисков, если используется поддерживаемая им файловая система, а также выступать в качестве PXE-загрузчика. Grub4dos в состоянии полностью заменить оригинальный загрузчик операционной системы, например как описано в статье Модернизация загрузчика Windows 7. Grub4dos обеспечивает запуск инструментов, других систем прямо с ISO-образов, расположенных на жёстком диске, используя механизм «загрузки-по-цепочке».
Получение Grub4dos
Для получения загрузчика Grub4dos
# в браузере может быть использована страница sourceforge.net/grub4dos или # wget http://download.gna.org/grub4dos/grub4dos-0.4.4-2009-06-20.zip
Установка Grub4dos на жёсткий диск
Для установки Grub4dos на жёсткий диск/USB-флешку
- запускается операционная система Linux, например Parted Magic
- подключается целевое устройство — USB-флешка или жёсткий диск
- содержимое пакета с загрузчиком распаковывается на целевое устройство, например в корневую систему
- в каталоге с загрузчиком выполняется команда
# bootlace.com --time-out=0 --no-backup-mbr --mbr-disable-floppy /dev/sda где /dev/sda это целевое подключённое устройство
Для установки Grub4dos на USB-флешку/жёсткий диск из FreeDOS
- запускается операционная система FreeDOS
- подключается целевое устройство — USB-флешка или жёсткий диск
- содержимое пакета с загрузчиком распаковывается на целевое устройство, например в корневую систему
- в каталоге с загрузчиком выполняется команда
# bootlace.com 0x80 - установка на первый жёсткий диск # bootlace.com 0x81 - установка на второй жёсткий диск
Для начала использования загрузчика Grub4dos следует создать файл конфигурации меню C:\menu.lst
Команды Grub4dos
Файл конфигурации Grub4dos состоит из команд (неполный список)
# комментарий - знак решётки - указание загрузчику не обрабатывать строку boot - передача управления ядру, загруженному командой kernel или "следующему" загрузчику, по команде chainloader color light-gray/black yellow/green light-cyan/black light-green/black - задаёт цвета меню cat - выводит на экран содержимое файла cmp - сравнивает содержимое двух файлов chainloader /ntldr - передает управление загрузчику, в примере /ntldr chainloader (hd0)+1 - передает управление на загрузочный сектор устройства (hd0) chainloader +1 - передает управление на загрузочный сектор корневого устройства configfile /cfg/next.lst - открывает файл конфигурации, перейти в субменю default 0 - установка пункта меню по умолчанию, выполняемого по истечении таймаута fallback 1 - установка пункта меню выполняемого, если невозможна загрузка по умолчанию find --set-root /file - поиск файла и установка раздела на котором он расположен в качестве корневого halt - выключение рабочей станции help [команда] - вывод подсказки для команды gfxmenu /boot/message33.gz - установка фоновой графической картинки, оно же русификация меню lock - блокировка выполнения команд для пользователя не указавшего пароль команды password quit - выход из GRUB, в DOS makeactive - установка флага АКТИВНЫЙ на раздел диска, выбранный командой root map (hd0) (hd1) - "свопирование" разделов для обеспечения возможности загрузки windows со второго и последующих дисков map (hd1) (hd0) timeout 20 - установка времени в секундах до выполнения команды следующей команды title Boot Name - название пункта меню testvbe MODE - тестирование режима MODE видеоадаптера password abcd - установка пароля, при достижении команды требует ввода пароля pause - ожидание нажатия клавиши partnew - создание первичного раздела partype - изменение типа раздела rootnoverify (hd0,0) - отмена проверки тип файловой системы диска выбранного командой root root (hd0,1) - выбор корневого (текущего) диска reboot - перезагрузка рабочей станции hide - скрытие раздела жёсткого диска unhide - отменяет скрытие раздела жёсткого диска vbeprobe - определение и вывод доступных режимов видеоадаптера
Эти же директивы могут быть использованы в командной оболочке загрузчика, вызываемой при запущенном меню клавишей C.
- Что такое GRUB4dos и с чем его едят, или как сделать флешку загрузочной
- Конфигурация файла Меню
Загрузка ISO-образов в Grub4dos
Grub4dos поддерживает загрузку систем расположенных на ISO-образах, как прямо с жёсткого диска, так и предварительно перемещая их в оперативную память. В этом смысле Grub4dos выгодно отличается от других загрузчиков семейства Grub. Загрузка с ISO-образов может быть востребована для восстановления или обслуживания системы, например с помощью ERD Commander.
Для добавления в Grub4dos загрузки с ISO-образа
- ISO-образ CD-диска размещается в доступном месте жёсткого диска
Внимание! следует помнить, что : если ISO-образ размещается в оперативной памяти компьютера - то ОЗУ компьютера должно быть больше, чем загружаемый ISO-образ если ISO-образ "загружается" с жёсткого диска - то он должен быть непрерывным (не содержать фрагментов) и не быть сжатым
- в файл меню Grub4dos C:\menu.lst добавляются например строки
title Boot from ISO find --set-root /.iso map --sectors-per-track=0 --heads=0 /.iso (0xff) || map --sectors-per-track=0 --heads=0 --mem /.iso (0xff) map --hook chainloader (0xff) boot
- Команда «MAP»
- boot from iso, grub
- Boot iso?
- chainloading в iso
Загрузка Grub4dos «по цепочке»
Для использования Grub4dos нет необходимости устанавливать его основным загрузчиком жёсткого диска. Grub4dos может быть внедрён в системах Linux и Windows путём организации загрузки «по цепочке».
Загрузка Grub4dos по цепочке в Windows NT/2000/XP
Операционные системы Windows NT/2000/XP, а также Windows Server 2000/2003 используют загрузчик ntldr.
Для загрузки Grub4dos «по цепочке» из NTLDR
- специальный загрузчик grldr размещается в доступном месте, например в корне диска C:\
Внимание! В сжатой ntfs-системе лучше деактивировать сжатие файла grldr.
- рядом с файлом grldr создаётся файл конфигурации меню C:\menu.lst
- в меню загрузчика ntldr — C:\boot.ini — добавляется строка с пунктом загрузки
C:\GRLDR="Grub4dos Start"
- Установка загрузчика Grub4dos
- Установка Grub4Dos на жесткий диск
Загрузка Grub4dos по цепочке в Windows Vista/7/8
Операционные системы Windows Vista/7/8 используют загрузчик bootmgr.
Для загрузки Grub4dos «по цепочке» из Bootmgr
- специальный файл Grub4dos — grldr.mbr (образ MBR диска) — размещается в доступном месте, например в корне диска C:\
- рядом с файлом grldr.mbr размещается специальный загрузчик Grub4dos grldr
Внимание! В сжатой ntfs-системе можно деактивировать сжатие файлов grldr.mbr и grldr.
Замечание! При желании файл grldr может быть перемещён в скрытый системный раздел, в котором находится загрузчик Windows bootmgr. Для перемещения легче всего воспользоваться любой Linux Live CD системой.
- рядом с файлом grldr создаётся меню загрузчика Grub4dos — например C:\menu.lst
- запускается командная строка Windows от имени Администратора, например так
> runas /user:Администратор cmd.exe
- в открывшемся окне выполняются команды добавлющие пункт меню для Grub4dos
> bcdedit /create /d "Grub4Dos" /application bootsector - создание новой записи с именем "Grub4Dos" в хранилище данных конфигурации загрузки > set store= - где это идентификатор созданной записи, выданный первой командой > bcdedit /set %store% device partition=C: - указание раздела на котором находится файл grldr.mbr > bcdedit /set %store% path \grldr.mbr - ввод имени файла > bcdedit /displayorder %store% /addlast - смещение новой записи в конец меню
Дополнительно могут быть использованы команды > bcdedit — просмотр параметров всех установленных пунктов меню > bcdedit /set description «Новое название» — изменение названия записи с указанным > bcdedit /default — задание системы с указанным загружаемой по умолчанию > bcdedit /timeout XX — задание времени показа меню перед загрузкой (в секундах) > bcdedit /delete — удаление записи с указанным
Загрузка Grub4dos из Linux
Операционные системы Linux,*nix (на текущий момент) используют загрузчик Grub2.
Для загрузки Grub4dos «по цепочке» из Grub2 — так называемое «Grub to Grub» — на примере Debian
- в файл конфигурации Grub2 /etc/grub.d/40_custom добавляется секция
menuentry "Grub4Dos" --class gnu-linux < linux16 /boot/grub4dos/grub.exe --config-file=/boot/grub4dos/menu.lst >
- обновляется файл конфигурации Grub2
# update-grub
Запуск других загрузчиков из Grub4dos
Grub4dos поддерживает загрузку «по цепочке» ОТ СЕБЯ множества других загрузчиков напрямую или через MBR раздела, на котором они установлены.
Примеры организации запуска Grub4dos «по цепочке» в файле конфигурации menu.lst
title Chainload (hd0) # "цепочка" с MBR жёсткого диска, где установлен другой загрузчик root (hd0,1) # указание на второй раздел первого жёсткого диска rootnoverify chainloader +1 # передача управления к MBR на устройстве (hd0,1) boot
title Windows XP booting # "цепочка" на загрузчик NT-версий Windows NTLDR find --set-root /ntldr # поиск и установка корневым раздела с загрузчиком ntldr chainloader /ntldr # передача управления к загрузчику ntldr boot
Создание условных меню
Grub4dos (начиная с 2012 г.) поддерживает организацию условных меню. Условный пункт меню формируется в зависимости от наличия/отсутствия файла в доступном для загрузчика месте.
Синтаксис условного меню Grub4dos
iftitle [if exist //filename] TitleName label command .
Например iftitle [if exist файл.iso] Загрузка файла.iso - если файл.iso отсутствует, то пункт меню не будет отображаться map --mem файл.iso (hd32) map --hook chainloader (hd32)
Внимание! 1. После открывающей скобки [ и перед закрывающей ] пробелы отсутствуют. 2. На файловой системе NTFS проверка [if exist] может осуществляться как к файлу, так и к папке. А на FAT32 только к файлу.
Литература
- wikipedia.org: Grub
- Ru.Board » GRUB4DOS и GNU GRUB
- Инструкция по установке загрузчика Grub4dos
- Grub4dos Installer on sourceforge.net
Справочная информация
- 08.05.2011: Grub4dos: создание статьи, описание установки grub в windows xp и загрузки с ISO-образа
- 04.04.2014: Grub4dos: актуализация описания, добавлены разделы Установка Grub4dos на жёсткий диск и Команды Grub4dos
- 06.02.2015: Grub4dos: добавлен раздел Загрузка Grub4dos из ntldr
- 17.02.2016: Grub4dos: добавлен раздел Создание условных меню
- 21.03.2018: Grub4dos: добавлен раздел Загрузка Grub4dos из Bootmgr
Установка grub4dos средствами Linux, или как сделать флешку загрузочной?
Если носитель размечен — не требуется. С некоторыми флэшками, отформатированными в windows могут быть проблемы — переразметьте так:
Вся информация на носителе будет удалена!
Выбираем флэшку — например sdb
Правый клик по носителю — отмонтировать
Меню — Устройство — Создать таблицу разделов — ms-dos — Применить. Если носитель больше 2TB вместо ms-dos нужно gpt и grub4dos работать не будет
Раздел — Новый — fat32 (еще поддерживаются FAT12, FAT16, FAT32, NTFS, EXT2..EXT3 .. EXT4 или EXFAT) — Добавить.
Меню — Выполнить все операции
Правый клик по разделу — Управление флагами — boot
Закрыть gparted
Вынуть флэшку (перезагрузить компьютер)
Установка
Все действия выполняются в консоли с правами рута.
При установке на жёсткий диск будет затёрта загрузочная запись предыдущего загрузчика. Будьте осторожны с выбором!
Флешки отформатированные в Windows могут не иметь разделов, как например дискета (так называемые «суперфлоппи»)
bootlace.com работает в 32 и 64 битном linux, windows (запускать от Администратора)
Начиная с этой версии работает и на ext4
Скачать архив с bootlace.com, распаковать
Определить тип разметки носителя (dos или gpt — п.5 предыдущего раздела)):
fdisk -l /dev/sdX |egrep "^Disklabel type"
, где /dev/sdХ — Ваш носитель (флэшка , hdd). Посмотреть : blkid
Запустить в консоле с правами root:
./bootlace.com /dev/sdX
./bootlace.com --gpt /dev/sdX
На первый раздел /dev/sdX (в корень) переписать grldr (старые версии не увидят ext4) и menu.lst
Отредактировать menu.lst согласно рекомендаций Вашего дистрибутива
Из grub4dos можно перейти в grub2
Что получаем в результате
Флешка становится «загрузочным ключиком».
Загрузочная запись ищет загрузчик grldr на всех доступных разделах. Поэтому не обязательно копировать grldr на первый раздел флешки, можно поместить на второй. Или вообще на жёсткий диск. Главное. Чтобы раздел был основным.