web-dev-qa-db-ja.com

EFIの有無にかかわらず、デュアルブート、Windows 7およびUbuntu 12.04を構成する

Windows 7を搭載したラップトップにUbuntu 12.04をインストールしましたが、Ubuntuから起動できません。

まず、インストール中にこれらのパーティションを作成しました(多すぎるかもしれません):

/dev/sda1 FAT32 SYSTEM 200Mb boot (EFI boot, i guess)
/dev/sda2 unknown file system 128 Mb msftres (Windows Boot Manager)
/dev/sda3 NTFS OS 100 Gb (Windows 7)
/dev/sda4 NTFS DATOS 315 Gb (Data partition)
/dev/sda5 ext4 28 Gb (/home)
/dev/sda8 unknown file system 1 Gb biog_grub (i'm not very sure why i made this one)
/dev/sda6 ext4 17 Gb (/ Ubuntu 12.03 installed withou errors aparently)
/dev/sda7 linex-swap 2 GB (swap)

Windowsから完全に起動できます。実際、EasyBCDでWindowsブートマネージャーを構成しようとしましたが、ブートエントリを認識しません。とにかく、Ubuntu Entryを追加し、それを自動的に構成しました。

これで、動作するように見えるWindows 7のブートエントリと、「アプリケーションが見つかりません」というメッセージを表示するUbuntu 12.04のブートエントリができました。

Ubuntuを使用してUSBから再起動し、コマンドラインおよびブート修復でGRUBを修正しようとしました。結果がありません。

私の知る限り、Ubuntuブートローダーの場所をWindowsブートマネージャーに通知する必要があります。

だから私には2つの問題があります:

  1. 実際、UbuntuブートローダーGRUBまたはGRUB2などがどこにあるのかわかりません。
  2. WindowsブートマネージャーでUbuntuエントリを設定する方法がわかりません。 EasyBCDはエントリを表示しなかったので、BCDedit.exeを使用していると思います。とにかく、使用するパラメーターがわかりません。

私はそれについていくつかの記事を読みましたが、有用なものは見つかりませんでした。

9
Keroak

パーティションのレイアウトは奇妙に見えますが、これがメーカーのOEMインストール方法です。

これがUEFIシステムの場合、再インストールが最も速く、まっすぐ進む方法で正常にインストールされます。パーティションsda5からsda7を削除することをお勧めします。パーティションは作成されたようです。次に、Ubuntuを buntu-12.04-desktop-AMD64.iso in UEFI modeからインストールします(ブート時にCDからブートすることを選択する場合、CDからブートするための2つのオプションがあります。なし)UEFIサポートを有効にしてインストールしていることを確認します。 Ubuntuパーティションと独立したホームパーティションを含むパーティションレイアウトが適切な選択です。 HDDへのサスペンド(休止状態)を使用するには、少なくともRAMのサイズをスワップパーティションのサイズとして選択する必要があります。 12.04で休止状態を再度有効にする に実行する追加のステップが1つあります。インストールが完了したら、ハードドライブにgrub-efi-AMD64パッケージがインストールされたUbuntuが必要です。インストーラーは正しいUEFIシステムパーティションを認識し( EFIシステムパーティション用の特定のGPTパーティションコード )、そこにgrub-efi-stubを入れてUEFIブート変数に登録する必要があります。

最終的には、UEFIブートアップの選択項目で、WindowsとUbuntuのそれぞれに少なくとも1つのエントリが必要です。 Windows関連のエントリがない場合、これはおそらくUEFIシステムではないため、提案された解決策を試してはいけません(UEFIモードでCDをブートすることはできません)。 デュアルブートはGRUBチェーンローディングメカニズムを介して動作するはずです です。したがって、UEFIを介してUbuntuをデフォルトのブートオプションとして設定すると、過去のGRUBでのデュアルブートと同様に動作します。

4
LiveWireBT

まず、パーティションテーブルは明らかにGUIDパーティションテーブル(GPT)です。コンピューターが古い基本入出力システム(BIOS)ではなく拡張ファームウェアインターフェイス(EFI)を使用している場合、WindowsはGPTディスクのみから起動するため、 EFIモードで起動していることは明らかです。従来のBIOSソリューションはEFIシステムで動作する可能性が低いため、これは非常に重要です。

あなたの説明から、何が起動するのか正確にはわかりません。私の推測では、Windowsブートローダーが起動しており、EasyBCDを使用して、機能していないUbuntuエントリを作成しました。これはほとんど驚くことではありません。最後に確認したところ、Windows EFIブートローダーはブートプロセスを別のブートローダーにリダイレクトできなかったため、EasyBCDのWindows以外のエントリは役に立ちません。何が起こっているのかを誤って解釈し、Windowsを起動できるがLinuxは起動できないGRUB起動メニューが実際に表示されている場合は、詳しく説明してください。

これまでの私の解釈が正しい場合は、ファームウェアのブートメニューを使用して、WindowsではなくGRUBを選択し、それを使用してLinuxを起動できる場合があります。ファームウェアのブートマネージャーが十分であれば、これは許容できる長期的なソリューションでさえあります。残念ながら、EFIファームウェアの実装のブートマネージャーは品質が非常に異なり、その多くは貧弱です。ファームウェアにブートメニューが見つからない場合、または使用が面倒な場合は、2つの主なオプションがあります。

  • コンピューターのブートセットアップを再構成してGRUB 2をデフォルトのブートローダーにし、GRUBを再構成してWindowsのエントリを含めることができます。これには、ブートローダーファイルの名前変更や、Linuxの「efibootmgr」などのユーティリティを使用して、コンピューターのNVRAMのブートローダーリストを調整する必要があります。
  • rEFIt またはその新しいフォーク rEFInd、 などのサードパーティブートマネージャーを追加して、WindowsとLinuxの起動の選択を制御できます。 rEFInd Webサイトには、詳細なインストール手順が含まれています。 (私はrEFItをrEFIndに分岐させた人です。)

EFIブートプロセスには、コンピューターの/ dev/sda1であるEFIシステムパーティション(ESP)と呼ばれるパーティションに格納されているファイルが含まれることに注意してください。ブートローダーファイルは通常、EFI/MicrosoftまたはEFI/ubuntuのように、そのパーティションのEFIディレクトリのサブディレクトリにあります。 NVRAMは、ブートローダーのリストと、ファームウェアがそれらを起動しようとする順序を保持しています。ブートローダーの管理には、ブートローダーファイルの追加、削除、または移動と、NVRAMエントリの編集が含まれます。場合によっては、NVRAMエントリが空であるか無効なブートローダーを指している場合、デフォルトのブートローダー(EFI/Boot/bootx64.efi。一部の実装ではEFI/Microsoft/Boot/bootmgfw.efiもデフォルトとしてサポートされます)がロードされます。このトピックの詳細およびLinuxのEFIブートローダーに関する情報については、 トピックに関する私のWebページ を参照してください。

10
Rod Smith

おそらくGRUBメニューが正しくインストールされていません。 grub-repair CD で修復してみてください。このCDで起動し、システムを自動的に修復します。 詳細はこちら をご覧ください。

1
Julien Chau

WindowsはEFIを使用しているため、次のことが必要です。

  1. grub-efiをインストールします。これは、 Boot-Repair の「Separate/efi」オプションにチェックを入れることで実行できます。
  2. 次に、EFIパーティションでgrub * .efiファイルをブートするようにBIOSをセットアップします
1
LovinBuntu

インストール中にアップグレードしようとした可能性があります。そのため、余分な1GBのスペースが作成されます。何もインストールせずに、ubuntuを使用してデュアルブートを簡単に使用できます。デフォルトでインストールされるubuntuのgrub2について話しています。ライブCD構成のデュアルブートが必要です。 これ はgrub2リカバリの非常に良い例です。

0
shantanu