← Back to blog

Загрузка Linux

⚙️ Теория

🧩 Загрузка Linux

Процесс загрузки Linux — это последовательность стадий, начиная с инициализации оборудования и заканчивая запуском пользовательского окружения. Он определяет переход системы из состояния powered-off в состояние fully operational.

📖 man bootup (man7.org)


⚙️ 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 (Инициализация ядра)

Ядро выполняет:

  1. Инициализацию драйверов и подсистем;
  2. Монтаж временной файловой системы initramfs;
  3. Загрузку модулей ядра;
  4. Монтаж корневой файловой системы (/).

📘 Результат: ядро переходит к запуску первого процесса пользовательского пространства.


🧩 4. Init Process (Первый пользовательский процесс)

После монтирования корня выполняется:

/sbin/init

Современные реализации:

  • systemd — основной стандарт;
  • SysVinit, OpenRC, runit — альтернативы.

📘 Функции init/systemd:

  • запуск фоновых служб (daemons);
  • монтирование дополнительных файловых систем;
  • настройка сети;
  • переход в целевое состояние (target/runlevel).

📖 man systemd.boot (man7.org)


🧩 5. User Space Initialization (Пользовательское пространство)

После завершения инициализации:

  • запускается login manager или getty;
  • выполняется аутентификация пользователя;
  • активируется shell или desktop environment.

📘 Результат: система полностью готова к работе в пространстве пользователя.


🧩 6. Итоговая схема загрузки

BIOS/UEFI  Bootloader  Kernel  Initramfs  Init/Systemd  User Space

📚 Источники


🧪 Практика

  • Используйте команды и примеры из разделов выше как рабочий чеклист.
  • Перед применением в production валидируйте изменения на test/stage и сверяйте с официальной документацией.

🧾 Вывод

Загрузка Linux проходит через чёткую последовательность этапов: BIOS/UEFI → bootloader → kernel/initramfs → init/systemd → user space.
Понимание этой цепочки ускоряет диагностику проблем старта системы и корректную настройку сервисов.


📚 Ссылки

  • См. ссылки в секции Проверка источников ниже.

Проверка источников

Загрузка Linux | Aleksandr Suprun