Библиотека сайта rus-linux.net
Как редактировать параметры загрузки ядра Linux
Оригинал: How to edit your kernel boot parameters on Linux
Автор: Bill Toulas
Дата публикации: 6 июля 2015 года
Перевод: А. Кривошей
Дата перевода: 6 сентября 2016 г.
Изменение или редактирование параметров загрузки ядра бывает необходимо для того, чтобы исправить ошибки во время загрузки, или чтобы протестировать новые возможности, активировать нестандартный драйвер, или отключить какие-либо функции системы. Эти параметры хранятся в виде текста в конфигурационном файле загрузчика, который ядро парсит во время процесса "init". Для определения параметров, использовавшихся при последней загрузке системы, можно воспрользоваться следующей командой:
$ cat /proc/cmdline
Обычно вывод по умолчанию - "quiet splash", так как в большинстве случаев меню grub изначально скрыто. Это часто обусловлено тем, что дистрибутив Linux установлен в качестве единственной системы на компьютере, поэтому неопытные пользователи могут и не знать, как получить доступ к опциям grub для изменения параметров загрузки ядра. Для этого необходимо всего лишь удерживать клавишу "Shift" при появлении загрузочной картинки. После этого вы перейдете в меню grub,где сможете выбрать опции ядра. В зависимости от настроек grub, вам могут предложить опции для нескольких версий ядра. Выберите то, чьи опции вы хотите изменить, и нажмите клавишу "e" для получения доступа к конфигурационному файлу. Неопытным пользователям на этом этапе рекомендуется действовать с максимальной осторожностью и сначала протестировать предполагаемые изменения на одной из предыдущих версий ядра, а также всегда делать резервную копию работающих опций, чтобы они всегда были под рукой на случай, если что-то пойдет не так.
Теперь, чтобы добавить новый параметр, вам необходимо просто подвести с помощью клавиш со стрелками курсор к строке, которая начинается со слова "linux". Затем вы можете добавить новый параметр в конце строки (после "quiet splash" в нашем случае). Каждый добавляемый параметр должен отделяться от предыдущего пробелом. Если он будет написан неправильно, ядро может пропустить этот текст и перейти к следующему параметру. Такие ошибки обычно не приводят к серьезным сбоям при загрузке системы. Существует множество параметров, которые помогают пользователю выяснить все аспекты функционирования системы в процессе загрузки. В качестве примера для этого руководства рассмотрим случай, когда мы меняем параметры загрузки ядра для того, чтобы решить проблему краха X-сервера при запуске после обновления драйвера видеокарты. Первое, что необходимо сделать - добавить параметр, который позволит нам отключить текущий драйвер. Это может быть параметр "nomodeset", или "blacklist=module" (проблема может заключаться в модуле). Для того, чтобы запретить системе запускать X-сервер, вы можете добавить параметр "pfix-nox". Это позволит вам установить/активировать драйвер в консольном режиме. Наконец, есть параметр "pfix=xorgwizard", запускающий мастер, который поможет вам выбрать другой драйвер, разрешения или глубину цвета для тестирования системы при других настройках. Для тестирования новых параметров нажмите "Ctrl+x" для загузки с новыми настройками.
Все вышеописанное работает только один раз, так как все дополнительные параметры не сохраняются после перезагрузки системы. Если ваши новые настройки протестированы и работают правильно, вы можете сделать их постоянными путем редактирования конфигурационного файла grub. Для этого в терминале введите команду "sudo gedit /etc/default/grub" (вместо gedit вы можете указать свой любимый текстовый редактор). Обратите внимание на строку, начинающуюся с "GRUB_CMDLINE_LINUX_DEFAULT" на скриншоте ниже.
В этой строке вы можете найти часть "quiet splash". Введите новые параметры в кавычках, разделяя их пробелами. Затем вы можете сохранить файл и применить новые настройки, введя команду "sudo update-grub" в терминале. Если все сделано правильно, новые параметры загрузки ядра станут постоянными. Хочу обратить ваше внимание, что данное руководство относится только к широко используемому загрузчику Grub. Существуют и другие загрузчики, такие как Lilo, Syslinux, Gummiboot и Efibootmgr. Некоторые из них настраиваются похожим образом, другие нет. Если вы используете другой загрузчик, необходимо сначала изучить, каким образом для него меняются параметры загрузки ядра.