CentOS Stream9を何度かアップデートして使っていたら、ある日起動しなくなった。GRUBの画面で止まっているので最新版を選んで起動しようとしても
error: ../../grub-core/fs/fshelp.c:257:file
'/initramfs-6.18.3-1.el9.elrepo.x86_64.img' not found.
これはboot領域が不足してinitramfs-~が作成できなかったことが原因らしい。古いカーネルで起動してみると確かに/bootが不足している。これに対応するには過去のカーネル関連を削除する。
dnf -y remove --oldinstallonly
これで3世代分残して他を消してくれる。世代数は/etc/dnf/dnf.confで指定されている。
その後ファイルを再度作り直し
dracut --kver 6.18.3-1.el9.elrepo.x86_64
failedが出たら失敗、何も出なければ成功。
完了後、無事再起動できた。