先日btrfsが破滅して入れ直しをしたThinkPad、久々に再起動してみたらkernel panicに。???と思って一つ前のカーネルで試すとそちらもkernel panic。最後に一番古いカーネルでbootを試したら上手くいった。
???と思って調べてみると、どうやらinirdの行が存在してない…ってinitramfsなファイルがbootしたカーネル以外では存在してない!ということでinitramfsの作り方を調べて sudo update-initramfs -c -k 4.9.0-3-amd64
のようにしてみる…が、何も起こらない。エラーも起きない。何か設定が必要だったりするのか?といろいろ探し回った末に奇妙なことを見つけた。
$ LC_ALL=C ls -al /usr/sbin/update-initramfs*
lrwxrwxrwx 1 root root 9 Oct 24 11:14 /usr/sbin/update-initramfs -> /bin/true
-rwxr-xr-x 1 root root 7093 Jul 26 02:16 /usr/sbin/update-initramfs.distrib
あかんがなー!!!どうやらupdate-initramfs.distrib側が本体だろうな、と sudo update-initramfs/distrib -c -k 4.9.0-3-amd64
のようにすると無事にイメージが作られたので、update-grub
を実行して変更を反映、再起動すると無事起動できた。更に調べたところ
$ dpkg -L initramfs-tools
(snip)
diverted by pkgsel to: /usr/sbin/update-initramfs.distrib
ということで pkgsel
なるパッケージがこれを実施したことが判明。
じゃぁ、と apt show pkgsel
しても出てこない…あ、これはudebだね、ということでサイトを確認…あたり。
apt source pkgsel
して debian/changelog
をみたら Bug#912073 を踏んでいたと判明。んもー。寝る前の貴重な時間が…