
Ubuntu日本語フォーラム
ログインしていません。
Ubuntu 20.04.4 LTSとWindows 10をデュアルブートで使用しています。
PCはLIFEBOOK P772/G FMVNP8A8です。
PCの電源を入れたとき、GRUBの画面が表示されず、以下のエラーが表示されてしまいます。
Failed to open \EFI\ubuntu\???S? - Invalid Parameter
Failed to load image \EFI\ubuntu\???S?: Invalid Parameter
start_image() returned Invalid Parameter, falling back to default loader
GRUBの画面は表示されませんが、数秒待つか矢印キーとEnterキーを押すとUbuntuやWindowsが起動します。
Ubuntuで以下のようにGRUBインストールすると一時的に直りました。
$ sudo mount /boot/efi
$ sudo grub-install
Installing for x86_64-efi platform.
Installation finished. No error reported.
しかし、Windowsを起動するとGRUBのエラーが再発します。
以前は問題ありませんでしたが、Ubuntu 18.04を削除してUbuntu 20.04.4 LTSをインストールしてからこのエラーが出るようになりました。
Windowsを起動しても次回GRUBが正常に表示されると良いのですが、何か良い方法はありますか?
オフライン
こうかもしれませんね。
sudo update-grub
続けて、sdaならば
sudo grub-install /dev/sda
オフライン
redredさん、返信ありがとうございます。
試してみましたが、まだ直っていないようです。
コマンドの実行結果は以下の通りです。
yo@yo-FMVNP8A8:~$ sudo update-grub
[sudo] yo のパスワード:
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Generating grub configuration file ...
using custom appearance settings
Found background image: /home/yo/ピクチャ/壁紙/さくレット_1280_800_dark.png
Linux イメージを見つけました: /boot/vmlinuz-5.13.0-40-generic
Found initrd image: /boot/initrd.img-5.13.0-40-generic
Linux イメージを見つけました: /boot/vmlinuz-5.13.0-39-generic
Found initrd image: /boot/initrd.img-5.13.0-39-generic
Found Windows Boot Manager on /dev/sda3@/efi/Microsoft/Boot/bootmgfw.efi
Adding boot menu entry for UEFI Firmware Settings
Found Windows Boot Manager on /dev/sda3@/efi/Microsoft/Boot/bootmgfw.efi
完了
yo@yo-FMVNP8A8:~$ sudo grub-install /dev/sda
Installing for x86_64-efi platform.
grub-install: エラー: cannot find EFI directory.
yo@yo-FMVNP8A8:~$ sudo mount /boot/efi
yo@yo-FMVNP8A8:~$ sudo grub-install /dev/sda
Installing for x86_64-efi platform.
Installation finished. No error reported.
yo@yo-FMVNP8A8:~$
PCを再起動すると、GRUBは正常に表示されました。
Windowsを起動してサインインした後に再起動すると、以下のエラーが表示されてしまいました。
Failed to open \EFI\ubuntu\???S? - Invalid Parameter
Failed to load image \EFI\ubuntu\???S?: Invalid Parameter
start_image() returned Invalid Parameter, falling back to default loader
オフライン
>以前は問題ありませんでしたが、Ubuntu 18.04を削除してUbuntu 20.04.4 LTSをインストールしてからこのエラーが出るようになりました
この時、20.04LTSのインストーラーで18.04に交換インストールで行わなかったのでしょうか?
他に解決策が上がらなければ、私ならこうしているところです。
①20.04LTSインストールし直し、それでもだめなら
②18.04をインストールし直し、20.04LTSのインストーラーで18.04に交換インストール、それでもだめなら
③SSDを初期化してWindowsからインストールし直し、20.04LTSの新規インストールし直し
面倒ですね。
オフライン
20.04LTSをインストールした時、以下のような選択肢がありました。
・Ubuntu 18.04 LTSをUbuntu 20.04 LTSにアップグレード
・Ubuntu 18.04 LTSを削除して再インストール
・ディスクを削除してUbuntuをインストール
この時Ubuntuに保存していたデータは不要だったため、アップグレードではなく「削除して再インストール」を選択しました。
他に解決策があれば良いのですが、なければインストールし直しなど後ほど試したいと思います。
オフライン
デュアルブートはWindows10側に大型アップデートが入ったときにGrub起動が壊れる場合があります。
https://vegam57.livedoor.blog/archives/6241872.html
そういうケースだった場合は修復方法を探すより、インストールし直しが結局早いかもしれませんね。
オフライン
とても参考になりました。ありがとうございます。
バックアップができたらインストールし直してみます。
その記事ではWindowsの大型アップデート後にGRUBが壊れていてパーティションが増えていたそうですが、
このPCでも以下のように「Windows リカバリ環境」パーティションが3つもあります。(sda9は自分で作成したDドライブです。)
記事と同じような状況ですね。
Windowsは8.1から10にアップグレードして、大型アップデートも何度かあったと思います。
yo@yo-FMVNP8A8:~$ sudo fdisk -l /dev/sda
ディスク /dev/sda: 476.96 GiB, 512110190592 バイト, 1000215216 セクタ
Disk model: SPCC Solid State
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 34B75A80-D6B7-427D-BF0E-6817DA2ABAF2
デバイス 開始位置 最後から セクタ サイズ タイプ
/dev/sda1 2048 2623487 2621440 1.3G Windows リカバリ環境
/dev/sda2 2623488 4196351 1572864 768M 不明
/dev/sda3 4196352 5777407 1581056 772M EFI システム
/dev/sda4 5777408 6039551 262144 128M Microsoft 予約領域
/dev/sda5 572796928 573644799 847872 414M Windows リカバリ環境
/dev/sda6 573644800 608362495 34717696 16.6G Windows リカバリ環境
/dev/sda7 6039552 511356927 505317376 241G Microsoft 基本データ
/dev/sda8 511356928 572796927 61440000 29.3G Linux ファイルシステム
/dev/sda9 608362496 1000212479 391849984 186.9G Microsoft 基本データ
パーティション情報の項目がディスクの順序と一致しません。
yo@yo-FMVNP8A8:~$
オフライン
解決しました!
問題の状況としてはこのページと同じく、Windowsのbcdeditで設定していてGRUBがエラーになっていました。
https://askubuntu.com/questions/1356436/ubuntu-20-04-fails-to-boot-after-i-ran-bcdedit-set-bootmgr-path-efi-ubuntu
bcdeditでWindows Boot Managerの項目を書き換えてGRUBを起動させていますが、この設定はUbuntu 20.04で問題になるようです。
(インストールし直すつもりでしたが、その前に試しにVirtualBoxの仮想マシンにWindows 10とUbuntu 20.04をインストールして同じ設定をしてみた結果、同じエラーが再現しました。)
ただ、UEFIファームウェアからubuntuを選択すると問題なくGRUBが起動するので、Windows Boot Managerの項目自体を無効化して解決しました。
(起動順位を変えるだけでも良いのですが、勝手に入れ替わって再発してしまうので無効化しました。)
$ efibootmgr --inactive --bootnum 000F
$ efibootmgr --verbose
(中略)
Boot000F Windows Boot Manager HD(3,GPT,15b26c3f-36da-4b5a-9267-219f101e4dfa,0x400800,0x182000)/File(\EFI\ubuntu\shimx64.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0010* ubuntu HD(3,GPT,15b26c3f-36da-4b5a-9267-219f101e4dfa,0x400800,0x182000)/File(\EFI\ubuntu\shimx64.efi)
オフライン