web-dev-qa-db-ja.com

initrdとsquashfsの関係は何ですか?

たとえば、ライブUSBでinitrdを使用している場合、squashfsも必要なのはなぜですか?

3
user285825

Initrdは非推奨であり、Initramfsに置き換えられています(ある程度は新興企業です)。

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

Initramfsは起動プロセスの一部であり、カーネルをbootstrapし、ハードウェアを初期化するために使用される最小限のファイルシステムです。

suqashfsは圧縮ツールであり、大きな(5 Gb)ファイルシステムを使用し、それをはるかに小さいサイズに圧縮しますが、roです。

したがって、squashfsはファイルシステム全体、およびUbuntuのライブに必要なすべてのバイナリとライブラリに使用されます。

こちらもご覧ください:

https://help.ubuntu.com/community/LiveCDCustomizationFromScratch

https://wiki.ubuntu.com/Initramfs

Initramfsは、マシンがアクセスできる最初のルートファイルシステムとして使用されます。すべてのデータを含む実際のrootfsをマウントするために使用されます。 initramfsには、rootfsのマウントに必要なモジュールが含まれています。

これが私が構築したinitramfsです http://blog.bodhizazen.com/linux/initramfs/

そして

http://squashfs.sourceforge.net/

Squashfsは、Linux用の圧縮された読み取り専用ファイルシステムです。 Squashfsは、一般的な読み取り専用ファイルシステムの使用、アーカイブの使用(つまり、.tar.gzファイルを使用できる場合)、および低いオーバーヘッドが必要な制約のあるブロックデバイス/メモリシステム(たとえば、組み込みシステム)を対象としています。

3
Panther

squashfs vs圧縮initramfs

Initramfsも圧縮できることにも注意してください: https://unix.stackexchange.com/questions/2221/can-the-initramfs-image-use-a-compression-format-other-than -gzip/429880#42988

Squashfsの利点は、巨大なイメージを作成するためにブートごとに完全な解凍を行う必要がないことだと思います。

これは、圧縮された.cpioであるため、initramfsが行うことです。

その代わり、squashfsでは、個々のファイルとディスクのデータ構造を個別に圧縮する必要があるため、ファイルをその場で解凍するだけです。