
時には、実行中に最後にsudo apt-get upgrade
次の行が表示されます。
Processing triggers for initramfs-tools (0.133+deb10u1) ...
update-initramfs: Generating /boot/initrd.img-5.10.103-v7+
このようなことが起こるかどうか、事前に知ることができますか?
(私の特定の環境はRaspberry Pi OSですが、この質問はすべてのDebian / aptベースのオペレーティングシステムに適用されると思います。)
答え1
lsinitramfs /boot/initrd.img-$(uname -r)
(またはディストリビューションに対応する実行)を実行すると、含まれているすべてのアイテムのリストを表示できます。あなたのinitramfs。通常のファイルシステムの対応するファイルが変更された場合は、通常、initramfsも更新する必要があります。
一部のinitramfsスクリプトの対応部分は、実際のファイルシステムの異なる場所にあります。特に、/scripts
initramfsディレクトリの内容は、物理ファイルシステムのファイル/usr/share/initramfs-tools
と/etc/initramfs-tools
物理ファイルシステムのファイルに基づいています。
特に、次の状況では initramfs を更新する必要があります。
- 更新されたカーネルのインストール
- 初期起動に必要なサードパーティのカーネルモジュール(システムディスク、コンソールモニタ、および/またはキーボード用のドライバ)があり、これらのモジュールが更新された場合(DKMSを使用するなど)
- 実際の initramfs コンテンツの作成を担当するスクリプトまたはこれらのスクリプトの構成ファイルが変更されました。
- ルートファイルシステム、メインスワップ、および/または休止状態では、再起動に関連するすべての永続設定が変更されます。
- initramfsで初期化されたデバイスに関連するudevルールまたはカーネルモジュールオプションが変更されました。
update-initramfs
上記の最初の2つは通常、パッケージが更新されるたびに自動的にトリガーされます。最後の2つは主にシステム管理者の責任です。
パッケージが更新されると、パッケージマネージャは通常、必要に応じて自動更新をトリガするようにinitramfs-tools
パッケージを設定します。update-initramfs
ただし、initramfs-tools
フックスクリプトまたは設定ファイルを直接変更または追加する場合は、それを実行する責任があります。
/etc/initramfs-tools/
可能であれば、サブツリーのinitramfs-toolsへの変更を維持するのが理想的です。/usr/share/initramfs-tools/
サブツリーの既存のスクリプトを変更すると、パッケージが更新されたときにこれらの変更を上書きできます。
(initramfs-toolsの標準スクリプトを変更する必要がある場合は、マニュアルページを読み、dpkg-divert
それを使用して変更を保護できます。)