Ubuntu18.04ですべてのkernelを削除してしまった場合の対処

すべてのkernelを削除すると、GRUBから起動できなくなるので、OSのインストールメディアでブートして、そのターミナルでkernelを再インストールする。

kernelのインストール作業

まずはインストールするドライブを特定する。下記のコマンドを実行してインストール対象のドライブラベルを確かめる。自分の環境では “nvme0n1p2” でした。

$ lsblk

次に特定したドライブを/mnt/にマウントする。

# mount /dev/nvme0n1p2 /mnt/

更にインストールに必要なディレクトリやファイルをマウント、バインドする。

# mount -o bind /dev/ /mnt/dev/
# mount -o bind /dev/pts/ /mnt/dev/pts/
# mount -t sysfs /sys/ /mnt/sys/
# mount -t proc /proc/ /mnt/proc/
# cp /etc/resolv.conf /mnt/etc/resolv.conf

chrootを実行してからパッケージリストを更新する。

# chroot /mnt/
# apt update

あとは普通にkernelをインストールする。自分はkernelのバージョン5.3.0-51をインストールした。

# apt install linux-headers-5.3.0-51
# apt install linux-headers-5.3.0-51-generic
# apt install linux-image-5.3.0-51-generic
# apt install linux-modules-5.3.0-51-generic
# apt install linux-modules-extra-5.3.0-51-generic

GRUBの設定を更新してインストールしたkernelを示すことを確認する。

# update-grub

Ctrl+Dでchrootを解除し、下記のコマンドでマウントを解除する。

# umount /mnt/dev/pts/
# umount /mnt/dev/
# umount /mnt/sys/
# umount /mnt/proc/
# umount /mnt/

再起動して正常に起動することを確認。