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
Подготовка мультизагрузочной флешки [BOOTice] [GRUB4dos]
- запускается операционная система 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
- Что такое 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
Источник: tdkare.ru
Руководство по Grub4dos
Добро пожаловать в руководство по Grub4dos на Русском языке (Version 1.11 23.10.2008).
Данное руководство переведено стараниями проекта GreenFlash с Англоязычного аналога.
Если вы заметите неточности перевода, ошибки или опечатки, пожалуйста отправьте их копию используя
форму обратной связи.
Загрузить Английскую версию этого мануала можно Здесь. A версию .chm можно взять Здесь
Загрузить Русскую .chm версию этого мануала можно Здесь.
За создание .chm версии, выражаем благодарность S.M.A.R.T
Grub4dos многофункциональный загрузчик, который используется для загрузки операционных системы при мультисистемной конфигурации.
Это руководство ориентированно на пользователей Windows, но также должно быть полезно для пользователей Linux. Все скриншоты и команды взяты из Grub4dos версии 0.4.3 (сборка 2008-03-14).
Выражаем благодарность Jaclaz, Без его помощи это руководство не было бы закончено. Так же Выражаем благодарность ilko за его поддержку. Выражаем благодарность Nuno Brito за публикацию английской версии этого руководства.
Источник: greenflash.su
Что такое GRUB4dos и с чем его едят, или как сделать флешку загрузочной
Данной статьей я не ставлю задачу ознакомить вас со всеми возможностями этого загрузчика, а только обрисую основные ситуации, для того чтобы вы смогли сделать полноценную загрузочную флешку или диск. Я не буду копипастить описание, а расскажу доступным языком все то, что я узнал в процессе его использования.
Начнем с того, что несмотря на свой мизерный размер, этот загрузчик является по сути небольшой консольной операционной системой, поддерживающий командную строку, множество команд управления, работы с файлами, управления доступом, модификации разделов, поддерживает множество файловых систем, умеет читать данные с любого из определяемых BIOS устройств, поддерживает загрузку по сети, не зависит от геометрии дисков, умеет работать с удалёнными терминалами и т.д., это при размере то чуть больше 200 килобайт!
Еще grub имеет встроенную систему помощи, которая в ответ на всегда выведет список доступных к выполнению команд, а в ответ на выдаст дополнительную информацию. Автозаполнение строки (клавиша TAB) подскажет не только синтаксис команды, но и, в некоторых случаях, варианты её продолжения (доступные устройства, разделы).
Но я не стану углубляться в дерби, а расскажу поверхностно, самые азы, так сказать.
Для того, чтобы загрузить grub, необходимо иметь на диске загрузочную запись (MBR) для grub-а, сам файл grldr в корневой директории диска и файл menu.lst, который содержит конфигурацию загрузчика. Еще нужна папка boot, в которой grub хранит файлы, необходимые ему для работы, файлы тем и прочий мусор. так же в эту папку можно класть образы, с которых мы будем загружаться, дабы не мозолили глаза в корневой директории и файлы субменю, если возникнет необходимость в их создании. Все это есть во вложении.
Загрузочную запись на диске можно получить различными способами. Самый простой — из-под Windows запустить файл grubinst_gui.exe и инсталлировать загрузочный сектор на нужный физический диск, затем скопировать файлы grldr и menu.lst в корневую директорию. Есть более извращенный способ — если установлена WinXP, переместить файл ntldr во временную папку (например, boot), скопировать в корневую директорию диска grldr, переименовать его в ntldr, для семерки аналогичные действия проводятся с файлом bootmgr. Этот способ хорош, если вам понадобится восстановить на место старую загрузку, достаточно скопировать обратно в корневую директорию оригинальный файл ntldr или bootmgr, и подтвердить перезапись. Плох он тем, что для загрузки системы оригинальный файл все-таки нужен, но его придется переименовать в, например, ntldr1 (bootmgr1) чтобы мы смогли загрузить ОС.
Итак, с MBR мы разобрались, приступим к конфигурированию файла menu.lst
В самом начала файла обычно пишутся команда, задающая цвет для текстового режима. Если включен графический режим, эта строка игнорируется. Выйти из графического режима можно нажав клавишу ESC.
#цветовые схемы
color light-gray/black yellow/green light-cyan/black light-green/black
Знак решётки — комментарии, эти строки не читаются обработчиком.
Первая пара цветов определяет основной и фоновый цвета для «не выбранных» позиций меню, вторая — для «выбранных».
Для того чтобы включить графический режим, прописываются следующие команды
#загрузочная картинка
gfxmenu /boot/pictures/message33.gz
Пункт меню, на котором стоит курсор по умолчанию. Обратите внимание, нумерация ВСЕГО у груба начинается с нуля
#позиция по умолчанию
default 0
Если загрузка по умолчанию по какой-либо причине невозможна, то будет предпринята попытка выполнить позицию, указанную в команде
#если невозможна загрузка по умолчанию
fallback 1
Время в секундах с момента вывода меню до выполнения команды, определенной по умолчанию задается командой
#таймаут
timeout 20
Позиции меню описываются командой
#название пункта меню
title
Далее я просто приведу примеры загрузки осей и образов дисков, не вдаваясь в параметры команд, кому нужно, без труда отыщет их сам, благо статей и документации хватает на просторах инета
Загрузка WindowsXP
title Start Windows XP
rootnoverify (hd0,0)
chainloader /ntldr
Команда rootnoverify не проверяет тип файловой системы диска 1 раздела 1 ( еще раз обратие внимание, что нумерация физических дисков и нумерация логических разделов начинается с 0 ), а сразу делает его корневым. Команда chainloader передает управление загрузчику ntldr и дальше загрузка Windows происходит как обычно. Если загрузочные файлы WindowsXP находятся на другом разделе или диске, соответственно измените значения на
Если вы воспользовались способом инсталляции grub с переименованием файлов, то третья строка у вас будет выглядеть примерно так
Загрузка Windows7 или Vista
title Start Windows 7
rootnoverify (hd0,0)
chainloader /bootmgr
Здесь все аналогично вышеописанному
Консоль восстановления WindowsXP (тут мне самому непонятно, но оно работает )
title Recovery console Windows NT/2K/XP
find —set-root /cmldr
chainloader /cmldr
# записываем буквы «cmdcons» в память 0000:7C03 в 2 шага:
### шаг 1. записываем 4 буквы «cmdc» в 0000:7C03
write 0x7C03 0x63646D63
### шаг 2. записываем 3 буквы «ons» в 0000:7C07
write 0x7C07 0x00736E6F
наличие папки cmdcons и файла cmldr приветствуется Как их создать, думаю объяснять не нужно
Если что ее можно взять ТУТ
Grub умеет монтировать в память практически все популярные образы дисков и дискет
title Start Acronis Rescue Media 11
find —set-root //boot/ima/acronis.iso
map —mem /boot/ima/acronis.iso (hd32)
map —hook
chainloader (hd32)
boot
Естественно, образ должен лежать в папке bootimaacronis.iso
Положить вы его можете конечно в любую папку, но не забудьте изменить путь. Да, еще небольшой нюанс — в путях grub использует не левый слэш (как windows и dos) а правый / , будьте внимательны
И еще, чем больше образ, тем дольше он грузится в память. Вам может показаться, что компьютер завис, но это не так, нужно набраться терпения.
Пример монтирования и загрузки образа дискеты
title Hirens Boot CD All-In-One
map —mem /boot/ima/hiren.ima (fd0)
map —hook
chainloader (fd0)+1
rootnoverify (fd0)
Grub позволяет так же создавать субменю. например, в основном меню у вас будет 2 пункта
1. HDD Utils
2. Test Utils
Чтобы перейти к субменю, создайте файл hddutils.lst в папке boot (чтобы не мозолил глаза в корневой директории)
title HDD Utils
root (hd0,0)
configfile /boot/hddutils.lst
Файл субменю конфигурируется аналогичным образом. Для возврата в основное меню воспользуйтесь командой
title Return to main menu
find —set-root /menu.lst
configfile /menu.lst
Аналогично добавляются и остальные пункты субменю, для каждого создаем свой файл %name%.lst
В Линуксе я, мягко скажем, не силен, посему оставляю красноглазикам конфигурировать загрузку на свое усмотрение
Расскажу еще о паре фич
команда makeactive ставит флаг АКТИВНЫЙ на ЛЮБОЙ корневой раздел диска, выбранный командой root
root (hd0,1)
makeactive
Команда hide скрывает разделы, unhide отменяет скрытие
Поскольку ОС семейства win’9x не могут быть загружены из соседних разделов (вне зависимости от флага активности грузится все равно первый из разделов), для их загрузки нужно использовать команды hide и unhide. Так, если первый и второй первичные разделы содержат win’9x, то для загрузки второй системы нужно включить в menu.lst следующие команды:
hide (hd0,0)
unhide (hd0,1)
root (hd0,1)
makeactive
chainloader +1
Последняя команда просто передает управление загрузчику указанного раздела
Еще один геморой с ОС от мелкомягких — неспособность грузиться со второго и последующих дисков. Для его преодоления применяют технику «свопирования» (swapping technique), или, проще — «подмены». Так же работает и BIOS Setup, но какой смысл обращаться к нему, если всего две строки в menu.lst сделают то же самое?
map (hd0) (hd1)
map (hd1) (hd0)
Обратите внимание, что команды map «меняют местами» диски даже в представлении GRUB: второй диск становится после их выполнения hd0, а не hd1.
password abcd задает пароль (в данном случае abcd). Обычно помещается в конфигурационном файле и при достижении ее требует ввода пароля.
Чтобы он заработал, воспользуйтесь командой lock. Вы можете ввести пароль в любое время, нажав клавишу p.
В этом пункте пример использования подсказки для пунктов меню если отключены темы
Подсказки на английском языке, n — переход на новую строку, всего 3 строки
Подсказки можно использовать при выходе из русифицированного gfxmenu-меню, чтоб не создавать англоязычные копии менюшек
title LiveCD_4.9 256n LDR-318576 (311), TXTSETAM.SIF, multin wim-245Mb, 2009.11.21n __________________________________________________ _______________________
find —set-root —ignore-floppies /b386/SETUPLDR.BIN
chainloader /b386/SETUPLDR.BIN
Вот основной список команд, по каждой можно узнать больше, набрав в консоли (вызывается нажатием С) help имя_команды
boot — передать управление ядру, загруженному командой kernel или «чужому» загрузчику, загруженному командой chainloader,
halt — выключить машину,
help [команда] — выдать подсказку,
quit — выйти из GRUB,
reboot — перезагрузиться,
pause — ждать нажатия клавиши;
Команды работы с файлами:
cat — вывести на экран,
cmp — сравнить содержимое двух файлов;
Команды управления доступом:
password — При достижении команды требует ввода пароля;
lock — блокировать выполнение команд для неидентифицированного пользователя;
Команды модификации разделов:
partnew — создать первичный раздел,
partype — изменить тип раздела;
Команды настройки внешнего вида:
color — задать цвета меню,
vbeprobe — определить и вывести доступные режимы видеоадаптера,
testvbe MODE — тестировать режим MODE видеоадаптера.
Приведенный список команд не полон, но более подробное обсуждение было бы слишком объемным.
Теперь разберемся с темами оформления
Во вложении есть папка Перепаковка темы gfxboot-3.3
Из файла message33.gz извлекаем WinRAR’ом message33, копируем в папку Перепаковка темы gfxboot-3.3, далее батником Извлечь.bat извлекаем тему из message33, заходим в папку files, меняем картинку и заново упаковываем батником Упаковать.bat. Архиватором 7zip упаковываем в *.gz. Можно обойтись и Тотал Коммандером с установленным плагином, у меня работает.
Файл gfxboot.cfg это конфигурационный файл темы, в нем все прокоментировано. Про таймер не спрашивайте, это отдельная песня, я с ним не разбирался.
Подробное описание настройки gfxboot-3.3 в файле Readme_RUS.txt
В папке Примеры menu.lst комплект примеров, возможно, поможет разобраться в организации меню и найти для себя рабочие варианты загрузки. Все *.lst в кодировке UTF-8.
Ну, и последняя рекомендация, содержащаяся в инструкциях абсолютно ко всем менеджерам загрузки:
до инсталляции нового менеджера загрузки сохраните MBR.
Вложения
grub.zip (2.37 Мб, 3242 просмотров) |
Источник: www.cyberforum.ru
Grub4dos что это за программа
Запись: xintrea/mytetra_db_adgaver_new/master/base/1512762143fspn8pcrcm/text.html на raw.githubusercontent.com
Руководство по Grub4dos
Добро пожаловать в руководство по Grub4dos на Русском языке ( Version 1.11 23.10.2008).
Данное руководство переведено стараниями проекта GreenFlash с Англоязычного аналога .
Если вы заметите неточности перевода, ошибки или опечатки, пожалуйста отправьте их копию используя
форму обратной связи .
Загрузить Английскую версию этого мануала можно Здесь . A версию .chm можно взять Здесь
Загрузить Русскую .chm версию этого мануала можно Здесь .
За создание .chm версии, выражаем благодарность S.M.A.R.T
Grub4dos многофункциональный загрузчик, который используется для загрузки операционных системы при мультисистемной конфигурации.
Это руководство ориентированно на пользователей Windows, но также должно быть полезно для пользователей Linux.
Все скриншоты и команды взяты из Grub4dos версии 0.4.3 (сборка 2008-03-14).
Выражаем благодарность Jaclaz , Без его помощи это руководство не было бы закончено.
Так же Выражаем благодарность ilko за его поддержку.
Выражаем благодарность Nuno Brito за публикацию английской версии этого руководства.
Copyright GreenFlash (c) 2007-2008
Источник: webhamster.ru
GRUB пингвиньего цвета
На компьютере загружается Linux, который когда-то был туда установлен. Тогда структура жесткого диска претерпела ряд изменений: были созданы разделы, а также установлен загрузчик. Судя по большинству дистрибутивов, самым популярным в мире Linux является загрузчик GRUB.
Действие этого загрузчика операционной системы происходит с точки зрения пользователя так: пользователь после включения компьютера видит список операционных систем, которые установлены на его компьютер. По оформлению этот список бывает совершенно разным: черно-белым, разноцветным, с пингвинами.
В конце концов по выбору пользователя загружается операционная система.
В центре внимания этот статьи — графической режим GRUB с анимированными пингвинами, которых программист Steffen Winterfeldt заставил ходить взад-вперед и выдавать еще несколько других номеров. Прежде всего — пингвины, а за этим — утилита gfxboot для изменений и тестов конфигурации графического загрузчика.
Еще в статье много информации по конкретным дистрибутивам (Mageia, openSUSE, Ubuntu) с неодинаковыми методами изменения графического загрузчика. Отдельная тема — графический загрузочный экран на основе grub4dos.
Благодарность
Хочу выразить благодарность А.Федорчуку за статью о виртуальной машине VirtualBox и образах операционных систем с сайта osboxes.org, информация из которой очень помогла при написании этой статьи.
Пингвины и gfxboot
В заставку с пингвинами включено некоторое количество пигвинов в окружающем мире, среди снега и льда, а также фоновый рисунок для списка операционных систем в форме замерзшего прямоугольного камня.
Физически такая заставка представляет собой cpio-архив, как правило это /boot/message. Вы можете, в принципе, просмотреть этот архив, распаковать его в текущую директорию и переупаковать. Но для того, чтобы облегчить себе жизнь, есть утилита gfxboot.
openSUSE
Когда на компьютере установлен GRUB2, настоящей системой испытаний будет возврат к GRUB, когда у осуществляющего его существует недостаток знаний. Далее следует блок-инструкция по переходу к использованию в качестве загрузчика GRUB.
1. Установка GRUB на жесткий диск с помощью команды
sudo zypper in grub
оканчивается сообщением: grub is not the active boot loader.
2. Делаем GRUB активным загрузчиком с помощью оболочки GRUB так, как это отражено на скриншоте. В нем принят допуск, что GRUB установлен на первый раздел первого жесткого диска (hd0,0).
Установка кода GRUB в MBR
В выдаче оболочки GRUB в ответ на последнюю команду содержится имя файла /boot/grub/menu.lst.
3. Создадим и отредактируем этот файл с помощью команды
sudo vi /boot/grub/menu.lst
Он будет содержать конфигурацию загрузочного меню, аналог конфигурации загрузочного меню, содержащейся в файле /boot/grub2/grub.cfg. Их синтаксисы по существу родствены друг другу. С некоторыми изменениями текст конфигурационного файла GRUB2 служит основой для текста конфигурационного файла GRUB.
Фрагмент файла /boot/grub2/grub.cfg
menuentry ‘openSUSE’ —class opensuse —class gnu-linux —class gnu —class os $menuentry_id_option ‘gnulinux-simple-99d4f445-3170-4ced-a612-fe255dc11b3c’ < load_video set gfxpayload=keep insmod gzio insmod part_msdos insmod ext2 set root=’hd0,msdos1′ if [ x$feature_platform_search_hint = xy ]; then search —no-floppy —fs-uuid —set=root —hint-bios=hd0,msdos1 —hint-efi=hd0,msdos1 —hint-baremetal=ahci0,msdos1 —hint=’hd0,msdos1′ 99d4f445-3170-4ced-a612-fe255dc11b3c else search —no-floppy —fs-uuid —set=root 99d4f445-3170-4ced-a612-fe255dc11b3c fi echo ‘Loading Linux 3.16.6-2-default . ‘ linux /boot/vmlinuz-3.16.6-2-default root=UUID=99d4f445-3170-4ced-a612-fe255dc11b3c quiet resume=/dev/sda2 splash=silent quiet showopts echo ‘Loading initial ramdisk . ‘ initrd /boot/initrd-3.16.6-1-default >
и соответствующий ему фрагмент файла /boot/grub/menu.lst
title openSUSE root (hd0,0) kernel /boot/vmlinuz-3.16.6-2-default root=UUID=99d4f445-3170-4ced-a612-fe255dc11b3c quiet resume=/dev/sda2 splash=silent quiet showopts initrd /boot/initrd-3.16.6-1-default
4. Для включения графического режима GRUB с анимированными пингвинами, с помощью текстового редактора vi добавим в начало файла /boot/grub/menu.lst строку
gfxmenu (hd0,0)/boot/message
и сделаем вероятность появления пингвинов равной 100% с помощью команды
sudo gfxboot —change-config penguin=100
Пингвины
Mageia
Когда на компьютере установлен GRUB, меню с пингвинами делается по-другому. Далее следует соответствующая инструкция.
1. Начало инструкции — на скриншоте.
Установка gfxboot и gfxboot-themes
2. В файле /boot/grub/menu.lst вместо строки
gfxmenu (hd0,0)/boot/gfxmenu
gfxmenu (hd0,0)/boot/message
выбираем и настраиваем тему графического загрузочного экрана
gfxboot —new-theme openSUSE gfxboot —change-config penguin=100
и выходим из сеанса командной оболочки суперпользователя с помощью команды
exit
Пингвины
Ubuntu
В этой системе есть gfxboot, gfxboot-themes, grub, но в последнем не работает графический загрузочный экран. Вместо его предлагаются статичные изображения, отображаемые в загрузочном меню с помощью параметра splashimage, указываемого в конфигурационном файле GRUB. В таком случае можно использовать загрузчик grub4dos.
Grub4dos на загрузочной флешке и жестком диске
Границы применения grub4dos шире установки на флеш-накопители, но это, наверное, является главным. Ниже на листинге примерная процедура или схема его установки.
Установка grub4dos на флеш-накопитель
wget https://downloads.sourceforge.net/project/grub4dos/GRUB4DOS/grub4dos%200.4.4/grub4dos-0.4.4.zip unzip grub4dos-0.4.4.zip cd grub4dos-0.4.4 sudo ./bootlace.com /dev/sdb
После копирования содержимого каталога grub4dos на флеш-накопитель и загрузки с его помощью компьютера, видим разноцветное загрузочное меню, как на скриншоте.
Загрузочное меню grub4dos
После копирования туда же файла /boot/message, полученного способом, описанным выше, и замены содержимого файла menu.lst другим, содержащим строку
gfxmenu /message
получаем все тех же пингвинов.
На жестком диске grub4dos можно вызвать из GRUB, введя в его конфигурационный файл описание соответствующего пункта меню:
default 0 timeout 0 title grub4dos kernel (hd0,5)/grub.exe —config-file=»map (rd) (fd0); map —hook; chainloader (fd0)+1; rootnoverify (fd0)» initrd (hd0,5)/myfloppy.img
Это действует, если на шестом разделе жесткого диска с fat12 или fat32 имеются файлы grub.exe и myfloppy.img, последний из которых — файл-образ загрузочной дискеты. В нем объединены файлы из архива grub4dos-0.4.4.zip. Далее следует несколько команд, выполнение которых провоцирует добавление на диск необходимого для загрузки grub4dos файла myfloppy.img
sudo mkfs.msdos -С myfloppy.img 1440 sudo ./bootlace.com —floppy myfloppy.img mkdir dos sudo mount -o loop myfloppy.img dos sudo cp grub4dos-0.4.4/* dos sudo vi dos/menu.lst
Осталось добавить в каталог к файлам grub.exe и myfloppy.img файл message, заменить содержимое файла dos/menu.lst на что-то подобное тому, что воспроизведено на следующем листинге и отмонтировать файл-образ myfloppy.img с помощью команды
sudo unmount /dev/loop0
чтобы получить результат, неоднократно ранее полученный в этой статье.
Содержимое конфигурационного файла menu.lst для grub4dos
default 0 timeout 3 gfxmenu /message title Ubuntu root (hd0,0) chainloader +1 title Reboot reboot
Источник: habr.com