2012-01-09 16:37:51 +0000 2012-01-09 16:37:51 +0000
56
56

GRUB2 EFIの再インストール方法を教えてください。

正常にbiosアップデートをした後、 何かがおかしくなった で、黒い画面の左上にカーソルが点滅するようになってしまいました。エラーも何もありません。バイオスは通常のUEFIの代わりにSATA: <disc name>のブートオプションしか表示されませんでした。私はGPTパーティショニングスキームを使用していますが、

私は最終的に、適切にubuntuを再インストールすることが解決策であることを発見しました。では、どうすればいいのでしょうか ?

PS: 実は、私は自力でGRUB2 EFIの再インストールに成功したのですが、これについての完全なハウツーが見つからなかったので、ここに回答を掲載します。

回答 (5)

87
87
87
2012-01-09 16:39:36 +0000
  • ライブUSB/CD UEFIモードでコンピュータを起動します。私は、<flash_drive>UEFI: <flash_drive>の2つのブートオプションを持っていたが、2番目は、/sys/firmware/efi/が後で失敗しないように、efibootmgrでefi変数を公開するために必要です。最初のオプションで起動すると、次のようなエラーが出ます:

  • 壊れたシステムにchrootしてください(ubuntu grub2ヘルプに似ていますが、efiの特異性を持つ):

  • あなたのlinuxのディストリビューションに応じて、今、あなたは異なることを行うことができます。

  • chrootを終了し、すべてのものをアンマウントして再起動するためにCtrl+Dを入力してください:

あなたのニーズに合わせる必要があるかもしれません(異なるパーティションテーブル、別の/bootパーティションなど)。ブート可能な USB デバイスのセットアップ方法については 広範なガイド もありますが、その中でも Mac のセクションが一番便利です (FAT32 パーティションを作成して、ファイルをコピーして、再起動して、完了)。

5
5
5
2014-03-20 00:27:02 +0000

Maxineと同様に、BIOSのUEFI設定が破損していて、マシンが起動しませんでした。

私の場合は、Linux Mint Debianを搭載したLenovo ThinkServer RD430です。私の場合の OS は linuxmint-201403-mate-dvd-64bit を USB 経由でインストールしています。(UEFIが動作しない原因となるイベントの完全な説明は以下を参照してください)

ThinkServer TS140で全く同じ手順を踏んでも、UEFIは一度も気が狂うことはありませんでした。RD430のドライバページを見てみると、私のbiosは2つのバージョンが古いです。私は前にマザーボード上のBIOSを更新する必要があったことはありません, ので、私は利用可能な新しいバージョンがあるときに自動的に更新するものではありません. biosをアップデートした後、上記のMaxineの答えは、ひねりを加えただけで、動作しました…

# efibootmgr -c --disk /dev/sdX --part Y
# efibootmgr -v
BootCurrent: 0004
Timeout: 1 seconds
BootOrder: 0002,0000,0003,0001,0004
Boot0000* linuxmint HD(1,800,1f4000,829f6cc9-5b17-479c-b3ea-61e43faecbf7)File(\EFI\linuxmint\grubx64.efi)
Boot0001* LMDE Linux Mint Debian HD(1,800,15d505800,934c598c-fe3c-fd43-84a1-fa38e4f72552)File(\EFI\linuxmint\grubx64.efi)
Boot0002* Linux HD(1,800,1f4000,829f6cc9-5b17-479c-b3ea-61e43faecbf7)File(\elilo.efi)
Boot0003* UEFI: Built-in EFI Shell Vendor(5023b95c-db26-429b-a648-bd47664c8012,)AMBO
Boot0004* UEFI: VerbatimSTORE N GO 1.00 ACPI(a0341d0,0)PCI(1a,0)USB(1,0)USB(4,0)HD(1,80,1d70780,00000000)AMBO
mint / #

efibootmgr -cコマンドは、00000002の2つのエントリを追加しました! ブート順の最初のBoot0002* Linux HDエントリは**正しくありません。 0000エントリは正しいです

これをテストするために、私は何の中断もなく起動してみましたが、これは0002エントリです。案の定、うまくいきませんでした。そこで、サーバを再起動してF12を押し、linuxmintを選択しました。

efibootmgr で不要なエントリを削除する方法は以下の通りです:

# efibootmgr -b 2 -B

このコマンドを使って 00010002 のエントリを削除しました。オプション0001は、OSを回復するために私の多くの試みの最後からでした。


UEFIノート

