/boot/initrd.img
ファイルの圧縮を無効にして、起動を少し速くしたい。私のディスクは、余分な10MBを収容するのに十分な大きさです。正直なところ、これがデフォルトであるはずだと思います。最近では、数メガバイトのディスク容量を買う余裕がありません。組み込みシナリオの場合、手動で有効にすることができます。
/etc/initramfs-tools/initramfs.conf
を調べると、圧縮タイプを変更するオプションがあります
COMPRESS: [ gzip | bzip2 | lz4 | lzma | lzop | xz ]
ただし、圧縮を無効にするオプションはありません。 None
とnone
を試しましたが、効果はありませんでした。
回避策として、gunzip
を使用してinitrd.img-4.19.0-8-AMD64
を手動で解凍します。しかし、カーネルアップデートがインストールされるたびに、再度解凍する必要があります。
これを行うためのオプションはありませんが、mkinitramfs
はシェルスクリプトであるため、再コンパイルせずに追加できます。 /usr/sbin/mkinitramfs
で、
case "${compress}" in
オプションのセットに「none」行を追加します。
none) compress="cat" ;;
これにより、COMPRESS=none
をinitramfs.conf
で指定できるようになります。
mkinitramfs
がパッケージから復元されるたびに(アップグレード時に)これをやり直す必要があります。
最近は簡単なことではありませんが、initramfs.conf
の下での明白なオプションではありません。
イメージの読み取りと解凍にかかる合計時間は、ファイルの読み取りと解凍の合計です。最初のタスクはI/Oバウンドであり、2番目のタスクは主にCPUバウンドです。
したがって、圧縮された画像と圧縮されていない画像の読み込みの比較は直接的なものではありません。あるケースでは、小さいファイルを読み取ってから解凍します。別のケースでは、大きいファイルを読み取って解凍しません。
どちらが速いか、ベンチマークする必要があります。推測すると、小さいファイルを読み取って解凍すると思います。