2023-08-06 Sun: Linux が起動できなくなって焦った話
いや、本当に焦った。。。
いつものごとく yay -Syyu をやっただけなのですが、再起動後に UEFI の画面しか Linux Boot Loader に出てこなくなったのです。。
とりあえず ChatGPT に聞いてみたら、ドライブマウントして grub-install で直るんやでと言われて、試してみるが grub-install がないねん!!ってなり。。
結局どうしたかですが、下記の記事を参考にしたら、上手くいきました。
元記事の方、本当にありがとうございます!!
そのままでは上手くいかなかった部分があったので、実際にやったことをメモしておきます。
EndeavourOS の Live ディスクで作業をしています。
code:sh
# とりあえず root に昇格
sudo su
# 復旧するディスクを確認
lsblk -l #今回は SSD のため、nvme0n1 から始まる文字列だった # まずはデータ部分(?)をマウント
mount nvme0n1p2 /mnt
# 次にブートに関わる部分(?)をマウント
mount nvme0n1p1 /mnt/boot
# EndeavourOS に入る
arch-chroot /mnt
ここまではよかったのだが、先程も書いたとおり grub-install コマンドつまりは grub が入っていなかった。。
そのためここからの対処がちょっと違う
code:sh
# grub をインストールしようとするとコケるが、リポジトリの URL を確認するため叩く
yay -S grub #yay がなければ、pacman でよい # ftp.tsukuba.wide.ad.jp であることがわかったので、スマホなどで IP を確認し、hosts に書き込む
vim /etc/hosts
hosts に書き足した内容は下記(昨日時点がそうだっただけなので、実施する際には注意)
code:hosts
203.178.132.80 ftp.tsukuba.wide.ad.jp
書き終えたら、続き
code:sh
# 気を取り直して、grub を入れる
yay -S grub
# grub だけだとうまく行かなかったので、linux パッケージも入れる
yay -S linux
# grub-install (元記事ママ)
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --recheck
grub-mkconfig -o /boot/grub/grub.cfg
# 再起動
exit
reboot
でどうにかなった。。下記は復旧した環境にて残作業
code:sh
# hosts を戻す
sudo vim /etc/hosts
# ftp.tsukuba.wide.ad.jp の行を消し、保存
ちなみにだが、少し前から壊れていた xrandr の設定も復活して快適な解像度で使えるようになった。
個人的には上記の点がとても嬉しい。。。