В чем разница между initrd и initramfs?


12

Я хотел бы знать, в чем разница между initrdи initramfs?

Ответы:


12

Initrd устарел, заменен Initramfs, у которого нет некоторых слабостей initrd:

  • Initrd требует, чтобы по крайней мере один драйвер файловой системы был скомпилирован в ядро
  • Диск , созданный INITRD получил иметь фиксированный размер
  • Все операции чтения / записи в Initrd буферизируются (излишне) в основную память

Я думаю, что это все.


Как эта команда update-initramfs создает /boot/initrd.img?

Он превращает необходимые файлы в cpio архив , который представляет собой двоичный формат архива (очень похожий tar, не очень широко используется в Linux), а затем использует gzip для сжатия этого архива. Gzip - это не архив, а просто сжатие (поэтому вы получаете архивные файлы .tar.gz).

Во время загрузки архив распаковывается и распаковывается на    ram-диск .

Также смотрите: Как загружается компьютер


«Initrd требует, чтобы по крайней мере один драйвер файловой системы был скомпилирован в ядро». Я не очень разбираюсь в этом. Не могли бы вы объяснить это ??
— Сен

Обычно драйверы файловой системы могут быть прикреплены к операционной системе по желанию, для некоторых вещей они должны быть скомпилированы прямо в ядро. Это неприятно, поскольку все версии ядра необходимо настраивать, увеличивать, вводить дополнительные зависимости и так далее. (По крайней мере, это то, что я считаю, может быть и неправильно, у меня нет особых знаний о файловых системах конкретно)
— Стефано Палаццо

Это как initramfs не нужно монтировать изначально ??
— Сен

Все файловые системы должны быть смонтированы перед использованием. Если вы хотите узнать об initramfs более подробно, загляните на en.wikipedia.org/wiki/Initrd - здесь есть более подробное объяснение.
— Стефано Палаццо

Как эта команда update-initramfs создает /boot/initrd.img?
— Сен

3
  • initrd был основан на блочных устройствах, initramfs - это файловая база.

  • с помощью initrd вы создали образ файловой системы. с помощью initramfs вы создаете архив с файлами, которые ядро ​​извлекает в tmpfs.


Не могли бы вы объяснить мне шаги от начала до загрузки и чтения initramfs?
— Сен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.