あなたがこれを読んでいると私が/asとしてUEFIと同じようにイライラしている場合は、ここではいくつかのノートとリソースです: “ UEFIシェルへのブートは、DOSシェルを使用することに似ています。
” Lenovo の UEFI_on_TS430 document は efi シェルの使い方を説明している唯一のリソースです。 “ nPartition Administrator’s Guide 別の UEFI シェルリファレンス です。 ” ローダに移動して実行することで efi シェルからパーティションを起動してみることができます。
“ UEFI はディスクが msdos のパーティションテーブルではなく GPT のパーティションテーブルを持っていることを望んでいます。
” grubの変更をするときはいつでも、再起動が問題ないことを確認するために、前後に/EFI/bootを使用してください。私の構成は、PCIe 2.0スロットにLMDEをインストールしたSSDを このRAIDコントローラ に搭載しています。AOC-S3008L-L8i RAIDコントローラ ITモードにリフラッシュ済み )を第2PCIe 3.0スロットに6x 3TBドライブを取り付けています。RAM: 12GB ECC (4GB×3)。

システムが起動しない原因となった変更点は以下の通りです。
“ オンボードコントローラの LSi ソフトウェア RAID bios プロンプト を無効にします。 ” 古い HighPoint RocketRaid カードをオープン PCIe スロットに追加します。

3
3
3
2012-03-01 11:08:40 +0000

私はこれに投票するだろうが、どうやら私はSuperUserに十分な支持を持っていないようだ。私は最終的に私が働いたが、ブートしないだろうクローンとの戦いの日の後にこれへの答えを見つけたことを喜んでいます。私はそれがUEFIとある種の「安全な起動」メカニズムか何かに関係していると思っています。やったことは、Ubuntu DesktopをUSBメモリに入れて、USBメモリのルートにgrub-efigrub-efi-amd64のパッケージを追加したこと(Ubuntu 11.04の場合はgrub-efi-amd641.99~rc1-13ubuntu3_amd64.debとgrub-efi-amd641.99~rc1-13ubuntu3_amd64.deb)。 04 - distroやアーキテクチャに合わせて適宜変更してください)と、USBスティックにもスクリプトで以下のように入れておきます。唯一の時折の問題は、UEFI が時々 HDD の下のブート優先順位の下に移動されてしまうことです。

1
1
1
2015-01-21 11:38:23 +0000

私の32ビットUbuntu 14で。 10上のLenovo Yoga 2 Pro、私はこのようにUEFIブートに変更しました:

-フォルダを作成

  • /etc/fstab

の “EFIシステム "パーティションをマウントgrub-efi-amd64-bin

-インストールgrub-efi-ia32-binをアンインストール

  • efiモードでUbuntuを再起動

-それが正常に起動するかどうかをテストし、その後、私はgrub-efi-amd64をインストールし、

grub-pc grub-gfxpayload-listsをアンインストール私は尋ねられたときに/bootを削除しないことを選択しました。


多分私はそれを複雑にして、これはちょうどうまくいっただろう:

apt-get install --reinstall grub-efi
update-grub
0
0
0
2018-08-08 01:32:05 +0000

このエントリは、どちらかというと efi エントリを再インストールするためのコンピュータの準備に沿ったものです。また、内部メディア(SSD, HDD)にシステムをインストールした後にレスキューディスクを作成する効果的で簡単な方法もあります。それは私の望むライブUSBの永続性を持っているから発生し、永続的なインストールのためのUnetbootinのようなユーティリティをインストールする時間が新鮮なインストールとほぼ同じであるので、私は単に内部SSDにOSをインストールするために使用されたようにUSB上のインストールを行うために同じライブディストリビューションを使用していました。

もちろん、これはどれも RAID やその他の特殊な設定ではありませんが、USB ドライブ上にボリュームパーティションを用意して、その USB 上でディストロの利用可能な方法を使ってインストールを行う必要がありました。USB から再起動すると、内部の UEFI grub エントリは消えてしまったようで、BIOS メニューのエントリを使ってドライブを選択しようとすると grub メニューだけが残っていました。

代わりに USB から起動すると、ディストロの方法は /boot/efi マウントを含むパーティションの /dev/sda2 のリストを持つ既製の grub メニューを生成していました。ほとんどのプライマリ内蔵ドライブのインストールでは、パーティションの grub 名は hd0, gpt1 です。そこからgrubユーティリティを実行して普通に起動します

この時点から、以前はアクセスできなかった内蔵ドライブでOSを実行して、USBを抜いてからsudo grub-installを実行します

USBを抜いて再起動すると、元の状態に戻れるはずです。この時点でUSBは通常モードやレスキューモードに内蔵ドライブを起動するように設定されており、ドライブには独自のメニューが用意されています。

関連する質問

6
10
5
37
6