initrdとinitramfsの違いは何ですか?


12

私が知りたいのですが、違いは何であるinitrdとはinitramfs

回答:


12

Initrdは廃止され、Initramfsに置き換えられました。Initramfsにはinitrdの弱点はありません。

  • Initrdでは、少なくとも1つのファイルシステムドライバーをカーネルにコンパイルする必要があります
  • Initrdによって作成されたディスクのサイズは固定されている必要があります
  • Initrd上のすべての読み取り/書き込みは、冗長的に(不必要に)メインメモリにバッファされます。

それがすべてだと思います。


このupdate-initramfsコマンドはどのように/boot/initrd.imgを生成しますか?

必要なファイルをcpio アーカイブに変換します。これはバイナリアーカイブ形式(tarLinuxで広く使用されていないに非常に似ています)で、gzipを使用してそのアーカイブを圧縮します。Gzipはアーカイブの圧縮ではなく、単なる圧縮です(これが.tar.gzアーカイブファイルを取得する理由です)。

ブート時には、アーカイブがあり、非圧縮解凍したの上に    ラムディスク

参照:コンピュータの起動方法


「Initrdでは、少なくとも1つのファイルシステムドライバーをカーネルにコンパイルする必要があります」。これを説明してもらえますか?
セン

通常、ファイルシステムドライバーは、カーネルに直接コンパイルする必要があるため、自由にオペレーティングシステムにボルトで固定できます。すべてのカーネルバージョンをカスタマイズし、サイズを大きくし、追加の依存関係を導入する必要があるため、これは苦痛です。(少なくともそれは私がそうだと信じていることであり、間違いである可能性があります。具体的にはファイルシステムについての十分な知識はありません)
Stefano Palazzo

initramfsを最初にマウントする必要はないのですか?
セン

すべてのファイルシステムは、使用する前にマウントする必要があります。initramfsについて詳しく知りたい場合は、en.wikipedia.org / wiki / Initrdをご覧ください。詳細な説明があります。
ステファノパラッツォ

このupdate-initramfsコマンドはどのようにして/boot/initrd.imgを生成しますか?
セン

3
  • initrdはブロックデバイスベースで、initramfsはファイルベースです。

  • initrdを使用して、ファイルシステムイメージを作成しました。initramfsでは、カーネルがtmpfsに抽出するファイルでアーカイブを作成します。


initramfsの読み込みから読み込みまでの手順を教えてください。
セン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.