web-dev-qa-db-ja.com

apt-get upgradeの実行後にGRUBエラーを回避する方法-Ubuntu

EC2でubuntu 14.04を実行しています。

実行後apt-get upgrade、再インストールを求める画面が表示されますGRUBブートローダー

GRUBブートローダーが存在しないディスクに以前にインストールされたか、何らかの理由で一意の識別子が変更されました。インストールされていることを確認することが重要ですGRUBコアイメージはGRUBモジュールおよびgrub.cfgと同期し続けます。GRUBが適切なブートデバイスに書き込まれていることを再度確認してください。

  • どのデバイスを選択すればよいですか?

  • マシンに追加のEBSをマウントした場合、それらも選択する必要がありますか?

  • アップグレード中にこのプロンプトを回避したり、コマンドにいくつかのデフォルトを指定したりできますか?

次のプロンプトは

/boot/grub/menu.lstの新しいバージョンが利用可能ですが、現在インストールされているバージョンはローカルで変更されています。

  1. パッケージメンテナーのバージョンをインストールする
  2. 現在インストールされているローカルバージョンを保持する
  3. バージョン間の違いを示す
  4. バージョン間の違いを並べて表示する
  5. 利用可能なバージョン間の3方向の違いを示す
  6. 利用可能なバージョン間で3者間マージを行う(実験的)
  7. 新しいシェルを起動して状況を調べます

ここで同じ質問:

  • どれを選択すればよいですか?

  • アップグレード中にこのプロンプトを回避したり、コマンドにいくつかのデフォルトを指定したりできますか?

15
Ofer Velich

ここにあります に対して現在開かれているバグがあり、それは ここに見られる として12.02 LTSでもありました。 Anders Hallによるバグレポートの下部にリストされている手順は、14.04 LTS 64ビット(HVM)AMI(US-EAST-1のAMI-d05e75b8)で機能します。

$ Sudo apt-get update
$ Sudo rm /boot/grub/menu.lst
$ Sudo update-grub-legacy-ec2 -y
$ Sudo apt-get dist-upgrade -qq --force-yes
$ Sudo reboot

再起動すると、14.04.2 LTSが14.04.3 LTSにアップグレードされ、Sudo apt-get update && Sudo apt-get upgradeは0個の新しいパッケージを返しました。

10
gadams999

Menu.lstファイルにカスタムの変更を加えたことはありませんが、私はこれを数回自分で受けました。なぜこれが起こるのかはわかりませんが、ファイルを比較することを選択したところ、ほとんどがコメントであり、変更されたカーネルの新しいバージョンへの参照であることがわかりました。これについて 未解決の問題 がaptバグ追跡にあります。

手動で変更を加えない限り、古いものを新しいもの(オプション1)で上書きしても問題ありません。安全のために、更新する前にインスタンスのバックアップAMIを作成することをお勧めします。

4
Bazze