🧩 Загрузка Linux
Процесс загрузки Linux — это последовательность стадий, начиная с инициализации оборудования и заканчивая запуском пользовательского окружения. Он определяет переход системы из состояния powered-off в состояние fully operational.
⚙️ 1. Power-On Self Test (POST)
После включения питания BIOS или UEFI выполняет:
- аппаратную самопроверку (RAM, CPU, устройства ввода/вывода);
- инициализацию базовых контроллеров;
- поиск загрузочного устройства (boot device) по приоритету.
📘 Результат: управление передаётся загрузчику (bootloader).
🔧 2. Bootloader Stage (Загрузчик системы)
Загрузчик (например, GRUB, systemd-boot) находится в MBR или EFI System Partition.
Он:
- находит и загружает ядро (
vmlinuz); - передаёт ему параметры командной строки (kernel parameters);
- загружает образ
initramfs.
📘 Результат: ядро получает управление и начинает инициализацию системы.
🧠 3. Kernel Initialization (Инициализация ядра)
Ядро выполняет:
- Инициализацию драйверов и подсистем;
- Монтаж временной файловой системы
initramfs; - Загрузку модулей ядра;
- Монтаж корневой файловой системы (
/).
📘 Результат: ядро переходит к запуску первого процесса пользовательского пространства.
🧩 4. Init Process (Первый пользовательский процесс)
После монтирования корня выполняется:
/sbin/init
Современные реализации:
- systemd — основной стандарт;
- SysVinit, OpenRC, runit — альтернативы.
📘 Функции init/systemd:
- запуск фоновых служб (daemons);
- монтирование дополнительных файловых систем;
- настройка сети;
- переход в целевое состояние (target/runlevel).
🧩 5. User Space Initialization (Пользовательское пространство)
После завершения инициализации:
- запускается login manager или getty;
- выполняется аутентификация пользователя;
- активируется shell или desktop environment.
📘 Результат: система полностью готова к работе в пространстве пользователя.
🧩 6. Итоговая схема загрузки
BIOS/UEFI → Bootloader → Kernel → Initramfs → Init/Systemd → User Space
📚 Источники
- man 7 bootup
- man 7 systemd.boot
- Love, R. Linux Kernel Development, 3rd Ed. (Addison-Wesley, 2010)