EFI / UEFIからUbuntuを起動する方法は?


20

EFIブートを有効にして、新しく購入したLenovo ThinkCentre Edge 71(モデル:1577-G3G)にUbuntu 11.10をインストールしました。私が選んだのために使うディスク全体のオプション。インストールプロセスに問題やエラーが発生しなかったとしても、今すぐ再起動すると次のように表示されます。

起動可能なオペレーティングシステムはありません。起動可能なディスクを挿入し、任意のキーを押します...

これはEFIのせいだと思います。

回帰:

  • システムセットアップ(POST中のF1)をチェックして、EFI / UEFIブートを無効にするBIOSオプションを見つけましたが、このマシンにはそのようなオプションはありません。
  • これは、BIOSの「セキュアブート」機能が原因である可能性があります。
  • ハードウェアベンダーは、Linuxの起動を妨げるBIOSの「セキュアブート」設定を知りません。
  • Lenovoサポートは、セキュアブートと呼ばれるBIOS設定について何も知りませんでした。また、Linuxの起動を妨げる制限についても知りませんでした。
  • ThinkCentre 1577 BIOSマニュアルは EFI、UEFIセキュアブートにも言及していません。

EFIを搭載したマシンにUbuntuをインストールするにはどうすればよいですか?-または、おそらくUbuntuはすでにインストールされているので、Ubuntuを起動する方法を教えてください。


2
Ubuntuはすでに「正常に」インストールされているため、grub-efiを再インストールする必要があります。まさに昨日やらなければならなかったことです。superuser.com/ q / 372962/37511をご覧ください。
マキシムR.

