web-dev-qa-db-ja.com

12.04から14.04にアップグレードした後のGrub Rescue

現在の状態:

Cannot boot from HD at all (dualboot with win7)
Cannot boot from USB either (12.04 and win7), goes to boot: Prompt, do not know what to do here, wants a kernel name, same for both Ubuntu 12 and Win7 usb drives.

GRUBレスキュープロンプト:

grub rescue> ls
(hd0) (hd0,msdos5) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1)
grub rescue> ls (hd0,msdos5)/boot/grub/i386-pc
*bunch of mod files*
grub rescue> set prefix=(hd0,msdos5)/boot/grub/i386-pc
grub rescue> set root=(hd0,msdos5)/
grub rescue> insmod normal
error: symbol not found: 'grub_divmod64'.
grub rescue> insmod linux
error: symbol not found: 'grub_realidt'.

これらのエラーは、グーグルでエラーをグーグルで検索しても解決に至らなかったときに私が見つけた指示の一部ではありませんでした。私は、Ubuntu/Linux/Unixにかなり慣れています。 MBRが台無しになっているか、boot.iniが見つからないか、またはわからないと思います。

3
Python Josh

私も同じ状況でした。ブートされたgrubは廃止され、必要なモジュールをロードできないようです。私は多くのことを試しましたが、どれもうまくいきませんでした。私の場合、私は見た

(hd0) (hd0,msdos2) (hd0,msdos1)

msdos2にはgrubディレクトリがあり、/grub/i386-pcにはモジュールがありましたが、実際には何も挿入できませんでした。 error: symbol not found: 'grub_realidt'.を含むあらゆる種類のエラーが発生しました。

最後に、Ubuntu 14.04 CDを添付し、CDから起動し、レスキューモードに入り(「破損したシステムの修復」などと言っていると思います)、GRUBを再インストールするオプションを選択しました。それは初めて働いた。

2
miha

このバグを見つけたばかりなので、これを投稿しています。

私にとっては、ハードウェア上で…

  1. 起動時にBIOSを入力->セキュアブートを無効にする

  2. Ubuntuが起動するはずです…

  3. ブート修復をインストールして実行する

    Sudo add-apt-repository ppa:yannubuntu/boot-repair
    Sudo apt-get update
    Sudo apt-get install -y boot-repair && boot-repair
    
  4. boot-repairを実行し、デフォルトのオプションを使用します。ブート修復を実行すると、いくつかの追加コマンドを実行するように求められます。

    どうやら14.04へのアップグレードには、署名されたカーネルイメージは含まれていません(エラーメッセージに表示されます)。

  5. これが終了すると、セキュアブートを再度有効にできるようになり、Ubuntuが起動します。

WARNING –これはUbuntuを修復しましたが、Windowsを破壊しました。Windowsを起動することはできますが、WindowsはEFIファイルが見つからないという警告をスローし、リカバリディスクから起動すると修復できません(はい少なくともWindows修復ディスクで提供されたものを含め、Windowsブートを修正するためのすべてのコマンドを実行しました。Googleで利用可能であり、修正はUbuntuとは無関係であるため、詳細は提供しませんでした。

これは、LTS-> LTSからアップグレードするときの非常に厄介な小さなバグです。

1
Panther

修理で問題を解決します。

最初のオプション:ブート修復を含むディスクを取得する

Boot-Repairを使用する最も簡単な方法は、次のいずれかのディスクを作成して起動することです。

Boot-Repair-Disk is a disk starting Boot-Repair automatically.

Boot-Repair is also included in Linux-Secure-Remix. 

注:ライブUSBにISOをインストールすることもできます(たとえば、UnetBootin、LiliUSB、またはユニバーサルUSBインストーラーを使用)。

2番目のオプション:UbuntuにBoot-Repairをインストールする

  • ubuntuライブセッション(UbuntuライブCDまたはライブUSBでコンピューターを起動してから[Ubuntuを試す]を選択)またはインストール済みのUbuntuセッション(アクセスできる場合)から

  • インターネットに接続する

  • 新しいターミナルを開き、次のコマンドを入力します(各行の後にEnterキーを押します)。

      Sudo add-apt-repository ppa:yannubuntu/boot-repair
      Sudo sed 's/trusty/saucy/g' -i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list
    
     Sudo apt-get update
     Sudo apt-get install -y boot-repair && (boot-repair &)
    

ブート修復を使用

推奨修理

launch Boot-Repair from either :
    the Dash (the Ubuntu logo at the top-left of the screen)

    or System->Administration->Boot-Repair menu (Ubuntu 10.04 only)
    or by typing 'boot-repair' in a terminal 

Then click the "Recommended repair" button. When repair is finished, note the URL (paste.ubuntu.com/XXXXX) that appeared on a paper, then reboot and check if you recovered access to your OSs.
If the repair did not succeed, indicate the URL to people who help you by email or forum.

これは私のために働くでしょう。これがお役に立てば幸いです。

1
DreamCoder