GRUB всемогущий, или Делаем загрузочную флешку. Русский язык в меню

GRUB всемогущий, или Делаем загрузочную флешку. Русский язык в меню

Привет друзья! Меня зовут Виталий Владимирович . Прочитал недавно на вашем сайте http://сайт статью читателя Андрея о , сделанной в программе WinSetupFromUSB. Скажу честно, описываемый в статье способ мне не понравился и я хочу предложить вам свой вариант создания такой фоновой картинки.

Файлы темы находятся в cpio-архиве и файл темы это бинарный файл, поэтому чтобы сделать какие либо изменения необходимо компилировать Gfxboot-тему заново из исходных файлов (кодов). Звучит очень страшно, но к счастью всё оказалось достаточно просто. Рассказывать буду подробно, с картинками, так что всё будет понятно.

Заглянув внутрь вы увидите множество файлов, первым делом нас интересуют файлы gfxboot.cfg и back.jpg .

Нам надо подсунуть своё изображение. Файл back.jpg, это изображение в формате 1024х768х24b jpeg 1.1.

Изображение можно заменить на какое вам угодно, переименовав его в back.jpg и поместив в папку с исходными файлами (с заменой старого естественно). Не забудьте, что формат должен быть jpeg 1.1, а не 2.0 или Прогрессивный. Сохранить фото в jpeg 1.1 можно с помощью GIMP 2.6.

GIMP, если в нём сохранять изображение в jpeg при настройках по умолчанию, то получится как раз то, что надо (одно уточнение: программу надо скачать именно ту, которую надо устанавливать. Портативная версия выдаёт ошибку).

Я выбрал вот эту картинку:

Её первоначальное разрешение было 1680х1050, то есть разрешение моего монитора. Картинка для флешки должна иметь разрешение 1024х768 (или 800х600). Это ограничение связано с загрузчиком GRUB. Ну что ж, в фотошопе отрезаем лишнее (именно отрезаем, а не просто меняем разрешение, иначе изменятся пропорции) и приводим разрешение к 1024х768. Как работать с фотошопом – это за рамками данной статьи, но поверьте – дело нескольких минут. После фотошопа картинка стала такой:

Смотрим её свойства:

Для картинки на флешку у неё очень хорошее качество. Я имею ввиду количество точек на дюйм. Чтобы вы не повторяли моих ошибок (я пробовал применить картинку в данном качестве – у меня ничего не получилось), сразу скажу, что количество точек на дюйм надо уменьшить, ну хотя бы до 200 точек на дюйм. Ухудшения качества на глаз почти незаметно. Но здесь есть один нюанс: количество точек на дюйм уменьшаем, но ширина и высота должны остаться неизменными, чтобы использовать весь размер экрана! В фотошопе такой фокус не пройдёт – уменьшаем количество точек на дюйм – уменьшаются и размеры. Но выход есть! Открываем эту картинку в GIMP"e, идём в "Изображение" --> "Размер изображения":

Ширину и высоту оставляем прежними, а разрешение по X и по Y уменьшаем до 200 и нажимаем "Изменить":

Сохраняем картинку. Смотрим её свойства:

Теперь будем менять цвета элементов и позиции меню.

Для внесения остальных изменений мы будем редактировать конфигурационный файл gfxboot.cfg , изменяя некоторые из нижеперечисленных параметров:

boot_show (по умолчанию: 0)

Если поставить 1, отобразятся "Boot Options".

Grub4dos не использует эту опцию, так что лучше не отображать её.

xmenu_hide_current (по умолчанию: 0)

Поставим 1, Спрятать текущую выбранную позицию (можно не трогать).

menu_start_x, menu_start_y

Позиция Меню.

С помощью этих параметров можно перемещать блок текста в любую точку экрана. Я выбрал в результате экспериментов Х=50, Y=250. На этой картинке это выглядит более органично.

menu_max_entries (по умолчанию: 20)

Число пунктов загрузки. Если у вас больше чем 20 или вы уменьшите параметр, список будет работать с прокруткой. Я уменьшил до 15.

