initrd — Вікіпедія

initrd (англ. initial ramdisk) є тимчасовою файловою системою, що широко використовуються в процесі завантаження ядра Linux.

Її використовують для підготовчих дій, перед монтуванням кореневої файлової системи. Зазвичай образи initrd містять необхідні для завантаження деякі модулі ядра, таких як ATA, SCSI для роботи з пристроєм, на якому міститься коренева файлова система. Вони, як правило, визначають розташування і тип кореневої файлової системи.

Призначення

[ред. | ред. код]

Ядро операційної системи Linux, як і інші UNIX-подібні операційні системи, є монолітним, але з підтримкою модулів ядра. Багато дистрибутивів Linux мають один генералізований файл ядра операційної системи, який може завантажуватися на широкому спектрі конфігурацій даної архітектури. Драйвери пристроїв компілюються як завантажувальні модулі — якщо компілювати сотні і тисячі модулів безпосередньо у ядро, його розмір перевищуватиме сотні мегабайт, що є не лише недоцільним (ядро завантажується занадто довго), а й робить неможливим завантаження на комп'ютерах з обмеженим обсягом оперативної пам'яті. З іншого боку, відсутність у складі ядра драйверів породжує проблему початкової ініціалізації блокових пристроїв (таких, як диски) і монтування кореневої файлової системи.[1]

Проблема може ускладнюватися ще більше, якщо коренева файлова система розміщена на масиві RAID, LVM, є зашифрованою або мережною. Підтримка таких систем вимагає спеціальної підготовки перед монтуванням.[2]

Див. також

[ред. | ред. код]

Примітки

[ред. | ред. код]
  1. Almesberger, Werner (2000), Booting Linux: the history and the future, Proceedings of the Ottawa Linux Symposium, архів оригіналу за 24 липня 2008
  2. Landley, Rob (15 березня 2005), Introducing initramfs, a new model for initial RAM disks, linuxdevices.com, архів оригіналу за 4 січня 2013