Загрузчик — это первая программа, которая запускается после прошивки (BIOS/UEFI) и отвечает за загрузку ядра Linux в память.
Без него система не стартует. Выбор загрузчика влияет на гибкость, безопасность и скорость запуска.
⌛️ GRUB (GRand Unified Bootloader) — Самый распространённый и мощный загрузчик с поддержкой BIOS (Legacy) и UEFI. Умеет загружать не только Linux, но и Windows, macOS, BSD. Поддерживает загрузку по сети, работу с LVM, ZFS и шифрованными разделами.
Основные команды:
Обновление конфигурации после правки /etc/default/grub:
# Для BIOS/Legacy
sudo update-grub
# Для UEFI (в некоторых дистрибутивах)
sudo grub-mkconfig -o /boot/grub/grub.cfg
Ручная установка GRUB на диск:
# Для BIOS (на диск /dev/sda)
sudo grub-install /dev/sda
# Для UEFI (с указанием EFI-раздела)
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi
⌛️ Systemd-boot - Лёгкий загрузчик, встроенный в systemd. Работает только в UEFI-режиме и требует раздел ESP (EFI System Partition). Конфигурация — простые текстовые файлы в /boot/loader/entries/. Быстрый, минималистичный, но без графического меню.
Базовая настройка:
Установка (обычно уже стоит в системах с systemd):
sudo bootctl install
Создание записи для загрузки ядра:
# Файл /boot/loader/entries/arch.conf
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=UUID=... rw
⌛️ Прямая запись в UEFI через efibootmgr — Самый минималистичный способ — создать запись в UEFI-прошивке, которая напрямую загружает ядро Linux. Не требует отдельного загрузчика.
Создание записи:
# Показать текущие записи UEFI
sudo efibootmgr -v
# Создать запись для загрузки ядра напрямую
sudo efibootmgr \
--create \
--label "Arch Linux" \
--disk /dev/nvme0n1 \
--part 1 \
--loader /vmlinuz-linux \
--unicode 'root=UUID=... rw initrd=\initramfs-linux.img'
Выбор загрузчика — это компромисс между функциональностью и простотой.
Для большинства подойдёт GRUB.
Для современных систем с одним Linux — systemd-boot.
А для экспериментов можно попробовать прямую запись в UEFI.
#линуксятина
