Гид по технологиям

Настройка загрузчика GRUB

• 4 min read • Linux • Обновлено 17 Nov 2025
Настройка GRUB для нового ядра
Настройка GRUB для нового ядра

Введение

Здесь описан надёжный способ настроить GRUB так, чтобы при перезагрузке система стартовала с только что установленного ядра. Подход ориентирован на системы SUSE/OpenSUSE, где доступен YaST, но также разобраны ручные альтернативы и диагностика.

Что нужно иметь под рукой

  • Доступ с правами root или sudo.
  • Новое ядро и initrd в каталоге /boot (обычно файлы начинаются с vmlinuz-… и initrd-…).
  • Резервная рабочая конфигурация GRUB (существующая запись для ранее работавшего ядра).

Шаги: настройка через YaST (рекомендуется)

  1. Запустите YaST в терминале:
yast
  1. Откройте System → Boot Loader.

Окно YaST: параметры загрузчика GRUB

  1. На экране записей GRUB нажмите Add, чтобы добавить новую запись.

Добавление новой записи загрузчика

  1. Выберите Clone Selected Section, чтобы клонировать одну из рабочих записей GRUB.

Клонирование существующего раздела GRUB

  1. Введите понятное имя для новой записи, например SUSE Linux 10.1 - 2.6.18.2, затем в Kernel → Browse выберите файл ядра в /boot (vmlinuz-…):

Выбор файла ядра vmlinuz в /boot

  1. В разделе Initial RAM Disk → Browse выберите соответствующий initrd (initrd-…).

Выбор initrd из /boot

  1. Нажмите OK, чтобы сохранить запись.

Подтверждение изменений в YaST

  1. В списке записей найдите новую запись, поместите её первой (кнопка Up) и нажмите Set as Default.

Перемещение записи вверх и установка по умолчанию

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

  1. Нажмите Finish, затем Quit, чтобы выйти из YaST.

Завершение работы с YaST

Выход из YaST

  1. Теперь можно проверить файл /boot/grub/menu.lst — в нём должна появиться новая секция для вашего ядра. Откройте файл любым редактором:
vi /boot/grub/menu.lst

Пример содержимого menu.lst, созданного YaST:

# Modified by YaST2. Last modification on Wed Nov 15 14:37:56 CET 2006

color white/blue black/light-gray
default 0
timeout 8


title SUSE Linux 10.1 - 2.6.18.2
    root (hd0,0)
    kernel /vmlinuz-2.6.18.2-default root=/dev/sda3 vga=0x314    resume=/dev/sda2  splash=silent showopts
    initrd /initrd-2.6.18.2-default

###Don't change this comment - YaST2 identifier: Original name: linux###
title SUSE Linux 10.1
    root (hd0,0)
    kernel /vmlinuz root=/dev/sda3 vga=0x314    resume=/dev/sda2  splash=silent showopts
    initrd /initrd

###Don't change this comment - YaST2 identifier: Original name: floppy###
title Floppy
    chainloader (fd0)+1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- SUSE Linux 10.1
    root (hd0,0)
    kernel /vmlinuz root=/dev/sda3 vga=normal showopts ide=nodma apm=off acpi=off noresume nosmp noapic maxcpus=0 edd=off 3
    initrd /initrd
  1. Перезагрузите систему:
shutdown -r now
  1. После загрузки проверьте текущее ядро:
uname -r

Ожидаемый вывод (пример):

2.6.18.2-default

Если система не загружается с новым ядром (диагностика)

  • При загрузке в меню GRUB выберите старую (рабочую) запись и запустите систему.

Меню GRUB с выбором старого ядра

  • Убедитесь, что выбранные вами vmlinuz и initrd соответствуют версии ядра.
  • Проверьте корректность параметра root= и других опций в stanza.
  • Удалите или исправьте проблемную запись в /boot/grub/menu.lst, если ядро не работоспособно.

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

Альтернативный (ручной) способ: правка /boot/grub/menu.lst

Если вы предпочитаете консоль, вы можете добавить stanza вручную в начало /boot/grub/menu.lst с помощью vi, nano или другого редактора. Пример записи для вставки:

title SUSE Linux 10.1 - 2.6.18.2
    root (hd0,0)
    kernel /vmlinuz-2.6.18.2-default root=/dev/sda3 vga=0x314    resume=/dev/sda2  splash=silent showopts
    initrd /initrd-2.6.18.2-default

Совет: перед правкой сделайте резервную копию:

cp /boot/grub/menu.lst /boot/grub/menu.lst.bak

Чтобы найти доступные файлы ядра и initrd используйте:

ls -l /boot

Чек-лист по ролям

  • Системный администратор:

    • Проверил наличие vmlinuz и initrd в /boot.
    • Скопировал рабочую запись или создал новую через YaST.
    • Сделал резервную копию /boot/grub/menu.lst.
    • Перезагрузил сервер и проверил uname -r.
  • Оператор/инженер DevOps:

    • Обновил/откатил запись в случае ошибки.
    • Документировал изменения и время модификации.

Когда этот метод не сработает (контрпримеры)

  • Если загрузчик был заменён на GRUB2, конфигурация и файлы отличаются (grub.cfg, update-grub).
  • Если корневой раздел указан неправильно, ядро не сможет смонтировать rootfs.
  • При несовместимости модулей или initrd с новым ядром возникнут паники ядра.

Мини-методология: быстрый алгоритм действий

  1. Найдите файлы ядра и initrd в /boot.
  2. Клонируйте рабочую запись через YaST или вручную вставьте stanza в menu.lst.
  3. Поместите новую запись первой и сделайте её по умолчанию.
  4. Перезагрузитесь и проверьте uname -r.
  5. В случае ошибки загрузитесь со старого ядра и исправьте запись.

Краткий словарь

  • vmlinuz — сжатый бинарник ядра Linux.
  • initrd — образ initial ramdisk, нужен для загрузки модулей до монтирования корня.
  • stanza — блок конфигурации для одной записи GRUB.

Резюме

  • YaST упрощает добавление нового ядра в GRUB и уменьшает риск ошибок в синтаксисе.
  • Всегда сохраняйте рабочую запись и делайте резервную копию menu.lst перед правками.
  • При проблемах используйте выбор старого ядра в меню GRUB, проверьте файлы в /boot и корректность опций.

Источники и ссылки:

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро