Window 7 64bitの既存のインストールをUEFIに移動する方法(レガシーから)


15

Windows 7 64ビットエンタープライズエディションを搭載したラップトップを使用しています。すでに多くのソフトウェアとドライバーで満たされています。

ラップトップ(Dell E6220)はUEFIを介した起動をサ​​ポートしていますが、インストールはレガシーBIOSで行われました。

ブートをレガシからUEFIに変更しようとすると、ブートデバイスが見つかりませんというエラーメッセージが表示されます(Windows 7はブート可能として認識しません)。UEFIから起動できるように現在のインストールを構成する方法はありますか、フォーマットして再インストールする必要がありますか?

回答:


4

UEFI上のWindows 7では、ディスクパーティションがBIOSシステムで見られる従来のMBRパーティションフォーマットではなくGUIDパーティションテーブル(GPT)を使用する必要があります。残念ながら、WindowsはMBRパーティションをGPTパーティションに非破壊的に変換する方法を提供しません。

ただし、ドライブからデータをコピーし、変換してからコピーし直してもかまわない場合は、Windowsを使用して、このMicrosoft Technetの記事「マスターブートレコードディスクをGUIDパーティションテーブルディスクに変更」で説明されているように実行できます。この記事では、データのコピーを作成してからGPTを使用するようにディスクを変更する必要がある2つの手順について説明します。Windowsインターフェイスを使用して、最初にディスク上のボリュームを削除してから、ディスクを右クリックしてメニュー項目を選択し、ディスクをGPTディスクに変換します。管理者昇格でコマンドシェルを使用して、diskpartユーティリティを使用してボリュームを削除し、ディスクをGPTディスクに変換します。

データを最初にバックアップしたくなく、ドライブをインストールできるLinuxマシンにアクセスしたい場合、Linuxには、ここで説明するようにパーティションタイプを非破壊的に変換できるツールがあります。Linuxボックスが手元にない場合は、LinuxブートCDを作成してそこから起動することもできます

「MBRをGPTに変換する」ための Searhingは他のツールを表示しますが、私はそれらを試したことがありません。


2
こんにちはzdan; ここに関連情報を含めることで回答を拡大できますか?現在の形式では、答えではなく、Google検索に非常によく似ています。ありがとう!
カナダのルーク14

最初のリンクはもう機能しません:(
lapin

8

いいえ、フォーマットして再インストールする必要はありません。UEFIブートを許可するようにディスクを変換できます。

このための優れたオープンソースプロジェクトがあります。gptgenは、GUIDパーティションテーブルを使用するために、共通の「MSDOSスタイル」MBRスキーム(拡張パーティションを含む)でパーティション分割されたハードディスクを非破壊的に変換する..toolです(GPT)。」

Microsoftは、このプロセスに関する優れたチュートリアルを公開しました。以下は、簡略化された手順です(簡略化されていないバージョンも使用できます)。このプロセスには10分もかかりませんでした。

手順

  1. 重要なものはすべてバックアップします。ハードドライブにいくつかの深刻な変更を加えようとしています。

  2. システム修復ディスクを作成します(または元のWindowsインストールメディアを使用します)。

  3. 変換するハードディスクを特定します。[Windows Disk Manager][4]これを使用して使用できます。通常、これはディスク#0です。

  4. gptgenをダウンロードします。これは魔法を行うツールです。

  5. gptgenを解凍し、adminとしてcmdプロンプトを起動してから、次のコマンドを実行します。 警告データをバックアップしましたか?これがノーリターンのポイントです。

gptgen.exe -w \\.\physicaldrive0

上記のコマンドを実行すると、ブルースクリーンが表示される場合があります。それは正常です。私は自分でブルースクリーンを見ませんでした、そしてそれも大丈夫でした。

  1. Windowsインストールディスクまたはシステム修復ディスクを使用して起動します。

  2. 言語と設定を選択し、[ コンピューターの修復]-> [トラブルシューティング]-> [詳細オプション]-> [コマンドプロンプト]を選択します。

  3. diskpartを使用して、ディスクの変更を完了します。「diskpart」と入力してEnterキーを押します。

  4. 「list disk」と入力してWindowsが配置されているブートディスクを特定し、Enterキーを押します。次のようなものが表示されます。

  Disk ###  Status         Size     Free     Dyn  Gpt

  --------  -------------  -------  -------  ---  ---

* Disk 0    Online          128 GB      0 B        *
  1. 特定したら、次のコマンドを使用してディスクを選択します(正しい番号に置き換えます)。

select disk 0

  1. パーティションを確認します。

list partition

次のように表示されます。

   Partition ###  Type              Size     Offset

   -------------  ----------------  -------  -------

   Partition 1    Primary            350 MB  1024 KB

   Partition 2    Primary            126 GB   350 MB
  1. 前のシステムパーティションを削除します。

select partition 1

delete partition

  1. 新しいブートパーティション、Microsoft予約パーティションを作成します。

create partition EFI size=100 offset=1

format quick fs=fat32 label="System"

assign letter=S

create partition msr size=128 offset=103424

  1. パーティションを再度リストすると、次のような結果になります。
   Partition ###  Type              Size     Offset

   -------------  ----------------  -------  -------

   Partition 1    System             100 MB  1024 KB

   Partition 2    Reserved           128 MB   101 MB

   Partition 3    Primary            126 GB   229 MB
  1. Windowsインストールがマウントされていることを確認し、3をWindowsインストールのボリューム番号(通常は1)に置き換えます。

list volume

select volume 3

assign letter=C

  1. diskpartを終了します。

exit

  1. ブートパーティションデータを生成し、C:をWindowsインストールの文字(通常はC :)に置き換えます。

bcdboot c:\windows /s s: /f UEFI

  1. それでおしまい!これでコンピューターを再起動できます。

@Ramhound、フィードバックをありがとう。それは良い点です...元の記事が消えたら私の答えは役に立たなくなります。回答を更新しました。
ネイサンベッドフォード

4
bcdbootには/fフラグがないため、Windows 7では最後の命令は無効です。私はそれを削除しようとしましたが、うまくいきませんでした。
シモンザック

このレシピは私にも役立ちました。2つのコメントとフォローアップがあります:(1)手順を完了した後、新しいUEFIセットアップを起動する前に、BIOSに戻って起動方法をUEFIに変更することを忘れないでください!! 私のMSIボードでは、これはdisk-as-UEFIにdisk-as-BIOSよりも高い優先度を与えるという形を取りました。そうしないと、ブートがハングします:-)暗い画面でカーソルが1-2行下にジャンプします。(2)letter = Sを初めて割り当てたとき、diskpartを終了できませんでした。なぜか、やり直さなければならなかった。(3)MSRパーティションの目的は何ですか?
17

4

WindowsインストールをレガシーからUEFIに変換します。

この手法は、UEFIファームウェアをサポートするコンピューターシステムでのみ機能することに注意してください。BIOS設定で最初に確認してから、このチュートリアルを続けてください。

  • 手順1: インストールが実際にレガシーモードであることを確認します。WinKey+ Rを押してから、msinfo32Enter キーを押して入力します。BIOSモードは、システムの概要でレガシにする必要があります。

  • ステップ2: System Rescue Diskをダウンロードし、そこからブータブルメディアを作成します。ここからディスクをダウンロードします。ブータブルメディアの作成手順を参照してくださいこれは非常に簡単であり、このチュートリアルに従うことができます。

  • ステップ3:ステップ 2で作成したブータブルメディアを使用して、レガシーモードまたはUEFIモードで再起動します。
  • ステップ4:コマンドを実行します:testdisk 矢印キーを使用してナビゲートします。WindowsがレガシーモードでインストールされているHDDを選択し、Enterキーを押します。[EFI GPT] EFI GPT Partition Mapを選択し、Enterキーを押します。[分析]を選択してEnterキーを押します。クイック検索(下部)を選択してEnterキーを押します。[続行](下部)を選択し、Enterキーを押します。もう一度Enterキーを押します。[書き込み](下部)を選択し、Enterキーを押します。Yを押してEnterキーを押します。パーティションテーブルがMBRからGPTに変更されました。
  • ステップ5: Windowsリカバリ/インストールメディアを使用してUEFIモードで再起動します。
  • ステップ6: コマンドプロンプトを開きます。ショートカット:shift + F10
  • ステップ7: 次のコマンドを実行します。

    1. diskpart
    2. list disk-Windowsインストールを含むディスク番号を書き留めます。言いましょう、それはx
    3. select disk x
    4. list partition-Windowsインストールを含むパーティション番号を書き留めます。言いましょう、それはy
    5. select partition y
    6. shrink minimum=200 desired=200
    7. create partition efi
    8. list partition-新しいパーティションのパーティション番号を書き留めます。言いましょう、それはz
    9. select partition z
    10. format fs = fat32
    11. assign letter = b:
    12. exit
    13. mkdir b:\EFI
    14. mkdir b:\EFI\Microsoft
    15. cd /d b:\EFI\Microsoft
    16. bootrec /fixboot
    17. diskpart
    18. list vol
    19. bcdboot c:\windows /l en-us /s b: /f ALL-ここc:で、Windowsがインストールされているパーティションの文字を示していることに注意してください。最初にそれを見つけましょう。
  • ステップ8: 再起動します。多田!できた!インストールがUEFIに変更されたかどうかを確認します。

参照:Windows 7/8 / 8.1インストールをレガシーからUEFIにデータ損失なしに変換する方法!

gdiskを使用した簡単な方法:Windows 7/8/10 インストールをレガシーからUEFIにデータ損失なしで変換する(より簡単な方法)


これに欠けている1つのオプションのステップ:MBRブートに使用していた100 MBの「システム」パーティションがすでにあるシステムを切り替えていました。新しいEFIパーティションが機能する前に、そのパーティションを削除する必要がありました。
ダニーザウアー

ああ、UEFIリカバリディスクも作成する必要がありました。Windows 7 CDはUEFIモードで起動したくないので、rufus.ieを使用して起動可能なUEFI USBディスクを作成しました。UEFIの問題を解決しようとするときにUEFIでブートされた環境にいる場合、それが絶対に必要かどうかはよくわかりません。:)
ダニーザウアー

0

nathanbedfordの答えへの簡単な補遺:

以下のようsimonzackが言った、Windows 7ののはbcdbootサポートされていない/fフラグを。問題ありませんでした。bootrec /rebuildbcd Nathanのコマンドを実行した直後に実行する必要があっただけで、うまくいきました。

2番目の128 MBのパーティションは必要ありません。部屋がなかったので、無視しました。これまでのところ、すべてが正常に機能しています。


-1

@nathanbedfordが言ったことをやったが、Windows 7のbcdbootは/ fフラグを受け入れないので、最後のステップを完了するために

bcdboot c:\windows /s s: /f UEFI

bcdの新しいバージョン、つまり、== win8を使用する必要があります。

これを行うための2つの異なる方法は、新しいbcdboot.exeを読み取り可能なドライブにコピーしてcmdからアクセスできるようにすることです(私がやった方法です)。または、新しいWindowsシステム修復ディスクを実行します。

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