menu_bar_min_width

menu_text_normal

Цвет текста пунктов загрузки, используйте RGB коды, например: 0xff002f. Это красный цвет. RGB коды можно сгенерировать в GIMPе:

menu_text_select

boot_text_options

boot_text_normal

Цвет текста опций загрузки

infobox_bg

Фон информационного поля

infobox_text_normal

Цвет текста информационного поля

menu_bar_color

hide_reboot (по умолчанию: 0)

Поставим 1, исчезнет кнопка перезагрузки (F9)

hide_poweroff (по умолчанию: 0)

Поставим 1, исчезнет кнопка poweroff (F10)

disable_num_key (по умолчанию: 0)

Эта опция позволяет выбирать пункты загрузки нажатием соответствующей клавиши, например нажав "1" вы выберите первый пункт загрузки. Если вам это не надо, смело ставьте 1.

hide_help (по умолчанию: 0)

Поставим 1, останемся без возможности вызова помощи (F1) вполне можно пережить

hide_lang (по умолчанию: 0)

Ставим 1, прячем кнопку выбора языка (F2)

custom_width, custom_height, custom_depth

По умолчанию разрешение картинки 800x600x16, если хочется сделать картинку больше, делаем так как на примере: custom_width=1024

custom_height=768

Выбранные параметры должны поддерживаться BIOS-ом.

panel_normal

Цвет Заголовков в Помощи и самого пункта help

panel_title

Цвет текста отображения функциональных клавиш (Fn)

Ну вот, теперь, после проделанной работы, собираем и устанавливаем файл нашей темы.

Теперь, когда заменена картинка и сделаны все настройки в конфигурационном файле, нужно скомпилировать (собрать) файл-тему.

Распакуйте его и запустите msys.bat :

Если вы распаковали архив по адресу C:\, то пишите в консоли команду:

cd /c/gfxboot - это переместит действие в целевую папку (пробел только после cd и никаких двоеточий!).

Если вы распаковали исходные файлы в другое место, значит сочините свою команду, начинаться она будет с "cd" а остальное пишите по примеру -

cd /буква диска/папка где лежат файлы

Затем вводим команду make и снова жмём Enter:

После этого находим в папке gfxboot файл message_en, это и есть новая GfxBoot тема.

Можно переименовать файл, дать своё название и обязательно пережать в GZ архив (это умеет делать архиватор 7z). Кликам по файлу правой кнопкой мыши, выбираем наш 7-Zip архиватор и в контекстном меню выбираем "Добавить к архиву…":




Здесь всё просто:
1. Скачиваем unifont.hex.gz


graphicsmode -1 640:480
font /unifont.hex.gz

timeout 30
default 0
graphicsmode -1 640:480

font /unifont.hex.gz

