2020年06月01日

Windows10の大型アップデートを適用すると Linuxとのデュアルブート環境で grub rescue では救えない場合がある


「Windows 10 May 2020 Update」(バージョン2004)が公開され、WSL2を使いたいがために早速アップデートしたところ
何度か再起動したあとに「error: no such partition.」と出て止まってしまいました。

供試機のパーテーションはちょっと複雑で
[BIOS (Windows10 / Ubuntu 20.04), UEFI (Ubuntu18.04)]となっていました。
Windowsアップデートをすると Windows が Ubuntu 20.04 のパーテーションを触ってしまい
そこにインストールしてあった /boot/grub/i386-pc/normal.mod を
grubが見つけられずに止まってしまうようです。

調べてみると (hd0,msdos6)にLinuxが存在しているようですが、
unknown filesystem.jpg

grubを修復しようとしても error: file 'boot/grub/i386-pc/normal.mod' not found. で normal を指定できずubuntuが起動しません。
i386-pc normal.mod not found.jpg

BIOSで UEFI Boot を Enable として起動すると、Ubuntu18.04 が立ち上がりました。
Ubuntu 20.04 のパーテーションが見えないので嫌な予感です。

fdisk-l.png

grub rescue で見えていた (hd0,msdos6) は
ここにインストールしてある grub が見えていたようです。
どおりでPathが i386-pc ではなく
(hd0,msdos6)/boot/grub/x86_64-efi/
となっていた訳です。

で、Windowsの起動ディスクを作って起動したら
[アップデートの途中で〜〜。クリーンインストールしますか?] → はい >
[トラブルシューティング]> [詳細オプション]> [コマンドプロンプト] で
bootrec /fixmbr
bootrec /rebuildbcd
(rebuildbcd は不要だったっぽい。bootrec /fixboot はアクセスが拒否されて実行できず)
で再起動してアップデートの続きが始まりようやく復活しました。

なお、Windows10の起動ディスクは Ubuntu18.04 での dd コマンドではだめで、
Windowsマシンにisoファイルをコピーして、
rufus でパーティション構成をMBR、ターゲットシステムを BIOS(またはUEFI-CSM)として
USBメモリに書き込んだら起動できました。

で、ディスクの管理を見ると・・・
diskの管理.png
「空き領域」になってる!!!(大泣)

どなたかここから Ubuntu 20.04 を復活させる方法を御存知でしたらコメントください m(_ _)m
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする
【今是昨非】http://nomulabo.com/