たとえば、ライブUSBでinitrdを使用している場合、squashfsも必要なのはなぜですか?
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ファイルを使用できる場合)、および低いオーバーヘッドが必要な制約のあるブロックデバイス/メモリシステム(たとえば、組み込みシステム)を対象としています。
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では、個々のファイルとディスクのデータ構造を個別に圧縮する必要があるため、ファイルをその場で解凍するだけです。