Apa perbedaan antara initrd dan initramfs?

12

Saya ingin tahu, apa perbedaan antara initrddan initramfs?

Sen
sumber

Jawaban:

12

Initrd sudah ditinggalkan, digantikan oleh Initramfs, yang tidak memiliki beberapa kelemahan initrd:

  • Initrd membutuhkan setidaknya satu driver sistem file dikompilasi ke dalam kernel
  • Sebuah disk yang diciptakan oleh Initrd telah mendapat untuk memiliki ukuran tetap
  • Semua baca / tulis di Initrd disangga secara berlebihan (tidak perlu) ke dalam memori utama

Saya pikir itu saja.


Bagaimana perintah pembaruan-initramfs ini menghasilkan /boot/initrd.img?

Itu membuat file yang diperlukan menjadi cpio arsip , yang merupakan format arsip biner (sangat mirip dengan tar, tidak banyak digunakan di Linux) dan kemudian menggunakan gzip untuk mengompresi arsip itu. Gzip bukan sebuah arsip itsef, hanya sebuah kompresi (itulah sebabnya Anda mendapatkan file arsip .tar.gz).

Pada saat boot, arsip tidak dikompresi dan dibongkar ke    ram-disk .

Lihat juga: Cara komputer mem-boot

Stefano Palazzo
sumber
"Initrd membutuhkan setidaknya satu driver sistem file dikompilasi ke dalam kernel" .. Saya tidak mendapatkan banyak ide tentang ini. Bisakah Anda jelaskan ini ??
Sen
Biasanya, driver sistem file dapat dibaut ke sistem operasi sesuai keinginan, untuk beberapa hal mereka harus dikompilasi langsung ke dalam kernel. Yang merepotkan, karena semua versi kernel harus dikustomisasi, menjadi lebih besar, memperkenalkan dependensi tambahan dan sebagainya. (Setidaknya itulah yang saya yakini sebagai masalahnya, bisa saja salah, saya tidak memiliki pengetahuan yang besar tentang sistem file secara khusus)
Stefano Palazzo
Apakah initramfs seperti itu tidak perlu dipasang pada awalnya ??
Sen
Semua sistem file harus dipasang sebelum dapat digunakan. Jika Anda ingin mempelajari tentang initramf secara mendalam, lihat en.wikipedia.org/wiki/Initrd - ada penjelasan yang jauh lebih terperinci.
Stefano Palazzo
Bagaimana perintah pembaruan-initramfs ini menghasilkan /boot/initrd.img?
Sen
3
  • initrd adalah blok perangkat berbasis, initramfs adalah basis file.

  • dengan initrd, Anda membuat gambar sistem file. dengan initramfs, Anda membuat arsip dengan file yang diekstrak oleh kernel ke tmpfs.

karthick87
sumber
bisakah Anda menjelaskan kepada saya langkah-langkah dari awal hingga memuat dan membaca initramfs?
Sen