- Настройка параметров ядра в Grub
- Настройка параметров ядра Grub в системе
- Параметры загрузки ядра в grub.cfg
- Параметры ядра Grub при загрузке
- Linux изменить параметры grub
- Зачем нужен GRUB, если есть LILO/ELILO? [ править ]
- Как установить GRUB? [ править ]
- Как передать свои параметры загрузки ядра? [ править ]
- Где отредактировать параметры ядра? [ править ]
- Как дописать свои собственные пункты меню? [ править ]
- Как выбрать ядро для загрузки по умолчанию (первый пункт grub)? [ править ]
- Как выбрать то, что будет загружаться автоматом? [ править ]
- Как отучить GRUB2 запоминать последний выбранный пункт? [ править ]
- Способ 1 [ править ]
- Способ 2 [ править ]
- Как однократно выполнить загрузку произвольного пункта меню? [ править ]
- Как загрузить Xen? [ править ]
- Как включить работу с последовательным портом? [ править ]
- Загрузка Linux и Windows c разных жестких дисков [ править ]
- Как установить пароль на редактирование параметров ядра? [ править ]
- Как переустановить GRUB? [ править ]
- Как установить/восстановить загрузочную запись grub? [ править ]
- Что за жалобы про BIOS Boot Partition? [ править ]
- Во время загрузки Windows искажена картинка, что делать? [ править ]
Настройка параметров ядра в Grub
Ядру Linux можно передавать различные параметры для изменения стандартного поведения или информирования о нестандартной конфигурации оборудования. Делать это можно непосредственно перед загрузкой ядра или уже во время выполнения. Во время выполнения параметры ядра можно установить отредактировав файлы в подсистеме /proc или /sys. Перед загрузкой параметры передаются с помощью загрузчика Grub.
Если вы хотите изменить или добавить параметры ядра Linux с помощью Grub вам необходимо отредактировать файл шаблона конфигурации или конфигурационный файл загрузчика. Расположение и название файла шаблона зависит от конкретного дистрибутива.
Настройка параметров ядра Grub в системе
Файл шаблона конфигурации Grub в Debian подобных системах находится по адресу /etc/default/grub. Добавьте параметр ядра в виде имя = значение в переменную GRUB_CMDLINE_LINUX_DEFAULT:
sudo vi /etc/default/grub
Здесь же вы можете удалить нежелательные параметры ядра Grub установленные по умолчанию, например, заменить quiet на verbose для подробного вывода информации о процессе загрузки. Затем выполните следующее чтобы обновить конфигурацию загрузчика:
Если такой команды не существует нужно установить пакет grub2-common:
sudo apt install grub2-common
В Fedora и CentOS скрипта update-grub для обновления конфигурации загрузчика нет, поэтому надо вручную сгенерировать новый конфигурационный файл:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Лучше всего добавлять параметры загрузки ядра linux именно этим способом, но давайте рассмотрим ещё несколько альтернативных вариантов
Параметры загрузки ядра в grub.cfg
Если вы не можете воспользоваться способом, описанным выше можно отредактировать непосредственно конфигурационный файл загрузчика который находится по пути /boot/grub/grub.conf. В этом файле нужно найти секцию отвечающую за стандартную загрузку Linux. Обычно, это первая секция menuentry:
Найдите её, а затем в этой секции найдите строчку linux /boot/vmlinuz. в конец этой строки вы и можете дописать свои параметры, в таком же формате. Затем сохраните изменения в файле и перезагрузите компьютер. Ядро загрузится с новыми параметрами. Если вас интересовал вопрос какой командой загружается ядро linux в grub, то это именно команда linux. Синтаксис её такой:
linux параметры_ядра
Этот способ подойдет почти для любого дистрибутива, но более правильным путем будет использовать шаблон конфигурации где это возможно, так как при следующем обновлении дистрибутива все ваши настройки в этом файле могут быть стёрты.
Параметры ядра Grub при загрузке
Загрузчик Grub позволяет также редактировать пункты меню перед запуском системы. Для этого в меню Grub выберите нужный пункт и нажмите клавишу E. Откроется редактор текущей секции меню. Здесь надо, аналогично предыдущему способу найти строчку linux /boot/vmlinuz. и дописать в конец ваши параметры ядра Linux, например, init=/bin/bash:
Затем нажмите кнопку F10 или Ctrl+X чтобы продолжить загрузку с новыми параметрами. Эти параметры будут актуальны до следующей перезагрузки. На этом всё. Надеюсь информация из статьи была для вас полезной.
Источник
Linux изменить параметры grub
Wikipedia сообщает «GNU GRUB (англ. GRand Unified Bootloader) — загрузчик операционной системы от проекта GNU. GRUB позволяет пользователю иметь несколько установленных операционных систем и при включении компьютера выбирать одну из них для загрузки.» GRUB 2
Зачем нужен GRUB, если есть LILO/ELILO? [ править ]
- Поддержка модулей Raid, LVM файловых систем вкупе с интерактивным интерфейсом позволяют выбрать, что загружать откуда угодно в процессе загрузки (а не установки загрузчика).
- Возможность multiboot (для загрузки, к примеру, XEN)
Как установить GRUB? [ править ]
Установить дистрибутив с GRUB либо мигрировать загрузчик вручную.
Последний пункт выполняет генерацию конфига GRUB на основе шаблонов/скриптов в /etc/grub.d/. Редактировать полученный конфиг руками не рекомендуется т.к. он будет уничтожен следующей автогенерацией (выполняемой, к примеру, installkernel-ом).
Проверьте содержимое /etc/sysconfig/grub2: если там нет раскомментированной переменной GRUB_AUTOUPDATE_DEVICE (при смене загрузчика вручную не будет, т.к. она добавляется только alterator-grub), добавьте устройство или их список; если root/boot на md raid1, следует задать список дисков, на которых он размещён — например, не ‘/dev/md0 ‘, а ‘/dev/sdb /dev/sda ‘. После этого стоит выполнить grub-autoupdate.
Как передать свои параметры загрузки ядра? [ править ]
Для однократного изменения таковых при загрузке GRUB следует:
- нажать «e» при курсоре на цели загрузки, соответствующей используемому экземпляру ALT;
- в открывшемся редакторе отыскать строку, начинающуюся с linux /boot/vmlinuz;
- в её конец дописать требуемые параметры, отделив пробелом;
- нажать F10.
Если нужно, чтобы эти параметры ядра передавались ядру при каждой загрузке, надо прописать их в /etc/sysconfig/grub2 и дать команду update-grub ; подробнее см. следующий пункт.
Где отредактировать параметры ядра? [ править ]
Для постоянного применения иных параметров загрузки следует изменить конфигурацию загрузчика.
- Параметры ядра содержатся в /etc/sysconfig/grub2
- После редактирования этого файла нужно вызвать grub-mkconfig -o /boot/grub/grub.cfg
В /etc/sysconfig/grub2 поддерживаются следующие опции:
обновлять ли конфиг файл из файлтриггера установки/удаления ядер (по умолчанию true)
опции загрузки ядра
имя автообновляемого конфигфайла. (по умолчанию /boot/grub/grub.cfg)
добавлять ли симлинки в меню (добавлять, не добавлять, добавлять только /boot/vmlinuz [по умолчанию])
добавлять ли failsafe-пункты (добавлять, не добавлять, добавлять только для /boot/vmlinuz [по умолчанию])
Как дописать свои собственные пункты меню? [ править ]
- Теоретически вам не должно хотеться этого делать. Расскажите (в рассылке sisyphus@, к примеру) зачем вам этого захотелось — возможно, придумается какой-то новый общий случай.
- Если вам всё же хочется — допишите то, что считаете нужным в /etc/grub.d/40_custom
Например, если автоматически не обнаружилась Windows 10, может помочь такое описание пункта меню:
Где UUID — UUID раздела с загрузчиком Windows. Узнать UUID раздела можно командой blkid
- После редактирования этого файла нужно вызвать # grub-mkconfig -o /boot/grub/grub.cfg
Как выбрать ядро для загрузки по умолчанию (первый пункт grub)? [ править ]
Командой installkernel , можно с переменной — к примеру, для текущего:
Внесено предложение (altbug #38888) по добавлению к утилите update-kernel опции -d, —default — установка ядра по умолчанию. Будет ли оно реализовано — неизвестно.
Как выбрать то, что будет загружаться автоматом? [ править ]
данный пункт очень похож на следующий, но на этот пункт есть ссылки
- Выберите нужный вам пункт один раз при загрузке. savedefault должен сохранять ваш выбор на будущее.
- Не нравится такое поведение? Отключите GRUB_SAVEDEFAULT в /etc/sysconfig/grub2
- NB: в 2.00+ поведение изменилось, теперь дополнительные ядра для того же корня спрятаны в субменю «Advanced options».
Как отучить GRUB2 запоминать последний выбранный пункт? [ править ]
Поведение Grub в плане запоминания пунктов зависит от переменных GRUB_DEFAULT и GRUB_SAVEDEFAULT в файле /etc/sysconfig/grub2 . GRUB_DEFAULT может содержать пункт меню для загрузки, либо служебное слово ‘saved’. В случае, если GRUB_DEFAULT=’saved’ (в ALT по-умолчанию), загрузка определяется содержимым файла /boot/grub/grubenv : утилита grub-set-default задаёт значение переменной saved_entry, утилита grub-reboot — значение переменной next_entry (используется однократно при следующей загрузке, потом очищается). Утилита grub-entries (altbug #36048) выводит список существующих вариантов (правда неполный с точки зрения допустимых вариантов написания: не выводятся смешанные варианты выбора и выбор на основе ID пунктов меню). В случае, если GRUB_SAVEDEFAULT=true (в ALT по-умолчанию), в пункты меню Grub добавляется команда savedefault, вызывающая изменение переменной saved_entry в файле /boot/grub/grubenv .
Способ 1 [ править ]
В файле /etc/sysconfig/grub2 изменить значение GRUB_SAVEDEFAULT на false, перегенерировать конфиг grub:
посмотреть имеющийся список вариантов загрузки утилитой grub-entries:
задать нужный вариант загрузки:
цифровой вариант лучше не использовать, так как номера строк изменяются при удалении и добавлении ядер, но его вполне можно использовать для указания варианта на следующую перезагрузку утилитой grub-reboot.
Способ 2 [ править ]
В файле /etc/sysconfig/grub2 изменить строку
где n номер пункта меню, либо на
Вариант с названием предпочтительнее, поскольку после обновления ядра количество пунктов в меню увеличится и нумерация некоторых пунктов изменится. Внимание! Нумерация пунктов начинается с 0. Список пунктов можно получить по команде
Например, пусть мы имеем следующие пункты меню (этот пример не учитывает текущее состояние с подменю; оставлено в качестве примера, удобнее использовать grub-entries, как в первом варианте):
и хотим, чтобы по умолчанию грузился Windows. Тогда в /etc/sysconfig/grub2 пишем
Потом в терминале от пользователя root:
Перезагрузка. Так как в GRUB_DEFAULT задано конкретное значение, а не ‘saved’, переменная GRUB_SAVEDEFAULT значения не имеет.
Как однократно выполнить загрузку произвольного пункта меню? [ править ]
Иногда бывает удобно загрузиться с произвольным пунктом меню, но не менять текущий вариант. Это удобно, например, для тестирования нового ядра, когда надо иметь возможность вернуть старое ядро простой перезагрузкой. Для этого надо настроить Grub в соответствии со способом 1 предыдущего пункта, после чего можно задать пункт меню для следующей загрузки командой grub-reboot и запустить команду reboot. В момент начала загрузки конфигурация Grub автоматически вернётся в исходное состояние, и следующая загрузка компьютера произойдёт по-старому. Это аналогично использованию опции -R загрузчика Lilo.
Как загрузить Xen? [ править ]
Xen грузится с помощью multiboot:
- проверить, что вы используете grub2 >= 1.98-alt11
- apt-get install xen xen-libs xen-runtime xen-hypervisor
- запустить grub-mkconfig -o /boot/grub/grub.cfg
- выбрать соответствующий пункт при загрузке (savedefault запомнит выбор на будущее)
Как включить работу с последовательным портом? [ править ]
Примерно такими строчками в /etc/sysconfig/grub2:
(см. также). Не забываем про grub-mkconfig.
Загрузка Linux и Windows c разных жестких дисков [ править ]
Grub грузится с основного диска на котором Linux, Windows установлен на дополнительный жесткий диск. В 40_custom добавляем:
Если жестких дисков больше двух, играемся с hdX.
Как установить пароль на редактирование параметров ядра? [ править ]
По умолчанию при загрузке любой пользователь может добавить/изменить параметры. Этого можно избежать, если установить пароль. Проще всего сделать это в центре управления системой. Для этого потребуется пакет alterator-grub и выполнить следующие действия:
- Зайдите в ЦУС ( acc ), перейдите в режим эксперта, и в разделе «Система» откройте «Загрузчик GRUB».
- Установите флажок «Установить или сбросить пароль» и введите необходимый пароль.
После нажатия на кнопку «Установить» (переконфигурация GRUB происходит автоматически) при запуске системы и попытке либо изменить параметры загрузки (клавиша Е), либо выбрать другой пункт загрузочного меню, будет требоваться логин/пароль. Логин по умолчанию сейчас boot (altbug #33098)
Также для ограничения загрузки (как с изменением параметров, так и без) можно добавить в файл /etc/grub.d/40_custom строки:
В случае дистрибутивов серии 6.0 отключить графику в /etc/sysconfig/grub2 (см. altbug #26198):
Для защиты паролем возможности загрузки именно с изменёнными параметрами придётся добавить в переменную CLASS в скрипте /etc/grub.d/10_linux опцию --unrestricted (внимание: этот скрипт по состоянию на версию 2.00-alt20 входит в пакет grub-common и не помечен как %config, поэтому будет перезаписан при обновлении!).
После подобных операций следует перегенерировать конфигурацию командой grub-mkconfig -o /boot/grub/grub.cfg (либо grub-mkconfig , в зависимости от дистрибутива). В случае использования alterator-grub — это не требуется.
Как переустановить GRUB? [ править ]
После обновления до grub2-pc-2.00-alt1 операционная система может не загрузиться. В таком случае, необходимо иметь под рукой любой live disk. Далее:
- Загружаемся с rescue-cd, например ALT Linux Rescue
- Если использован ALT Linux Rescue:
- Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda2):
- Скачиваем предыдущую версию пакета:
- Устанавливаем rpm
- Переконфигурируем меню grub
После описанного выше, у меня загрузилась операционная система.
Как установить/восстановить загрузочную запись grub? [ править ]
- Если использован ALT Linux Rescue:
- Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda2):
После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить
то выполните команду:
если же используется EFI-режим, может потребоваться восстановить загрузчик в ESP-разделе (EFI System Partition), который монтируется в /boot/efi:
Что за жалобы про BIOS Boot Partition? [ править ]
При загрузке под PC BIOS используется MBR и небольшая свободная область диска после него (31 килобайт до 63-го сектора) — соответственно первая стадия и core.img; при использовании UEFI ожидается GPT-разбивка загрузочного диска, при которой нет ни MBR, ни этой области. Отсюда возникает необходимость встроить вторую стадию загрузчика куда-то ещё. Таким местом и решили взять определённый в GPT тип раздела BIOS Boot Partition.
Инструмент разбивки дисков в составе инсталятора ALT Linux сделает такой раздел автоматически под UEFI, если разбиваете вручную или большой диск для BIOS — может потребоваться создать раздел минимального объёма (RED Hat рекомендует 1 мегабайт) с типом «bios boot partition» в терминологии alterator-vm либо меткой «bios_grub» в терминологии parted .
Во время загрузки Windows искажена картинка, что делать? [ править ]
Если при загрузке, например, Windows 7 часть экрана содержит «шум», возможно, отдалённо напоминающий картинку заставки GRUB — попробуйте выровнять используемые видеорежимы VESA:
- в файле /etc/sysconfig/grub2 поменяйте GRUB_GFXMODE='800x600' на GRUB_GFXMODE='640x480'[1] ;
- выполните команду update-grub или grub-mkconfig -o /boot/grub/grub.cfg
Вы можете сделать заставку текстовой, указав GRUB_GFXMODE='console'.
Источник