superuser.com投稿の指示に従ってみました。Ubuntuをブートしませんでした:(
ervingsb

スレッドubuntuforums.org/showthread.php?t=1901748の詳細を教えてください。何が機能し、何が機能しなかったか、エラーメッセージなど
マキシムR.

回答:


11

これは、Ubuntuフォーラムの neraseziによる修正された投稿です。

UEFIの主な情報源はUbuntu UEFIガイドでした

以下は彼がした手順です。

  1. UEFIアーキテクチャに一致するライブCDを使用します。ほとんどがx86-64。ライブCDを起動します(xubuntuまたはlubuntu。これらは軽量のデスクトップですが、Ubuntuおよびkubuntuでも動作するはずです)。

    ライブシステムがUEFIモードで起動していることを確認してください。UEFIセットアップで、おそらくブートオプションなどで確認できます。私の場合、デバイス名の前に「UEFI」というプレフィックスを付けています。

  2. ライブシステムが実行されたら、ターミナルを介してrootパスワードを設定して入力します。
    sudo passwd root

    次に、デフォルトのライブcdユーザーからログアウトし、GUIモードでrootとしてログインします。ハードドライブを接続します。USB3ポータブルHDDを使用していますが、ほとんどの場合、ハードドライブはSATA内部ドライブです。とにかく、すべてのデータをバックアップしたことを確認してください。プロセスによってドライブ上のすべてが消去されます。Gpartedを起動し(GUIツールはテキストツールよりもはるかに簡単です)、システムをインストールするドライブを選択します。(必ず正しいものを選択してください!)トップメニューをポイントし、デバイス>パーティションテーブルの作成...を選択してください。警告メッセージが表示されます。[詳細設定]をクリックし、[gpt]を選択します。OKと言う新しいGPTディスクレイアウトが作成されました。次に、パーティションを作成する必要があります。最初のプライマリパーティションとしてFAT32ボリュームを作成し、それにラベルEFIを割り当てる必要があることが非常に重要です。パーティションが作成されたら、それを右クリックして「フラグを管理」を選択します。「ブート」フラグを確認して、「OK」と言います。/パーティションの作成(/ homeと/ bootを分離したい場合があります。通常のように行います。私の場合は/パーティションを作成しました)、およびスワップ領域に進みます。常にプライマリパーティションを優先するため、GPTでは4つのプライマリパーティションの制限が削除されました。Gpartedを閉じます。

  3. システムをハードドライブ「/」パーティションにインストールし、ここにインストールするブートローダー(GRUB 1.99)を指すことを忘れないでください。別の「/ boot」パーティションを作成した場合は、ブートローダーのインストール用にそのパーティションを選択する必要があります。

  4. UEFIBootingガイドの一部を次に示します。

    GRUB2(U)EFIの構築

    最新のgrub2ソースコードのZIPファイルをダウンロードします。ftp://ftp.gnu.org/gnu/grub/

    grub2をビルドするには、次のプログラムをインストールする必要があります(ビルドの依存関係):

    bison autoconf automake flex autogen python(2.xシリーズ)(bzrリポジトリからビルドする場合はautogen.sh用)texinfo help2man gettext(NLSサポート)device-mapper freetype2(libs)

    sudo apt-get install bison libopts25 libselinux1-dev autogen m4 autoconf help2man libopts25-dev flex libfont-freetype-perl automake autotools-dev freetype2-demos texinfo efibootmgr

    efibootmgrは、後で必要になるため、インストールする必要があるソフトウェアに追加されました。

    64ビット(U)EFIの場合:

export EFI_ARCH=x86_64 ./configure --with-platform=efi --target=${EFI_ARCH} --program-prefix="" make

32ビットアーキテクチャを使用している場合は、上部にあるリンクでオンラインドキュメントを確認してください。

(U)EFIシステムにGRUB2をインストールする

EFIシステムパーティションを決定します。(2番目のhdに/ dev / sda1または/ dev / sdb1が設定されている場合)

次に、パーティションを/ mnt / EFISYS(または任意のマウントポイント)にマウントします。次のコードは、/ dev / sda1がEFISYSパーティションであると想定しています。

sudo mkdir -p /mnt/EFISYS

sudo modprobe dm-mod

sudo mount -t vfat -o rw,users /dev/sda1 /mnt/EFISYS

sudo mkdir -p /mnt/EFISYS/efi/grub

次に、GRUB用のEFIアプリケーションをビルドし、それと他のモジュールをコピーします。

「grub2コンパイルされたsource / grub-core」ディレクトリに入ります-デフォルト:/ usr / lib / grub / {EFI_ARCH}

grub-mkimage -O ${EFI_ARCH}-efi -d . -o grub.efi -p "" part_gpt part_msdos ntfs ntfscomp hfsplus fat ext2 normal chain boot configfile linux multiboot

sudo cp grub.efi *.mod *.lst /mnt/EFISYS/efi/grub

注:ポータブルgrub.efiアプリを作成するには、-p ""オプションが重要です。/ mnt / EFISYS / efi / grubにgrub.cfgを作成します:

sudo touch /mnt/EFISYS/efi/grub/grub.cfg

ファームウェアがデフォルトとしてGRUB2(U)EFIを起動するようにします

Mac以外のUEFIシステムでは、efibootmgrを使用してUEFIファームウェアブートマネージャーを変更します。これには、カーネルをUEFIモードで起動する必要があり、カーネルプロセッサアーキテクチャが「efivars」カーネルモジュールをロードし、ブートマネージャ変数にアクセスするためにefibootmgrのファームウェアアーキテクチャと一致する必要があります(「noefi」は使用されません)。最初に、grub2-efiがBIOSモードでインストールされている場合、ファームウェアコンソールから「efi / grub / grub.efi」を手動で起動する必要があります。次に、efibootmgrを実行してブートエントリを作成する必要があります。

sudo modprobe efivars

「grub2 compile source / grub-core」ディレクトリを入力します

grub-probe --target=device /boot/efi/efi/grub/grub.efi

出力をgrub-probeが/ dev / sda1であると仮定します

sudo efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label "GRUB2" --loader "\\EFI\\grub\\grub.efi"

上記のコマンドでは、/ boot / efi / efi / grub / grub / efiを/ boot / efiと/efi/grub/grub.efiに分割でき、(/ dev / sda)->パーティション1に変換されます- > \ EFI \ grub \ grub.efi

  1. Synapticを開き、すべてのgrubパッケージを削除し、grub-efiパッケージ(私にとってはamd64)とすべての必要な依存関係のみをインストールします。インストールが終了したら、ターミナルでsudo update-grubを実行します。/ boot / grubから「grub.cfg」を編集し、ディスクUUIDがディスクとパーティションに一致することを確認してください。音声「insmod part_」と「set root = '(hd0、」には「gpt」テキスト行があります。 OK、「grub.cfg」をEFIシステムパーティションの「efi / grub」にコピーします。前述の内容が一致しない場合は、grub.cfgを編集して値を手動で変更します。次に、ファイルを「 Efiシステムパーティションのefi / grub」ディレクトリ(/ mntの下にマウントする必要があります)。

    その後、システムを再起動すると、UEFIセットアップの下の[ブート]タブにGRUB2という名前の新しいエントリが表示され、それをデフォルトのブートオプションとして設定しました。


EFI以外のインストールでefibootmgrをインストールすることはできますか?ソースからgrub2をコンパイルすることは本当に必要ですか?ブート修復も別のオプションですが、UEFI仕様を実装するベンダーが異なるため、成功率も異なります。これは、この「ファームウェアをデフォルトとしてGRUB2(U)EFIを起動する」が一部のマシンでは不可能なことも意味します。
ゲザナンサ

うわー、これは古い答えです。それ以来多くの変化があり、私が取り組んできたいくつかのケースでは異なるベンダーの実装に関する部分が手に負えなくなっているので、新しい質問であなたが言及していることを尋ねます。
ルイスアルバラード

あなたが探している答えがここに見つからない場合(そしてあなたがOPであるように)、これはあなたがまだ探している答えを見つけていないと仮定しているので、これはduではありません。これとは別に、これに関連する多くの同様の質問がありますが、実際には過去6〜12か月で見たEFI全体をどのように回避するかについて何らかの方法で異なります。
ルイスアルバラード

1
1つのことは確かですが-共通分母= GRUB
geezanansa

UEFI対応のGRUBを非UEFIシステムからUSBスティックにインストールする方法を教えてください。
trusktr

5

マシンがU / EFI対応かどうかを確認するにはdmesg | grep EFI、ライブデスクトップセッションでターミナルから実行するだけです。
インストールされたUbuntuがU / EFIを使用して起動したかどうかを確認するには、何/sys/firmware/efiが返されるかを確認してください。
時間を節約する解決策は、Ubuntuがインストール時にUEFIモードで実際に起動したことを確認することです。新しいUbuntu UEFIガイドセクション2.4を参照すると、これが見事に説明されています。

コンピューターがEFIモードでCDを起動するかどうかを識別する

警告:PCがEFIモードでCDを起動する場合でも、レガシーモードでHDDを起動する場合があります(逆の場合もあります)。

64ビットUbuntuディスクで起動する場合:

  • BIOSがEFIモードでCDを起動するように設定されている場合、次の画面が表示されます。

UEFIモード

  • BIOSがEFIモードでCDを起動するように設定されていない場合、またはディスクが64ビットでない場合、以下の画面が表示されます。

BIOSモード

UEFIを使用してハードドライブが確実に起動されるようにするために、必ず同じガイドを使用してください。これは、SATAをAHCIに設定するのと同じくらい簡単かもしれませんが、使用しているファームウェアによって異なります。

画面をグラブしたら、「c」を押してコマンド行にドロップし、lsefisystabインストール前にUEFIが使用されているかどうかを識別する別の便利な方法であるGUIDを含むEFIエントリのテーブルを表示することができます。

dmesg | grep EFIお使いのマシンがUEFI対応かどうかを識別するために使用できます。U / EFI対応ではないマシンの1つで、これをUEFI対応ですか?
行うと、UEFI対応マシンで同じコマンドを実行すると、EFIを使用して起動したときにさらに多くの行(おそらく50+)が返されるため、誤解を招く可能性がありますでrodsbooks(リンクはGRUB2を使用する代わりあるREFind関数のためのものです)。ロッドブックのWebページは定期的に更新されており、非常に信頼できる情報源です。著者は天才ではないとしても控えめに言ってもUEFI教授です!

このページのロッドブックを参照すると、Ubuntu 11.10はFAT16ファイルシステムでESPを作成しますが、一部のUEFIファームウェアはFAT32ファイルシステムでESPを必要とします。Ctrl+ Fを実行し、この段落のリンク先ページでFedoraを検索すると、完全な説明が表示されます(参照されている情報に直接移動するには、[検索バー]で[次へ]を1回クリックします)。
セキュアブートに必要なUEFI仕様はUEFI 2.2であり、Windows 8がプレインストールされたマシンはUEFI 2.3.1を使用するという事実を考慮すると。
Ubuntu 11.10はセキュアブートに対応していないことが確認されているため、セキュアブートは問題になりません。

UEFIを使用した後、UEFIの使用時にのみGPTを使用できるWindowsをインストールできます。インストーラーの不足により、UbuntuはBIOS /レガシー設定を使用してインストールされます。つまり、UbuntuはBIOSまたはUEFIの両方を使用してGPTにインストールできるため、各OSを起動するためにファームウェア設定を切り替える必要が生じます。

WindowsがUEFIを使用しているかどうかを識別するには、ディスク管理を使用してGPTが使用されていることを確認します。このガイドを使用して、Windows BIOSインストールをUEFIに変換できます。WindowsBIOSインストールをUEFIに変換します

簡単な解決策の1つは、Boot-repair-diskを実行することです(cd .isoをダウンロードすると、完全なUbuntu.isoを使用してからブート修復をインストールする場合に比べて、起動がわずかに速くなります。 Boot-Repairはgrub-efiをインストールし、システムがUEFIを使用してUbuntuおよびUEFIを使用する既存のインストールを起動するために、ファームウェアのハードコーディングの問題を修正します。

重要な部分(ベンダー固有かもしれません)は、EFIモードでの起動方法です(つまり、同じUbuntu 14.04 LTS CDは2つの異なるモードを検出し、上記のように異なるテキストと非テキストの起動画面をレンダリングできます)。

http://forum.hardware.fr/hfr/OrdinateursPortables/portable/resolu-installation-probleme-sujet_67937_1.htm

またはこれ:

http://rog.asus.com/220572013/rampage-motherboards/rampage-iv-uefi-boot-installation-guide-on-windows-7-or-8/

ブート優先順位のBIOSセットアップでは、一般的にDVDには2つの異なるオプションがあります:PxまたはUEFI(または他の言葉)。これの1つはUEFI用で、もう1つはレガシーMBRベースのブートアップ用です。


3

ACERノートブック5560GのEFI問題を解決し、Wubi USBディスクのEFIディレクトリとEFIファイルの名前変更することができたことがわかりました(immerohnegottに感謝します)。

USBスティックにGPartedを使用して、2つの既成パーティションに通常のGRUBインストールを強制しました。パーティトンは次のとおりです。

  • /boot (100 mb)
  • /(70 GB)

Windows 7を再起動し、EasyBCDの無料バージョンをインストールします。新しいエントリを追加するLinux -- >> Grub 2と、すべてのパーティションでGRUBブートローダーが検索されます。

この方法では、Windowsの「システム予約済み」パーティションとPQSERVICE Acer隠しパーティションは変更されません。


ありがとうございました。私はルイス・アルバラードの手順に従うことを拒否しましたが、この簡単な方法でそれができました。Luisの答えが間違っていると言っているわけではありませんが、Ubuntuを起動するためだけに多くの問題に取り組む必要がある場合は、Windowsを使用します。はい、私はそれを言った。皆さん、これを試してから、独自のLinuxをゼロから構築しようとしています。UEFIボードとUbuntu USBキーをmfウィンドウから追い出す手間を省くことができます。
ガブリエル

リンクの最初の文「これはWindowsがEFIモードで実行されていないシステムにのみ適用されます」...うーん。
ギーザナンサ

2

EFIシステムで動作するUSB​​ブータブルドライブを作成できますが、私はいくつかの経験がありませんので、簡単で動作する方法を見つけました:)

EFI biosを搭載したマシンに、Parted MagicのCD / DVDを挿入します(USBの代わりにCDにしたHIRENブートCDに入れました)そのCD / DVDからブートします。

Parted Magicに入ったら、2GB以上のメモリを備えた空のUSBジャンプドライブを挿入します。Parted Magicに含まれているUnetbootenユーティリティを開きます。プログラムを実行し、ジャンプドライブにロードしようとしているディストリビューションを選択します。指示に従い、完了するのを待ちます。

そのUSBドライブは、EFIシステムで起動するはずです。少なくともそれは私のために働いた:oP


Unetbootinは、USBインストールメディアを作成する優れた方法です。また、ユニバーサルUSBインストーラーを含むpendrivelinuxユーティリティをお勧めします(pendrivelinux.com/universal-usb-installer-easy-as-1-2-3)数回練習したら、CLIを使用して簡単に達成できます。ただし、U / EFIを使用してUbuntuインストーラーを実行するためのソリューションではありません。つまり、使用するメディアがDVDでもUSBでも、ISOは同じです。インストーラは、マウントに使用されるメディアではなく問題です。
ゲザナンサ

1

BIOSでBIOSをインストールするのではなく、BIOSでEFIモードでブートする方法を理解する必要があります。通常のsyslinuxの代わりにgrubメニューが表示されるため、efiモードで起動していることがわかります。


すでにEFIモードで起動していると思います。GRUBメニューが表示されます。Ubuntuロゴのある通常のセミグラフィカルメニューではありません。3つのオプションを備えたブラック/ホワイトのGRUBメニュー:-インストール前にubuntuを試してください-INstall ubuntu-欠陥を確認してください。
ervingsb

@ervingsbは、インストーラーに手動パーティション設定ではなくディスク全体を使用するように指示したと仮定して、それを行う必要があります。
-psusi

1
まあ、それはしませんでした。USB経由でのインストールをあきらめました。Ubuntuフォーラムの誰かが、USBではなくCDROMからインストールすることを提案しました。これにより機能しました。
-ervingsb

1

Lenovo ThinkCentre M91pにUbuntu 14.04をインストールする際に問題が発生しました。迅速で簡単な解決策があります。

  1. Ubuntuインストールディスク/ USBから起動する前に、BIOSに移動し、[スタートアップ]タブで[ブートモード]を[自動]から[レガシー]に変更します。
  2. Ubuntuをインストールします。
  3. 必要に応じて、BIOSのブートモードを自動に戻します。

それは私にとって一貫して機能します。

Ubuntuインストーラーは、インストールするブートローダーを決定するときに、BIOSがEFIをサポートしているかどうかを検出するため、確実に機能します。BIOSをレガシーに設定すると、UbuntuはこれらのLenovoマシンで動作する古いブートローダーをインストールすることになります。


1

BIOS設定で、ハードディスクモードをIDEに変更し、USBフラッシュドライブから起動します。非UEFIモードでインストールされ、インストール後の起動も正常に機能します。

この特定の方法は、最新のBIOSリリースを備えたLenovo ThinkCentre Edge 71でUbuntu 16.04を使用する場合に最適です。


1
トップaskubuntuへようこそ!助けてくれてありがとう!この記事は、いくつかの歳で、質問はサポートされなくなっていると、いくつかの答えを持っているバージョンについては、私はあなたが[ここ]あなたの努力を集中することができれば、社会はそれを感謝していaskubuntu.com/unanswered
オタク長老

考えてくれてありがとう-しかし、私はこの投稿に出くわしたのは、サポートされている最新バージョンでこの問題に遭遇していたためです。同じ問題を説明する新しい投稿を提案できる場合は、そこにも投稿させていただきます。
グレッグ

現在のリリースでこの問題が発生した場合は、回答を編集して、実行しているバージョンを示し、同じ問題とリリースのユーザーが回答を見つけられるようにしてください。ありがとうございました!
オタク長老

これが私のOPの「16.04」がすでに参照しているものです。最新かつ最新のLTSバージョンです。他に何を編集しますか?
グレッグB.

すみません、見逃しました。+1
オタク長老

0

私も同様の問題を抱えています。

私が経験したのは、EFIを搭載したコンピューターにもBIOSが搭載されていることです。私はF2を狂ったようにスパムしました。何が起こったのかと言うと、EFIを使用するか、標準BIOSを使用するかの選択がありました。

ただし、BIOSを使用する場合、コンピューターは「OSが見つかりません」というメッセージで起動します。

したがって、そこからコンピューターを潜在的にフォーマットし、通常のPCとして起動することができます。


0

私は同じ問題を抱えていました...この新しいLenovoのデスクトップの獣を買って同じ問題に遭遇しました、WIN 8.1がまったく必要ではありませんでした(Red Hat 6.1以来Linuxを扱っていました)しかし、私は慣れていませんでしたUEFI / EFIで。PCはliveCDを起動することさえできません。このブログでtru情報を掘り下げた後、UEFI / EFI / BIOSでいくつかの点を変更する必要があることがわかりました。最初はCSMを無効にし、ブートスタートアップオプションで[レガシーのみ]を選択します。再起動してブーム!にいた。Ubuntu 12.04をインストールしました。その後、同じ設定を「UEFIのみ」エラー「OSが見つかりません」に戻した後、12.04が起動しないことを発見しました。 CSMおよびUEFIのみ、できれば!私はUEFIから起動しましたが、マシンの動作がかなり良くなっていることに気付きました!UEFIから新たにインストールする必要はありません。13.04/ 10にアップグレードするだけでUEFIに戻りますが、それでもうまくいきました。


回答を編集し、本文に段落を追加して読みやすくしてください。また、いくつかの参考文献も素晴らしいでしょう。
ダナテラ14年

0

この問題を解決し、Ubuntu 16.04とWindows 10を使用していますが、Ubuntuを自動的に起動できません。EFIパーティションはFAT32です

Ubuntuパーティションの最初の起動順序を確認してください。

$ sudo su
# cd /boot/efi/EFI/Boot
# mv bootx64.efi bootx64_.efi
# cp ../ubuntu/shimx64.efi bootx64.efi
# cp ../ubuntu/grubx64.efi grubx64.efi
# update-grub
# reboot

-2

ここで同じ問題。SuperGrub CDから永続的に起動することで、それを「解決」しました。私はそれをこのようにすることを気にしません。セキュリティ機能と考えています。SuperGrub CDは私の追加のキーです。Ubuntuでハードディスクをチェックすると、Ubuntu-HDDが非MBRディスクであることがわかります。このディスクのパーティションを再分割してMBRを追加すると問題が解決するように見えますが、私はこの問題をすべて解決するのが面倒です。


質問は暗黙のうちに「U / EFIを使用してUbuntuをブートする方法」を尋ねます。MBRはMSDOSドライブに関連付けられており、U / EFIはGPTドライブを使用しています。Ubuntuにはgrub_biosパーティションを使用するときにGPTを使用する機能があります。つまり、ブートにはUEFIモードではなく、GPTドライブでBIOS /レガシーモードを使用します。Windowsは、UEFIを使用してGPTドライブのみを起動します。つまり、WindowsにUEFIを使用し、Ubuntuにbios_grub(MBR)を使用するデュアルブートシステムでは、Ubuntuを起動するためにファームウェア設定でUEFIをオフにする必要があるため、Windowsは起動しますがUbuntuは起動しません。OPが記述するように
....-ゲザナンサ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.