Boot grub menu lst

Загрузчик Груб ищет файл menu.lst по очереди в /menu.lst, /boot/grub/menu.lst, /grub/menu.lst

* Решётки экранируют коментарии – # вспомогательный текст, игнорируется программой.

Эта статья или раздел нуждается в переводе

Эта страница нуждается в сопроводителе

GNU GRUB это Многосистемный загрузчик. Он является ответвлением от GRUB,(GRand Unified Bootloader), который был разработан Эриком Стефаном Болейном (Erich Stefan Boleyn).

Вкратце, загрузчик – это первая программа, которая загружается при старте компьютера. Она отвечает за загрузку и передачу управления ядру Linux. Ядро, в свою очередь, запускает остальную часть операционной системы.

В данный момент, GRUB де-факто является стандартным загрузчиком LINUX, и в скором времени будет заменён на GRUB2. Когда это случится, "GRUB" сменит свое текущее название на "GRUB Legacy".

Contents

Установка

Пакет GRUB устанавливается по умолчанию в процессе установки Arch Linux. Если Вы первоначально не отметили для установки данный пакет, его можно установить с помощью:

После установки пакета дополнительно необходимо установить загрузчик GRUB в загрузочный сектор или на раздел диска, чтобы он смог выполнять загрузку операционной системы(систем). Этот процесс описан в главе Установка загрузчика.

Настройка

Файл настроек расположен в /boot/grub/menu.lst . Отредактируйте этот файл в соответствии с Вашими требованиями.

  • timeout # — время ожидания (в секундах) перед загрузкой операционной системы по умолчанию ( default ).
  • default # — номер записи, соответствующий операционной системе, загружаемой по умолчанию по истечении времени timeout .

Пример файла настроек (директория /boot расположена на отдельном разделе):

Определение корневой директории для GRUB

GRUB должен обладать информацией о том, где в системе находятся его файлы. Это важно, поскольку таких мест может быть несколько (в случае с несколькими операционными системами). Файлы GRUB всегда располагаются в директории /boot , которая может находиться на отдельном разделе.

Если Вы не уверены где в Вашем случае находится /boot , используйте команду find во встроенной командной оболочке GRUB. Для того чтобы открыть командную оболочку, наберите:

Ниже приведен пример для систем без отдельного раздела под /boot , т.е. когда /boot является обычной директорией внутри корневой директории / :

Следующий пример для систем с отдельным разделом /boot :

GRUB найдет нужный файл и выведет местоположение файла stage1, нарпимер:

Полученное значение должно быть указано в строке root в Вашем файле настроек. Для выхода из командной оболочки наберите quit .

Двойная загрузка с Windows

Добавьте следующие строки в конец Вашего /boot/grub/menu.lst (подразумевается, что Windows установлена на первый раздел первого диска):

Если Windows расположена на другом жестком диске, необходимо использовать команду map. Тогда Windows будет считать, что она установлена на первый жесткий диск. Предположим, что Windows установлена на первый раздел второго диска:

Двойная загрузка с GNU/Linux

Вы можете указать настройки, подобные тем, которые определяет сам Arch Linux во время установки, например:

Однако могут потребоваться дополнительные параметры, или может не использоваться начальный RAM диск. Проверьте содержимое файла /boot/grub/menu.lst в других установленных дистрибутивах, чтобы выяснить корректные значения параметров загрузки, но лучшим решением будет использование команд chainloader and configfile

chainloader and configfile

Для облегчения процесса дальнейшего сопровождения системы, рекомендуется использовать команды chainloader и configfile для загрузки дистрибутивов, имеющих механизмы "автоматической" настройки параметров GRUB (например, Debian, Ubuntu, OpenSUSE). Таким образом, дистрибутивы будут самостоятельно управлять параметрами своей загрузки, в т.ч. и menu.lst .

  • Команда загрузки chainloader выполнит вызов другого загрузчика, вместо того, чтобы загружать образ ядра. Эта функция удобна в случае, если в загрузочной записи раздела есть установленный загрузчик (например, GRUB). Таким образом, мы можем установить "главный" GRUB в главную загрузочную запись (MBR), и, дополнительно для каждого дистрибутива, установить GRUB в загрузочные записи разделов(PBR), на которых они установлены.
  • Команда configfile сообщает GRUB, что он должен загрузить определенный конфигурационный файл. Эта возможность используется для подгрузки файла menu.lst , который принадлежит другому дистрибутиву. При этом не требуется обязательное наличие отдельно установленного GRUB для этого дистрибутива. Однако главным недостатком такого подхода является возможная несовместимость установленного GRUB с "чужим" menu.lst , поскольку некоторые дистрибутивы вносят существенные модификации в свои версии GRUB.

Например, GRUB устанавливается в MBR, а другой загрузчик (это может быть GRUB или LILO) уже установлен в загрузочный сектор (hd0,2) .

В данном случае достаточно прописать в menu.lst :

Если загрузчиком в (hd0,2) является GRUB, можно использовать команду configfile :

Команда chainloader также может быть использована для запуска загрузчика расположенного в MBR на другом диске.

Установка загрузчика

GRUB может быть установлен с отдельного носителя (например, с LiveCD), или путем установки из-под запущенного Arch Linux. Переустановка загрузчика GRUB требуется довольно редко, в ней нет необходимости, когда:

  • Изменился конфигурационный файл.
  • Обновлен пакет GRUB.

Установка/переустановка загрузчика необходима когда:

  • Загрузчик ещё не установлен.
  • Другая операционная система при установке затерла существующий загрузчик.
  • Загрузчик не стартует по неизвестным причинам.

Несколько замечаний, прежде чем мы продолжим:

  • Убедитесь, что Ваш файл настройки /boot/grub/menu.lst не содержит ошибок. Обратитесь к Определение корневой директории для GRUB для того, чтобы убедиться, что имена устройств заданы корректно.
  • Для того чтобы большинство версий BIOS корректно распознало наличие загрузчика, GRUB должен быть установлен в MBR (первый сектор жесткого диска), или в первом разделе первого устройства хранения данных. Для того чтобы позволить различным дистрибутивам управлять настройкой своих опций загрузки, можно использовать несколько экземпляров GRUB, см. chainloader and configfile .
  • Для некоторых случаев потребуется установка загрузчика GRUB из-под chroot окружения, например для установки загрузчика на RAID-тома, или в случае, когда загрузчик вышел из строя, и Вы не можете загрузить Вашу операционную систему. Для этого вам необходимо выполнить Change root из-под LiveCD, или другой инсталляции Linux.
  • Файлы *stage* должны находиться в /boot/grub , что может не соответствовать действительности, если загрузчик не был установлен в процессе установки системы. Данное затруднение может быть разрешено путем копирования необходимых файлов: cp -a /usr/lib/grub/i386-pc/* /boot/grub .

Сначала откройте командную оболочку GRUB:

Используйте команду root с параметром, полученным в результате команды find (см.Определение корневой директории для GRUB ), чтобы указать GRUB, какой из разделов содержит stage1 (и, соответственно, там же находится и /boot ):

Установка в MBR

Следующий пример устанавливает загрузчик GRUB в MBR первого жесткого диска:

Установка в раздел

Следущий пример устанавливает загрзчик GRUB в первый раздел первого жесткого диска:

После выполнения команды setup , введите команду quit , для того, чтобы выйти из командной оболочки. Если Вы используете chroot, выйдите из chroot окружения и отмонтируйте разделы (см. exit your chroot and unmount partitions). Теперь выполните перезагрузку системы.

Альтернативный метод (grub-install)

Используйте команду grub-install с именем целевого устройства для установки загрузчика. Например, для установки загрузчика в MBR первого диска:

grub-install сообщит, удачно ли прошел процесс установки. Если вонзникли проблемы, воспользуйтесь методом установки из командной оболочки GRUB.

Советы и трюки

Замечания по дополнительным параметрам.

Загрузка в графическом режиме

Для разного рода "украшений" можно использовать grub-gfx. GRUB2 также предлагает расширенные графические возможности, такие как фоновые изображения и растровые шрифты.

Видеорежим

Вы можете использовать один из видеорежимов, описанных в примере menu.lst , однако, если Вы решили задействовать широкоэкранный LCD монитор с использованием его родного разрешения, то нижеперечисленные советы помогут Вам достичь желаемого.

В статье Wikipedia, представлен расширенный список разрешений фреймбуфера (тех, которые не входят в стандарт VBE). Но при использовании разрешения 1440×900 ( vga=867 ) возникают проблемы. Это связано с тем, что производители видеокарт не ограничены стандартом VBE 3, и они могут выбирать номера кодов для видеорежимов, как им заблагорассудится. Именно поэтому эти коды различаются для разных видеокарт (иногда даже и у одного и того же производителя).

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

vbetest

  1. Установите пакет lrmiAUR [ссылка недействительна: сохранено в aur-mirror] , который содержит утилиту vbetest (пользователи системы x86_64 должны использовать #hwinfo вместо vbetest)
  2. Запустите vbetest от имени суперпользователя
  3. Запомните значение в [ ], соответствующее выбранному Вами видеорежиму
  4. Нажмите q для выхода из vbetest
  1. Вы можете проверить выбранный вами видеорежим, достаточно запустить от имени суперпользователя команду vbetest -m . Вы должны увидеть таблицу такого плана
  • Прибавьте 512 к значению, которое Вы получили на предыдущем шаге, и пропишите его в параметр vga для соответствующей записи menu.lst
  • Перезагрузите машину и любуйтесь полученным результатом
  • Например, vbetest выдает на компьютере:

    Значит искомое значение – это 357. Затем, 357 + 512 = 869, значит необходимо указать vga=869. Добавляем полученное значение к строке kernel в файле menu.lst , как показано ниже:

    hwinfo

  1. Установите пакет hwinfo из [AUR].
  2. Запустите команду hwinfo –framebuffer с правами пользователя root.
  3. Выберите код, соответствующий желаемому разрешению.
  4. Используйте полученный 6-ти значный код с префиксом 0x для параметра vga= в соотв. записи kernel в menu.lst . Если Вы предпочитаете не использовать префикс 0x, тогда необходимо перевести значения кода из шестнадцатеричной системы в десятичную.

Пример вывода команды hwinfo:

Соответственно срока в menu.lst должна иметь вид:

Видеорежимы, детектируемые GRUB

Существует достаточно простой метод определения кода видеорежима с использованием соотв. возможностей самого GRUB.

В строке kernel укажите, что ядро должно предложить пользователю самостоятельно выбрать код видеорежима во время загрузки.

Теперь перезапустите систему. GRUB предложит на выбор список доступных основных видеорежимов, также доступна опция сканирования, для детектирования дополнительных видеорежимов.

Вы можете выбрать любое значение (нужно запомнить это значение, оно понадобится на следующем шаге) и продолжить процесс загрузки.

Выбранное Вами значение кода видеорежима является шестнадцатеричным, чтобы использовать его как опцию в строке kernel, переведите данное значение в десятичную систему.

Теперь замените значение параметра vga ask на десятичное значение кода видеорежима. Например, строка kernel для режима [369] 1680x1050x32 будет выглядеть:

Метки разделов

Если Вы периодически меняете (или планируете менять) расположение разделов на диске, или меняете местами сами устройства жестких дисков (вообще, любые действия, которые приводят к тому, что у одного и того же устройства может меняться имя в системе), тогда для Вас имеет смысл адресовать загрузочные устройства не по именам вида (hdX,Y) а по меткам. Для установки метки раздела формата ext2, ext3, ext4 используется команда:

Задайте для устройства метку длиной не более 16 символов, и не содержащую пробелов, в противном случае GRUB не сможет корректно распознать подобную метку. Затем пропишите в menu.lst строку вида:

Парольная защита

Вы можете установить пароль в конфигурационном файле GRUB для тех операционных систем, которые необходимо защитить от несанкционированной загрузки. Пароль загрузчика GRUB удобно использовать, когда аналогичная возможность BIOS либо не доступна, либо не предоставляет необходимой функциональности.

Сначала выберите пароль (постарайтесь его не забыть в дальнейшем), затем зашифруйте его:

Затем добавьте строку с зашифрованным паролем в конфигурационный файл GRUB (строка с паролем должна находиться в начальной части файла, чтобы GRUB корректно её обработал):

Затем, для каждой операционной системы, которую Вы желаете защитить, добавьте команду lock :

Перезагрузка в ОС по выбору

Если Вам часто приходится перегружаться в другую ОС (например, Windows), иногда бывает утомительным следить за процессом перезагрузки, чтобы не пропустить момент выбора нужной ОС, и случайно, не загрузиться опять в систему по умолчанию. Для решения данной проблемы существует возможность назначения временной "ОС по умолчанию".

Предположим у нас есть файл menu.lst с подобными настройками:

Текущей ОС по умолчанию является Arch (0). Измените значение default 0 на default saved – теперь при загрузке, номер ОС по умолчанию будет взят из файла default в папке GRUB. Запись в файл default выполняет команда savedefault, поэтому добавьте savedefault 0 в конец объявления параметров Windows. Таким образом, мы добьемся того, что когда загружается Windows – системой по умолчанию снова становится Arch (даже если до этого системой по умолчанию была Windows).

Теперь, всё, что нам нужно – это найти простой способ установки значения ОС по умолчанию. Такую возможность предоставляет команда grub-set-default . Например, чтобы из Arch перегрузиться сразу в Windows, наберите команду:

Возможно Вы захотите разрешить пользователям выключение системы без необходимости ввода пароля root. Такую же процедуру необходимо выполнить и для команды grub-set-default .

Взаимодействие LILO и GRUB

Если в ваше системе установлен пакет LILO, удалите его.

При выполнении некоторых задач (например при компилировании ядра с командой make all ) пакет LILO может значиться в зависимостях, и может быть автоматически установлен в систему, при этом загрузчик GRUB будет затерт.

Загрузочная дискета GRUB

Для начала отформатируйте дискету:

Затем подмонтируйте её:

Установите GRUB на дискету:

Скопируйте Ваш menu.lst на дискету:

И, в завершение, отмонтируйте дискету:

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

Решение проблем

GRUB Error 17

В случае неразберихи с таблицей разделов, всё что Вы можете наблюдать при попытке загрузки системы – это лаконичное сообщение "GRUB error 17". Существует несколько причин, которые могут привести к искажению таблицы разделов. Чаще всего подобные проблемы связаны с изменением порядка разделов, в результате работы пользователя с программой GParted. Например, Вы удалили раздел /dev/sda6 , затем изменили размер раздела /dev/sda7 , и, наконец, создали заново раздел, который, как ожидалось, снова должен стать /dev/sda6 . Однако этот новый раздел получит, например, имя /dev/sda9 .

Исправить таблицу разделов достаточно легко. Для этого загрузитесь с Live-CD, войдите в систему как root и запустите команду:

Затем войдите в режим e[x]tra/expert. Далее [f]ix the partition order, и сохраните таблицу [w]rite. Затем выйдите из программы fdisk. Проверить состояние таблицы разделов после исправления можно с помощью команды fdisk -l . Теперь осталось исправить параметры GRUB, см. предыдущую секцию Установка загрузчика.

Обычно, всё что Вам нужно – это указать корректное расположение директории /boot и перезаписать загрузчик, находящийся в MBR. Например:

Более детальная информация о "GRUB Error 17" доступна по ссылке

Случайная установка GRUB в раздел Windows

Если Вы случайно установили GRUB на раздел с Windows, GRUB запишет определенные данные в загрузочный сектор раздела, затерев при этом ссылку на загрузчик Windows.

Для восстановления загрузочной записи Вам понадобится загрузочный диск с консолью восстановления (Windows Recovery Console) для вашей версии Windows. Поскольку многие поставщики не предоставляют загрузочные диски для восстановления (а создают скрытые разделы для восстановления системы), Microsoft предоставляет возможность скачать эти инструменты. Если Вы использете XP, перейдите по этой ссылке, чтобы получить возможность использовать дискету в качестве диска восстановления (Recovery CD). Загрузитесь с диска Recovery CD (или войдите в режим Recovery c установочного диска), и запустите команду fixboot , чтобы восстановить загрузочный сектор. После этого вам снова придется устанавливать GRUB, —только теперь установите его в MBR, а не в раздел с Windows—.

Более детальная информация: ссылка [broken link: invalid section] .

Редактирование параметров GRUB из меню загрузки

Выбрав один из пунктов в меню загрузки, Вы можете отредактировать его нажав клавишу e. Использйте автодополнение по клавише Tab, чтобы получить подсказку по доступным именам устройств/разделов, используте клавишу Esc для выхода. После того, как Вы отредактировали запись, можете попытаться загрузить её, нажав клавишу b. Внесенные Вами изменения не будут сохранены.

Ошибка device.map

Если во время устаноки, или во время загрузки появляются ошибки с упоминанием файла /boot/grub/device.map , необходимо выполнить команду:

для того, чтобы GRUB пересоздал таблицу устройств, даже если она уже существует. Это может потребоваться после изменения разделов, или добавления/удаления жесткик дисков.

Выбор ОС при перезагрузке KDE не работает

Если в окне перезагрузки KDE Вы открыли подменю со списком операционных систем, выбрали нужную ОС, перегрузили компьютер, и по прежнему загрузились в ОС по умолчанию, вместо выбранной, тогда проверьте наличие строки

Для начала мы должны иметь флешку или внешний жесткий диск с установленным на него загрузчиком grub4dos, если еще не имеем, то перейдем к руководству, как это сделать – http://nikiton21.ru/blog/post/bootice-flash

Можно начинать, примеры использования menu.lst ниже:

Файл menu.lst начинается с данных строк:

где таймаут – это задержка перед выполнением пункта (если не нажать клавишу), дефолт – он везде дефолт, а вот третий пункт интереснее – он содержит графическое окружение. Без него наш grub будет работать в консольном режиме – разницы, практически, никакой, но мне приятнее смотреть на графический интерфейс + таким образом я получаю возможность отображения кириллицы в пунктах меню. hd0,0 – это всегда то устройство, с которого осуществляется загрузка.

Картинка splashimage grub4dos

Свой шрифт меню grub4dos

Установка цвета меню grub4dos

Установка по умолчанию пункта меню

Раз уж пошла речь про разделение, то давайте создадим подменю, специально для разных разрядностей наших образов семерки. На флешке уже должен быть файл menu_win7.lst – ознакомившись с его структурой, вы сами поймете что к чему. Но как к нему перейти? Магическая строка в menu.lst творит чудеса

Ниже меню для прямой загрузки с ISO образа без записи в память ПК образа

Сразу хочется предупредить про hd32 – это для образов, объемом менее 4 гб 0xff – я так понимаю что с поддержкой файлов более 4 гб.

Загрузка с дискеты, floppy дисковода
Загрузка с CD/DVD-рома
Перезагрузка
Выключение
Найти и загрузить NTLDR загрузчик Windows NT/2K/XP
Найти и загрузить BOOTMGR загрузчик Windows Vista/7/8
Найти и загрузить IO.SYS загрузчик Windows 9x/Me

Установка Windows XP из ISO образа на загрузочном носителе (флешке, usb-hdd) – в 2 этапа. Образ грузится в память.

Запуск Windows XP с 1 раздела

Запуск Windows XP со 2 раздела

Запуск Windows с HDD (первой попавшейся)

Запуск установки Windows 7 c ISO образа с загрузочного носителся – потребуются дополнительные действия по монтированию образа при необходимости (Sift+F10 и т.д. ну народ в курсе) – Образ не грузится в память, как думают некоторые.

Запуск Aklid Live USB/CD (с распакованного)

Запуск Aklid Live USB/CD с ISO образа на диске – образ мапится в память

Запуск Live USB/CD основанных на WIM – образы мапятся напрямую, не в память. (xalex, Sonya, VasAlex, zhuk, nikiton21)

Запуск систем с образов Floppy – дисководов

Запуск Kaspersky Rescue live

Запуск Reset Windows Password

Victoria 3.52c ru

Установка Ubuntu-server 9.10 с ISO образа с флешки или usb-hdd – образ должен находиться в корне. Файлы для установки с ISO образов: boot.img.gz initrd.gz vmlinuz берутя отсюда: http://archive.ubuntu.com/ubuntu/dists/

Запуск Ubuntu Desctop и установка с ISO образа на флешке или usb-hdd

Запуск консоли восстановления XP из ISO образа на флешке

Запуск консоли восстановления для Windows Vista & 7 из ISO образа на флешке

Второй этап установки при установке методом winsetup from usb (также запуск Windows XP)

Первый этап установки при установке методом winsetup from usb

Установка Mandriva с распакованного дистрибутива

Оцените статью
ПК Знаток
Добавить комментарий

Adblock
detector