Відмінності між версіями «Initrd»

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
[неперевірена версія][перевірена версія]
(Хоч якось розширити)
Рядок 3: Рядок 3:
   
 
Її використовують для підготовчих дій, перед [[mount|монтуванням]] [[кореневий каталог|кореневої]] файлової системи. Зазвичай initrd образи містять необхідні для завантаження деякі модулі ядра, таких як [[ATA]], [[SCSI]] для роботи з пристроєм, на якому міститься коренева файлова система. Вони, як правило, визначають розташування і тип кореневої файлової системи.
 
Її використовують для підготовчих дій, перед [[mount|монтуванням]] [[кореневий каталог|кореневої]] файлової системи. Зазвичай initrd образи містять необхідні для завантаження деякі модулі ядра, таких як [[ATA]], [[SCSI]] для роботи з пристроєм, на якому міститься коренева файлова система. Вони, як правило, визначають розташування і тип кореневої файлової системи.
  +
  +
== Rationale ==
  +
  +
Ядро операційної системи [[Ядро Linux|Linux]], як і інші [[UNIX-подібні операційні системи]], є монолітним, але з підтримкою [[Завантажуваний модуль ядра|модулів ядра]].
  +
Багато [[Дистрибутив Linux|дистрибутивів Linux]] мають один генералізований файл [[Ядро Linux|ядра]] операційної системи, який може завантажуватися на широкому спектрі конфігурацій даної архітектури. [[Драйвер]]и пристроїв компілюються як завантажувальні модулі — якщо компілювати сотні і тисячі модулів безпосередньо у ядро, його розмір перевищуватиме сотні мегабайт, що є не лише недоцільним (ядро завантажується занадто довго), а й робить неможливим завантаження на комп'ютерах з обмеженим обсягом оперативної пам'яті.
  +
З іншого боку, відсутність у складі ядра драйверів породжує проблему початкової ініціалізації блокових пристроїв (таких, як диски) і монтування кореневої [[Файлова система|файлової системи]].<ref name="almesberger2">{{citation
  +
|last=Almesberger
  +
|first=Werner
  +
|year=2000
  +
|title=Booting linux: the history and the future
  +
|journal=Proceedings of the Ottawa Linux Symposium
  +
|url=http://www.linuxsymposium.org/2000/booting.php
  +
|deadurl=yes
  +
|archiveurl=https://web.archive.org/web/20080724162809/http://www.linuxsymposium.org/2000/booting.php
  +
|archivedate=24 July 2008}}</ref>
  +
  +
Проблема може ускладнюватися ще більше, якщо коренева файлова система розміщена на масиві [[RAID]], [[LVM]], є зашифрованою або [[Network File System|мережною]].
  +
Підтримка таких систем вимагає спеціальної підготовки перед монтуванням.<ref name="landley2">{{citation|first=Rob |last=Landley |title=Introducing initramfs, a new model for initial RAM disks |date=15 March 2005 |url=http://linuxdevices.com/articles/AT4017834659.html |publisher=linuxdevices.com |archiveurl=https://archive.is/20130104033427/http://www.linuxfordevices.com/c/a/Linux-For-Devices-Articles/Introducing-initramfs-a-new-model-for-initial-RAM-disks/ |archivedate=4 January 2013 |deadurl=yes}}</ref>
  +
  +
== Джерела ==
  +
{{reflist}}
   
 
== Дивись також ==
 
== Дивись також ==

Версія за 12:02, 7 грудня 2018

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

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

Rationale

Ядро операційної системи 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 July 2008. 
  2. Landley, Rob (15 March 2005). Introducing initramfs, a new model for initial RAM disks. linuxdevices.com. Архів оригіналу за 4 January 2013. 

Дивись також