apt-getアップグレードの実行後にGRUBエラーを回避する方法-Ubuntu


13

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

apt-getアップグレードを実行した後

GRUBブートローダーを再インストールするように求める画面が表示されます

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

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

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

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

次のプロンプトは

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

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

同じqがここにあります:

  • どちらを選択する必要があるかをどのように知ることができますか?

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

ありがとう!!


また、16.04のためにこの答えを参照 stackoverflow.com/q/48453372/404699
steampowered

回答:


9

ここにある現在のバグが開かれおり、ここに見られるように 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 upgrade0個の新しいパッケージが返されました。


これは完璧な答えです。
error2007s

4

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

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.