- Конфигурация файла Меню
- Опции Дисплея
- Назначение параметров по умолчанию
- Защита пунктов загрузки паролем
- Использование подменю
- Использование команды «find —set-root»
- Настройка Grub: отображение процесса загрузки Linux, отключаем Splash Screen
- Отображаем процесс загрузки (опция quiet)
- Отключаем Splash Screen (опция splash)
Конфигурация файла Меню
Следует отметить, что некоторые команды, такие как (e.g. password , fallback , и многие другие) действуют только через конфигурационные файлы – они не работают при введении их через командную строку. Конфигурационные файлы используются, чтобы заскриптовать (автоматизировать) загрузку пунктов меню. Меню по умолчанию имеет текстовый вид, но при желании легко можно добавить фоновую картинку, прописав. (об этом позже).
Все команды в конфигурационном файле должны быть в нижнем регистре. Все заголовки пунктов загрузки должны начинаться с команды title , это позволит отображать текст следующий после этой команды на экране загруженного меню. (Например: title Boot Windows XP Будет виден текст: “Boot Windows XP”.
Когда меню загружено и мы видим пункты загрузки, мы может отредактировать любой из них, выбрав его и нажав [e], но весь отредактированный текст остаётся в оперативной памяти и не сохранится в самом файле.
Пример файла menu.lst (он входит в пакет поставки Grub4dos):
Примечание — все строки начинающиеся со знака # не отображаются и не используются, чтобы их задействовать удалите этот символ.
Опции Дисплея
Цвета меню могут быть назначены следующей командой (по умолчанию мы видим белый текст на чёрном фоне, при выборе пункта меню цвет текста становится чёрным на фоне белого курсора):
Где a=это текст, b=общий фон, c=цвет текста выбранного пункта, d=цвет курсора. Цвет b и d должен быть одним из перечисленных — black, blue, green, cyan, red, magenta, brown, light-gray Цвет a и c должен быть одним из перецисленных — black, blue, green, cyan, red, magenta, brown, light-gray, dark-gray, light-blue, light-green, light-cyan, light-red, light-magenta, yellow and white. Например следующий ниже текст menu.lst приведйт к отображению светло-голубого текста на синем фоне с красным курсором и выбранный текст будет светло-красным (Смотрите Фото 1 ниже):
Фоновое изображение (splash) должно быть в формате .xpm (которое может быть задавлено gzip-ом),иметь размер изображения 640×480 пикселей и максимум 14 цветов.
Чтобы почитать про изготовление загрузочных картинок загляните (сюда).
Чтобы отобразить картинку splash.xpm.gz (в текущей корневой директории) Следующая команда, должна быть использовании в файле menu.lst
Чтобы отобразить splash.xpm.gz (находящуюся на 1-ом разделе 1-го жёсткого диска) команда будет иметь вид:
По умолчанию, цвет текста будет белым, а выбранный пункт меню поменяет цвет текста на чёрный на фоне белого курсора. Чтобы это изменить исползуйте следующую запись в menu.lst:
Где RR это красный, GG это зелёный, а BB синий. Нумерация цветов с виде HEX. В следующем примере текст будет светло-фиалетовый (В виде HEX как AB82FF) курсор будет светлоголубым (В виде HEX как 191970) и цвет в курсоре тоже будет светло-фиалетовым – Смотрите Фото 2 внизу.
Назначение параметров по умолчанию
Можно назначить один из пунктов к загрузке по умолчанию, исползуя команду default . Если команда timeout тоже указана, система будет ждать указанный после неё период времени, а потом загрузит пункт меню указанный после команды default . Пример задания на 10 секунд ожидания указан в следующем примере:
Чтобы выбрать пункт меню, который загрузится по истечении заданного времени (to be booted after timeout period has completed) делайте следующим образом (default 0=Первый пункт меню, default 1=Второй пункт меню, и.т.д.):
Так же возможно заменить пункт меню загружаемый по умолчанию на последний загруженый пункт используя файл default . Например:
Команда default (hd0,0)/default указывает какой пункт меню будет записан в файл default , находящийся на 1-ом разделе 1-го жёсткого диска (этот файл должен быть скопирован из пакета Grub4dos – не редактируйте его т.к он должен быть размером в 2048 байт). Если вы используете данную функцию, диск на котором находится файл default должен быть записываемым. Пункт меню при этом должен содержать команду savedefault Например:
timeout 10
default /default
title Boot Windows XP
root (hd0,1)
chainloader +1
savedefault
Защита пунктов загрузки паролем
color light-blue/blue light-red/red
timeout 10
default /default
password administrator
Use the ↑ and ↓ keys to highlight an entry. Press ENTER or ‘b’ to boot.
Press ‘e’ to edit the commands before booting, or ‘c’ for a command line.
Use the ↑ and ↓ keys to highlight an entry. Press ENTER or ‘b’ to boot.
Press ‘p’ to gain privileged control.
Как вы видите пропал доступ к редактированию пунетов меню и запуск командной строки. Теперь пользователя просят нажать [p] чтобы ввести пароль, и для успешной загрузи он должен совпасть с указанным нами (в нашем случае это — administrator). Есть так же и возможность использовать зашифрованный пароль и поможет нам в это команда password —md5 за которой следует зашифрованный пароль: “$1$ZjU0$k107noL9DOaClJEu6n6f91”
т.е — administrator.
color light-blue/blue light-red/red
timeout 10
default /default
password —md5 $1$ZjU0$k107noL9DOaClJEu6n6f91
ВНИМАНИЕ! — не генерируйте «md5-сумму” используя сторонние программы и методы, такая сумма будет недопустима в Grub4dos (Читайте Здесь (по Английски разумеется)). Чтобы создать такой красивый зашифрованный пароль, который вы наблюдаете выше, загрузите Grub4dos и нажмите [c] чтобы попасть в командную строку,
затем пишите команду и выполняйте md5crypt — затем введите ваш пароль, и он чудесным образом превратится в зашифрованный в виде ничего незначащих символов md5-суммы (Смотри Фото 3).
Можно так же ограничить доступ к отдельным пунктам меню. После установки пароля, добавляйте команду lock в желаемый пункт загрузки, пока пользователь не введёт пароль (используя [p]) все пункты меню с опцией «lock» будут недоступны:
color light-blue/blue light-red/red
timeout 10
default /default
color light-blue/blue light-red/red
timeout 10
default /default
password —md5 $1$ZjU0$k107noL9DOaClJEu6n6f91
Использование подменю
Используя команду configfile мы можем наделать много вложенных меню, указав ей имя конфигурационного файла, который вы намерены грузить. Например: menu.lst содержит:
color light-blue/blue light-red/red
timeout 10
password —md5 $1$ZjU0$k107noL9DOaClJEu6n6f91
title Boot Options
lock
find —set-root /submenu.lst
configfile /submenu.lst
Будет загружен файл submenu.lst . Файл submenu.lst это файл того же формата, что и menu.lst – но в нём можно поменять гамму, указать другую картинку, добавить новых пунктов загрузки и.т.д.. Так же следует в нём прописать ту же команду, но указывающую на главный файл menu.lst , чтоб была возможность вернуться к нему и не застрять в подменю.
Использование команды «find —set-root»
Команда find —set-root в комбинации с именем файла ищет требуемый файл и делает его корневым/главным для всех команд в текущем пункте меню (или для команд вводимых из командной строки). Например:
Пример приведённый выше показывает поиск на всех поддерживаемых файла hdd.tag и найденое первое устройство, содеожащее этот файл hdd.tag , станет корневым. Загрузочный сектор устройства ( chainloader +1 = первый сектор текущего корневого устройства) будет загружен (chainloaded). Таким образом можно найти и загрузить ОС. Если мы ищем Windows XP , то следующий пример как раз для него:
Учтите, что файл ntldr (и остальные Windows-загрузочные файлы bootmgr и io.sys ) должны быть на устройстве (hd0), иначе с загрузкой Windows ничего не выйдет — Смотрите Здесь, чтобы узнать что делать дальше.
Можно исключит флоппи устройства из поиска командой —ignore-floppies — Например: find —set-root —ignore-floppies /ntldr .
ЗАПОМНИТЕ! — Команда find —set-root иногда ведёт себя неадекватно — Например: Если вы используете команду map, то устройство, на котором вы хотите найти файл, станет невидимым в Grub4dos.
Всегда помните, что поиск остановится, когда вы найдёте тот файл который ищете. Даже используя точное (уникальное как вам кажется) имя файла, можно получить нежелательный результат, если вы забыли (или не знаете), что таких файлов на самом деле больше чем один.
Настройка Grub: отображение процесса загрузки Linux, отключаем Splash Screen
Когда грузится Linux, то обычно отображается Splash Screen (графический экран загрузки). Для того, чтобы выводить текстовую информацию о процессе загрузки и убрать сплеш-скрин, можно воспользоваться опциями ядра quiet и splash , задаваемые в конфигурационном файле загрузчика Grub.
Что это даст? Например, позволит увидеть сообщения ядра о процессе загрузки Linux, также вы сможете увидеть, возникают-ли какие-нибудь неполадки в процессе загрузки. Если же вообще отключить Splash Screen, то может немного увеличится скорость загрузки.
Отображаем процесс загрузки (опция quiet)
Для начала создадим копию конфигурационного файла menu.lst , для этого выполните команду:
cp /boot/grub/menu.lst /boot/grub/menu.lst.old
Откройте файл menu.lst для редактирования, для этого выполните:
sudo gedit /boot/grub/menu.lst
Найдите в нем строки вида:
title Ubuntu 9.04, kernel 2.6.28-13-generic root (hd0,4) kernel /boot/vmlinuz-2.6.28-13-generic root=UUID=c7. 05 ro quiet splash initrd /boot/initrd.img-2.6.28-13-generic
Как вы можете видеть, в параметрах загрузки ядра (строка kernel ) указаны опции quiet и splash .
Если вы удалите опцию quiet , тогда при загрузке Linux вы сможете увидеть информационные сообщения о процессе загрузки, обычно они выводятся со статусами OK , если все идет хорошо или Fail , если что-то не так.
Отключаем Splash Screen (опция splash)
Если вы хотите вообще отключить Splash Screen, тогда нужно убрать опцию splash из опций загрузки ядра. В итоге, строка kernel будет выглядить примерно так:
kernel /boot/vmlinuz-2.6.28-13-generic root=UUID=c7. 05 ro