Что такое BIOS?

«Что такое BIOS?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

BIOS (Basic Input/Output System) — это прошивка (firmware), хранящаяся в микросхеме на материнской плате компьютера. Её основная задача — выполнить первоначальную настройку и проверку аппаратного обеспечения при включении питания (POST - Power-On Self-Test) и передать управление загрузчику операционной системы.

Ключевые функции BIOS в контексте администрирования Linux:

  1. Инициализация оборудования (POST): Проверка работоспособности CPU, памяти, дисков, видеокарты.
  2. Загрузка загрузчика: Поиск загрузочного устройства (HDD, SSD, USB, PXE) в соответствии с заданным порядком загрузки (Boot Order) и передача управления загрузочному сектору (MBR) или разделу EFI.
  3. Предоставление базовых сервисов: Набор простых программ для низкоуровневого доступа к дискам, экрану и клавиатуре, которые могут использовать ОС на ранних этапах загрузки.

UEFI как современная замена BIOS: Современные системы используют UEFI (Unified Extensible Firmware Interface), который предлагает:

  • Более быструю загрузку.
  • Поддержку дисков большого объема (>2.2 ТБ) через таблицу разделов GPT.
  • Безопасную загрузку (Secure Boot) для защиты от руткитов.
  • Сетевую загрузку без дополнительных ROM.
  • Графический интерфейс настройки.

Практические команды в Linux для работы с информацией о прошивке:

# Просмотр информации о BIOS/UEFI
sudo dmidecode -t bios

# Просмотр информации о системе
sudo dmidecode -t system

# Определение, загружена ли система в режиме UEFI или Legacy (BIOS)
ls /sys/firmware/efi  # Если каталог существует, используется UEFI.

# Просмотр порядка загрузки (часто требует утилиты производителя, например, для Dell)
sudo efibootmgr -v

Для DevOps-инженера понимание различий между BIOS и UEFI критично при работе с образами виртуальных машин, настройке PXE-серверов для автоматической установки ОС и конфигурации загрузки на физических серверах.