1. Обзор процесса загрузки

Изучив некоторые ключевые компоненты Linux, давайте теперь посмотрим, как они все объединяются при запуске системы. Вся последовательность, от нажатия кнопки питания до появления приглашения для входа в систему, известна как процесс загрузки Linux (Linux boot process). Это увлекательное путешествие, которое превращает выключенную машину в полностью функциональную операционную систему.

Процесс загрузки операционной системы Linux можно упростить до четырех основных этапов.

Этап 1 BIOS

BIOS (Basic Input/Output System) или его современный преемник UEFI (Unified Extensible Firmware Interface) — это первое программное обеспечение, которое запускается при включении компьютера. Он выполняет самотестирование при включении (POST) для инициализации и проверки оборудования системы, такого как ЦП, память и устройства хранения данных. Как только аппаратное обеспечение проверено, основная задача BIOS — найти и загрузить загрузчик с устройства хранения данных.

Этап 2 Загрузчик (Bootloader)

Загрузчик берет управление на себя от BIOS. Его основная обязанность — загрузить ядро Linux в память. Распространенным загрузчиком для Linux является GRUB (GRand Unified Bootloader). GRUB часто отображает меню, позволяя вам выбрать, какую операционную систему или версию ядра загрузить. После выбора (или по истечении времени ожидания) он загружает выбранное ядро и начальный образ оперативной памяти (initrd) в память, а затем передает управление ядру.

Этап 3 Ядро (Kernel)

Как только ядро загружено в память, оно берет на себя управление системой. Оно начинает с самораспаковки и инициализации основного оборудования и управления памятью. Затем ядро монтирует корневую файловую систему, которая содержит все системные файлы. Его последняя и самая важная задача в процессе загрузки Linux — это выполнение первой программы в пространстве пользователя: процесса init.

Этап 4 Init

Процесс init — это первый процесс, запущенный ядром, и он является предком всех остальных процессов в системе. Его основная задача — привести систему в пригодное для использования состояние путем запуска необходимых служб и фоновых процессов (демонов) в соответствии с его конфигурацией. Существует несколько реализаций init, таких как традиционный System V init, Upstart и ныне широко используемый systemd.

Это дает общее представление о процессе загрузки Linux. Мы более подробно рассмотрим каждый из этих этапов в следующих уроках.

Войдите, чтобы сохранить ваш прогресс обучения

Вход

Упражнения

Чтобы закрепить понимание, мы рекомендуем попробовать эту практическую лабораторную работу. Она предоставляет практическую среду для применения того, что вы узнали о процессе загрузки Linux.

  1. Настройка меню загрузки GRUB2 в Linux - Практикуйтесь в изменении меню загрузки GRUB2, критически важного компонента в последовательности загрузки Linux.

Тест

What is the last stage in the Linux boot process? (Please answer in English, paying attention to case sensitivity).