title Memtest86+ 4.20
map --mem /MEMTEST.IMG (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1
boot

title Victoria 3.52 DOS

map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1
boot



map () (hd0)
map (hd0) ()
map --rehook
find --set-root --ignore-floppies --ignore-cd /ntldr
chainloader /ntldr



map () (hd0)
map (hd0) ()
map --rehook
find --set-root --ignore-floppies --ignore-cd /bootmgr
chainloader /bootmgr

title Выключение ПК
halt





Использование тем Gfxboot.

При копировании статьи просьба указывать и автора.
С уважением, GRomR1.

Загрузочная флешка у нас есть. Как добавлять на нее программы мы научились. А как же украсить теперь её? Предлагаю добавить поддержку русского языка, и тем Gfxboot.


Поддержка русского языка в Grub4Dos.

Здесь всё просто:
1. Скачиваем unifont.hex.gz
2. Кидаем его в корень флешки (можно не в корень, но надо будет изменить путь)
3. Пишем в самое начало menu.lst:

graphicsmode -1 640:480
font /unifont.hex.gz
4. Переименовываем заголовки нашего меню.
5. Получаем следующее (я еще добавил команду автоматического выбора 1 пункта через 30 секунд):
timeout 30
default 0
graphicsmode -1 640:480
#можно поэкспериментировать с 640:480, т.е. поменять на другое значение, и посмотреть что получится
font /unifont.hex.gz

title Memtest86+ 4.20
map --mem /MEMTEST.IMG (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1
boot

title Victoria 3.52 DOS
map --mem /Victoria-v.3.52.3.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1
boot

title Поиск и загрузка Windows NT/2000/XP
find --set-root --ignore-floppies --ignore-cd /ntldr
map () (hd0)
map (hd0) ()
map --rehook
find --set-root --ignore-floppies --ignore-cd /ntldr
chainloader /ntldr

title Поиск и загрузка Windows Vista/7
find --set-root --ignore-floppies --ignore-cd /bootmgr
map () (hd0)
map (hd0) ()
map --rehook
find --set-root --ignore-floppies --ignore-cd /bootmgr
chainloader /bootmgr

title Выключение ПК
halt

6. Сохраняем в кодировке UTF-8. В AkelPad это будет выглядеть так:

7. Готово. Проверяем в MobaLiveCD.

И как вы наверно заметили грузиться стало несколько дольше, всё таки если русский язык не так нужен советую отказаться от его использования в меню, кто знает что будет в следующей версии и как он будет там работать, тоже и касается использования GfxMenu, о котором речь пойдет дальше.

Использование тем Gfxboot.

1. Скачиваем тему с

6 March 2014 в 20:14 Комментарии: 24 Вячеслав Гердий

Продолжаю писать на тему, как создать загрузочную флешку. Но, сегодня не будут, рассмотрена очередная программа для этого дела, сегодня я расскажу, как создать загрузочную флешку используя Grub4DOS.

Я не буду особо глубоко рассказывать, что такое «Grub4DOS» В конце поста дам ссылку на Русскую документацию, на тот случай, если Вас заинтересует данный загрузчик, и Вы захотите изучить его.

По теме:
Загрузочная флешка, средствами Windows. Как создать?

Как создать загрузочную флешку с Windows 8
Создаём загрузочную флешку с Windows без проблем.

Grub4DOS – Если говорить грубо, то - Это загрузчик, который позволит нам (В данном случае) разместить на «флэшке» несколько операционных систем «Windows 7 8 XP, Ubuntu » При загрузке с «флэшки» появится, возможность выбрать и установить одну из них. Так же мы можем кинуть на «флешку» различные утилиты для проверки чего либо, например, для проверки оперативной памяти, или, утилиту для сброса пароля, и многое другое. Возможностей, одним словом много!

Если Вам интересно тема сброса пароля на вход в Windows, как на 7, так и на XP или 8 прочитайте эту статью.

Теперь приступим к задуманным планам и создадим загрузочную флешку. На USB мы размести следующие вещи:

Windows 7 – Для её установки.
- Windows 7 Lite – Пригодится, если вдруг, сбой основной системы.
- Ubuntu – Как для установки, так и для ознакомления без неё.

Для примера этого, хватит.

Как создать загрузочную флешку на основе Grub4DOS?

Первым делом Вам нужно скачать вот этот архив . Распакуйте содержимое куда угодно и следуйте дальнейшим действиям. Ещё, не забудьте отформатировать флешку, как предлагает Windows по умолчанию, то есть в FAT 32.

Для начала необходимо сделать флешку загрузочной. В папке «GRUB» запустите файл «grubinst_gui.exe» теперь нужно правильно выбрать нашу флешку.

Будьте внимательны !!! Если Вы выберете за место флэшки системный диск, то при следующем включении ПК, Вы будет приятно удивлены. Ваша Windows не загрузится!!!

Поэтому будьте внимательны, и прочитайте дальше то же внимательно!!! Отметьте пункт « Disk » теперь в выпадающем списке выбираем флешку.

Первый вариант выбора флэшки, быстрый ! Ориентируйтесь по её размеру. В данном случае, моя флэшка под цифрой (2) так как, она на 4 гига, соответственно, 3820М больше похоже на неё. Под цифрой один (1) это системный диск, вот его выбирать не нужно. Под цифрой три (3) ещё одна флешка, но мне она не нужна для дальнейших действий.

Второй вариант выбора флэшки, надёжный ! В скобках каждый диск отмечен как (HD0, HD1…) поэтому идём сюда и смотрим номер каждого устройства. « ПКМ по мой компьютер > управление компьютером > управление дисками».

Видим, что флэшка находится под « Диск 1 » соответственно в программе нужно выбрать « HD1 » как я и сделал. « Диск 2 » это моя вторая флэшка, которая не нужна и « Диск 0 » это мой HDD на котором находятся «C:\ D:\» и прочие.

Теперь вы точно сможете правильно определить флешку. Как только Вы это сделали, нажимаем кнопку «INSTAL» видим консоль.

Все хорошо, нажимаем «ENTER» консоль закроется, и продолжаем дальше.Теперь из папки USB перекиньте в корень Вашей флэшки следующие файлы.

Menu.lst – Этот файл мы будем использовать для построения меню.
- grldr – Сам загрузчик, возьмите его из папки « grub4dos-0.4.6a ».
- MobaLiveUSB_0.2.exe – Зачем эта программа, чуть поже!

Вот теперь наша флэшка уже загрузочная и теперь можно это проверить. Откройте файл « menu.lst » и напишите в нём следующие две строчки.

title switch off

halt

Теперь нам нужна программа « MobaLiveUSB_0.2.exe » которую мы уже скинули в корень флэшки. Она нам нужна, что бы проверять работу загрузочной флэшки. Не будем же мы постоянно перезагружать ПК или использовать виртуальную машину, что бы проверить, как работает флэшка!

Запускайте программу и в открывшемся окне жмите кнопку «Non» теперь видим, как работает флэшка!

Если нажать «ENTER» то компьютер выключится (В данном случае, закроется программа). Кстати говоря, названия пунктов меню можно менять, например, за место «switch off» можно написать, что угодно. (Но, пока Русский язык не поддерживается, за место Русских символов будет отображать, что попало. Об этом ниже)

В общем, именно так будет выглядеть загрузочная флэшка! Если перезагрузить компьютер и загрузиться с неё.

Я предлагаю исправить внешний вид флэшки на, более симпатичный и красивый!

Опять идём в папку USB и скидываем из неё файл « WinKomp.gz ». теперь в самый верх файла «menu.lst» напишите строчку:

gfxmenu (hd0,0)/WinKomp.gz

Сохраните файл и проверяем, что получилось у нас после этих действий. А получится вот что!

Как видим внешний вид значительно изменился. Так на много лучше, чем смотреть на чёрный экран и белые буквы. (Теперь пункты мню можно обзывать на Русском. Возникнут проблемы пишите в комментарии)! Именно такой вид будет , когда компьютер загрузится с флэшки. Внешний вид поменялся благодаря теме, которую мы подключили «WinKomp.gz» или фоновая картинка, не знаю как правильно!

Если Вам захочется создать свою тему, то подпишитесь на обновления блога. Скоро будет пост по этой теме. А пока скачайте фотошоп!

Что мы сделали на данный момент.
- На данный момент флэшка уже загрузочная.
- Изменили внешний вид.
- Она умеет выключать компьютер. (Сделано просто так, для проверки)

Теперь давайте добавим на флешку Windows 7 что бы можно было её установить! Скачайте ISO образ Windows 7 или возьмите уже скачанный. Откройте его программой, например «UltraISO» и все файлы распакуйте в корень флэшки. Теперь снова откройте «menu.lst» и добавите туда следующие, после « gfxmenu (hd0,0)/WinKomp.gz »

title Установить Windows 7

map --unmap=0:0xff

map –unhook

root (hd0,0)

chainloader /bootmgr

Теперь, когда компьютер будет загружен с этой флэшки, можно установить «Windows 7» Опять проверяем флешку, выбираем стрелками на клавиатуре пункт «Установить Windows 7» и жмём «ENTER» смотрим, что происходит. Если установка пошла, значит все верно. Вырубаем MobaLiveUSB !

Безусловно, стоит сказать о том, что можно просто создать папку, допустим «OS» положить туда цельный iso образ Windows и запустить установку, таким образом, и не нужно не чего распаковывать в корень флэшки!

Можно, но тут нас будет ждать проблема. В процессе установки, после выбора языка появится ошибка, что не получается найти «CDROM» в этом случаи придётся качать виртуальный драйвер «CDROM-а» и устанавливать его руками в процессе установки используя «cmd». Так же этот процесс можно автоматизировать, но об этом не в рамках этого поста.

Добавим – Windows 7 Live . Я не стал замораживаться, скачал то, что, первое на глаз попалось. Подробнее о «Win 7 Live» можно прочитать и там же скачать.

Создадим в корне флэшки папку и дадим ей имя, например «OS» закинем в неё «ISO образ - Win 7 Live» далее открываем все то же «menu.lst» и пропишем в нём.

title Запуск Windows 7 Live

map /OS/Win7-Live.iso (0xFF) || /OS/Win7-Live.iso (0xFF)

map –hook

chainloader (0xFF)

Заметьте! ISO образ должен иметь название «Win7-Live.iso» или переименуйте его и измените запись во второй строке! Теперь если основная система убьётся, можно запустить Live и выполнить действия по обстоятельствам.

Добавим – Ubuntu . Что бы запустить Ubuntu для ознакомления без установки или установить её добавьте следующие в файл меню.

title Запуск Ubuntu

find --set-root /OS/ ubuntu.iso

map /OS/ubuntu.iso (0xff)

map –hook

root (0xff)

kernel /casper/vmlinuz file=cdrom/preseed/ubuntu.seed noprompt boot=casper persistent floppy.allowed_drive_mask=0 ignore_uuid iso-scan/filename=/OS/ ubuntu.iso splash -- locale=ru_RU.UTF-8

initrd /casper/initrd.lz

Образ Ubuntu ISO должен лежать в папке «OS» а так же иметь имя «ubuntu.iso» В прицепи не чего особенного! Выбираем «Запуск Ubuntu» когда она загрузится, в ней можно полноценно работать или установить, для этого на рабочем столе имеется соответствующий значок, ярлык, кому как удобно…

Добавим программу на флешку ! Предлагаю ещё закинуть программу, для сброса пароля пользователя. Названия программы «Active Password Changer» Из папки « USB/ soft » скиньте на флешку « Pwd-changer-boot-cd.iso » и в файл меню пишем.

title Сброс пароля

map (hd0,0)/soft/Pwd-changer-boot-cd.ISO (hd32)

map –hook

root (hd32)

chainloader (hd32)

boot

Как Вы уже могли заметить, программа должна лежать в папке «soft» и иметь имя «Pwd-changer-boot-cd.ISO» теперь если что, можно воспользоваться флэшкой и скинуть пароль от своей или чужой учетной записи.

Это не та программа, о которой шла речь в прошлом посте. Эта, думаю, намного проще и удобнее, понятна для использования. О ней будет пост, !

Можно запустить « MobaLiveUSB » и проверить, как работает. Запускаем и выбираем пункт «Сброс пароля» и смотри, работает программа или нет. Как видно на картинке ниже, все хорошо работает.

Теперь внешний вид загрузочной флэшки при загрузки компьютера с неё будет выглядеть вот таким образом.

Теперь Вам известен ещё один отличный способ, как создать загрузочную флешку, причем мульти загрузочная с несколькими системами, с программами на всякий случай жизни. В данном посте, я только постарался описать все как можно подробнее, описать ключевые моменты !

В одном посте не возможно рассказать все про «grub4dos» об этом можно заводить целый блог.

На этом я буду заканчивать этот пост, надеюсь, мой рассказ был понятен и полезен для Вас! Напомню – будьте аккуратны при выборе флэшки в программе «grubinst_gui».

Если будите экспериментировать, то настоятельно рекомендую использоваться виртуальную машину. Об этом можно почитать и .

Позволяющий создавать мультизагрузочные конфигурации.
Данный загрузчик позволяет загружаться с различных устройств и разделов, поддерживает загрузку различных образов (iso, img, ima, bin ...), понимает файловые системы FAT12, FAT16, FAT32, NTFS, EXT2, EXT3 и многое другое.

СОЗДАНИЕ

Способ первый. Для него нам потребуется программа grubinst которая пропишет данные о загрузчике grub4dos в mbr область требуемого устройства, и исполняемый файл загрузчика grldr .

Содержимое архива grubinst_1.0.1_bin_win.zip.

Содержимое архива grub4dos-0.4.6a-2013-04-01.7z.

Распаковываем содержимое архива grubinst . Вставляем флешку в компьютер. Запускаем из распакованных файлов grubinst_gui.exe .
В открывшемся окне, рядом со словом Disk из списка выбираем нашу флешку, обычно самый последний пункт из выпадающего списка. Если выпадающий список не содержит никаких значений, то нужно нажать на кнопку Refresh .
В выпадающем списке Part List выбираем значение Whole disk (MBR) . Аналогично, если список не содержит значений, жмем на Refresh .


Нажимаем на кнопку Install . После чего в ответ получим окно с сообщением о том что все успешно установлено.


Нажимаем на клавишу ENTER .

Теперь осталось только скопировать в корень нашей флешки файлы grldr и menu.lst . Последний представляет собой файл конфигурации отображаемого меню, которое мы увидим после загрузки с нашей флешки. Берем данные файлы из архива grub4dos-0.4.6a-2013-04-01.7z . Файл menu.lst лежит в папке sample .

Должно получиться так...


Создание загрузочной флешки grub4dos завершено.

Теперь выставляем приоритет загрузки в BIOS компьютера на нашу флешку, и загружаемся с нее. Результат загрузки показан ниже.

Уже давно хотел написать о том, как создавать свои темы для grub4dos и вот выдалась немного времени, и я решил потратить его с пользой. Если Вы используете «grub4dos» для создания «загрузочных флешек », то, Вам будет интересно, я покажу, как легко создать тему для «grub4dos»

Для создания своих тем для «grub4dos» вам понадобится только «фотошоп» и архив с нужными для этого дела файлами. Который Вы сможете скачать с блога!

Как создаются темы для grub4dos?

Скачайте . В нём лежит папка с названием «gfxmenu» положите её в корень диска «C:\» Теперь нужно взять либо уже готовую картинку с интернета или нарисовать свою в «Фотошопе» Предлагаю второй вариант.

В «фотошопе» создайте новый проект, и размер должен быть «800×600» В принципе тут все на ваше усмотрение, рисуйте, то, что Вам нужно.

Как только картинка будет готова, сохраните её в папку «files» которая находится в папке «gfxmenu». Имя картинки должно быть таким «back.jpg» и самое важно:

Значение, качество не должно превышать больше чем «32» иначе в место картинке, в момент загрузки компьютера с флешки, Вы получите просто черное окно без своей темы!

Так же стоит добавить про разрешение самой картинки «800×600» тут все зависит от вашего «BIOS-a» какой-то bios потянет большие расширение, а какой-то нет!

После того, как картинка была сохранена в папку «files» с именем «back» и в формате «jpg» найдите в папке «gfxmenu» BATфайл «repack.bat» теперь остаётся только запустить его, после, в этой же папке появится файл «message» бес расширение.

Этот файл и есть Ваша тема для «grub4dos» теперь вы можете её использовать в «загрузочных флешках». Ссылка по теме.

Это был первый вариант, как создавать свои темы для grub4dos! На мой взгляд, самый удобный и простой. О других вариантах, будет другой пост. Что бы применить полученную тему в файл «menu.lst» добавьте строку!

просмотров