GNU/Linux >> Linux の 問題 >  >> Linux

Debian:ターミナル (dd) を使用して Windows 10 の起動可能なインストール USB ドライブを作成する

<ブロック引用>

何が起こっているのか理解したい

Rufus 開発者はこちら

Linux ISO がこの方法を適用しているため、理解できない人が多すぎますが、これは本質的に「ISOHYBRID」と呼ばれる主要なハックです。 、つまり、ほとんどの場合、ISO イメージを取得してバイトごとに USB ドライブにコピーするだけでは、起動も期待できないということです。

これは、ISO 形式とそれが使用する基本的なファイル システム (02 または 10 ) は、通常の HDD や USB ブートとはまったく異なる獣である光学ブート用に設計されています。 1 つには、光学メディア、したがって (通常の) ISO イメージには、(通常) HDD または USB ブートに不可欠なパーティション テーブルがありません。 BIOS ブートに不可欠な MBR。

これは、通常の 1:1 コピーを行う場合、 Windows などの ISO をディスクにコピーし、起動しようとすると、次のようになります:

  • レガシー/CSM モードの BIOS システムまたは UEFI システムは、MBR を認識しません。特に、28 を認識しません。 31 ディスクが BIOS ブート可能であることを示す MBR の最後の 2 バイトのシーケンス。したがって、そのディスクを BIOS モードで起動することはできません。
  • UEFI システムは (通常) 43 をマウントしません または 50 ディスクまたはフラッシュ ドライブ メディアからパーティションを作成します。これは、これらのファイル システム用のドライバーが含まれていても、作成した結果のディスクには 60 がないためです。 または 77 パーティションテーブル。通常のディスクを起動する場合、UEFI は最初にパーティションを探し、次にブートローダーを探すように設計されています (例:85 ) そのパーティションに。 90 がない場合 または 104 メディア上のパーティション テーブル。通常の ISO の場合 の場合、ISO にブートローダー ファイルが含まれているかどうかは問題ではありません。UEFI ファームウェアはそれが存在するパーティションをマウントできないためです。

つまり、Rufus のようなユーティリティが Windows ISO (完全に標準的な光学メディア イメージ) からブータブル ディスク メディアを作成するときに行うことは次のとおりです。

  • 117 のいずれかでパーティション テーブルを作成します。 または 129 ユーザーが選択した内容に従って、通常は 136 を使用する少なくとも 1 つのパーティションを作成します または 149 ファイル システムとして使用されます (ISO が使用するものとは完全に異なるファイル システムを使用することに注意してください)。
  • If 156 167 のコードのビットが使用されます。 関連する 172 で、セカンダリ ブート ローダーを見つけます。 このパーティションは、そのパーティションからディスク モードで Windows カーネルの実行を開始するように設計されています。ああ、それはまた 180 199 208 の末尾にブート マーカーが追加されます。 BIOS がディスクを起動可能と見なすようにします。次に、ISO の内容を 212 にコピーします。 または 221
  • If 236 が使用されている場合、Rufus は 240 などの UEFI ブートローダー ファイルが実際に存在することを確認します。 (まあ、実際にはGPTを選択できるようになる前にそれを行います.UEFIブートローダーがない場合、GPTブータブルドライブを作成しようとしてもあまり意味がありません)そして残りのISOファイルと一緒にそれをコピーします.通常は 254 に パーティション、266 から起動するため パーティションは UEFI の必須要件です (ただし、これは UEFI が 275 から起動できないという意味ではありません) または 287 関連する UEFI ドライバーがあれば、FAT32 はそのようなファイルに対応できないため、4 GB を超えるファイルを含む Windows ISO がある場合に便利です)。

現在、上記はセカンダリ ブートローダー (つまり、Windows に由来し、Rufus が変更していないもの) が 両方 をサポートするように設計されている場合にのみ機能します。 オプティカル ブートと通常のブート。通常、両方の 298 を処理する必要があります。 または 301315 または 325 ファイルシステム、およびディスクから起動する場合と光学式から起動する場合のその他の違いについて説明します。しかし、Microsoft はそのためにブートローダーを正確に設計しました。これは賢明なことです。 、ターゲット システムが UEFI の場合、それはあなたを意味するため (通常、337 の 4 GB の最大ファイル サイズの問題がある限り) ISO を起動可能な USB に変換するユーティリティは必要ありませんが、その USB を FAT32 にフォーマットし、ISO ファイルをそこにコピーするだけです (ファイルのコピー、ではない)。> バイト コピー)、ブータブル メディアがあります。

上記のすべてを終えたので、暴言に入ることができます Linux ディストリビューションのメンテナーは、通常はそれよりも賢いのですが、ユーザーを助けようとしているにもかかわらず、実際にはユーザーに不利益を与えていると私が信じる理由を説明してください:

ほぼすべて 最近の Linux ディストリビューションは メジャー ハック を使用しています "IsoHybrid" と呼ばれ、誰かが 349 を作成する方法を見つけました。 パーティションテーブル、358 そしてすべて... 言い換えれば、最近見つけたほとんどの Linux ISO は悪用されています。 ISO9660 ファイル システムを使用して、本来設計されていなかったもののように見せます:デュアル ディスクと光学イメージ。

明らかに、目標は、またできる ISO を作成することです。 363 で使用する ISOがそのように機能することは決してないはずですが、コマンド。 1 つの画像をまったく異なる用途に使用できることはユーザーにとって素晴らしいことなので、理論的にはこれは素晴らしいことのように思えますが、実際には、これは見過ごされがちな問題につながります。

  • 多くの Linux ディストリビューション メンテナーは、Windows がマウントできるセカンダリ ファイル システムをわざわざ使用したくありません (たとえば、376 を使用します)。 380 の「セカンダリ」ファイル システムとして )、つまりたくさん 初めて Linux を使用するために起動可能なドライブを作成している Windows ユーザーの 6 人は、フラッシュ ドライブのコンテンツにアクセスできなくなった理由について非常に混乱しています。 「IsoHybrid」に EFI システム パーティション (ESP) も含まれていると、ドライブのサイズが完全に縮小したような印象を受けるため、さらに悪いことになります。 reddit などにアクセスすると、USB メディアに何が起こったのかについて完全に混乱しているユーザーから多くの投稿が寄せられますが、これでは Linux の第一印象は良くありません...
  • 多くの Linux ディストリビューション メンテナーが ISOHybrid を機能させることに集中しすぎているため、コンテンツを 394 にコピーするだけで UEFI ブータブル メディアを作成するオプションを完全に無視しています。 フォーマットされたパーティション、実際にはすべき UEFI 起動可能ドライブを作成する方法として常に推奨されます (パーティションをフォーマットしてからファイルをコピーする方が、408 を使用するよりもリスクが少ないためです)。 指図)。このため、Ubuntu の Manjaro で標準以下のユーザー エクスペリエンスをもたらす問題がいくつか見られました。ブータブル メディアの作成
  • GPT と「ISOHybrid」は、416 を使用するとセカンダリ GPT テーブルが破損していると見なされるため、問題が発生する可能性があります。 ...これは実際には Windows 7 で BSOD につながります (ただし、これは実際には ISOHybrid の問題ではなく Windows のバグです)。それでも、起動可能なドライブを作成する Windows 関係者にとって最高のエクスペリエンスではありません...
  • 最後に、"ISOhybrids" はあたかも世界で最も自然なメディアであるかのように提示されているため (実際にはそうではありません)、あなたのような人々は を使用してすべての ISO イメージを適用できると信じ込まされています。 424例外の場合 ルールではなく。これは非常に残念なことです。ユーザーの混乱を招くため、一部の Linux ユーザーは、Windows のブータブル メディアを作成したい人に 430 を使用できるようにする必要があると言っています。 それが最も確実にうまくいかないとき!また、10 年前の Linux ISO を選択した場合、442 を使用してブータブル メディアを作成するために実際に使用できるものはほとんどないことがわかると確信しています。 この「IsoHybrid」は実際には最近開発されたものだからです。

私の知る限り、Microsoft は Windows ISO を ISOHybrid という「ハック」に切り替える予定はありません。 ISO から起動可能な USB メディアを作成するには、ISO から Windows の起動可能なメディアを作成する必要があります。

  • (UEFI) Windows が起動できるファイル システムでドライブをフォーマットする必要があります (462473 最近では 480 )、ISO ファイルを抽出します それに。 499 を使用する場合 または 500 、少し追加の作業が必要になる場合もあります...
  • (BIOS/レガシー) Windows が起動できるファイル システム (516) でドライブをフォーマットする必要がある または 528 -- 538 Microsoft が BIOS ブートローダーを公開していないため、動作しません)、MBR ブート コードからボリューム ブート レコードまで、関連するブートローダー チェーンを作成します。

実際にはそれほど複雑ではありませんが、ISO ファイルから 1 対 1 でコピーするよりも少し手間がかかります。

それがあなたの質問に答えてくれることを願っています.


541 Windowsの起動可能なUSBを作成するための適切なツールではありません.簡単な方法は 552 を使用することです .

インストール:

sudo apt-get install devscripts equivs gdebi-core
cd WoeUSB
./setup-development-environment.bash
mk-build-deps
sudo gdebi woeusb-build-deps_3.3.1_all.deb
dpkg-buildpackage -uc -b
sudo gdebi ../woeusb_3.3.1_amd64.deb

現在、パッケージのバージョンは 563 です 、パッケージ更新の場合、コマンド 571 は現在のバージョンを出力します。上記のコマンドでそれを置き換える必要があります。

使い方:

GUI を使用して 586 を実行できます ターミナルから。または、CLI を使用することもできます:

USB デバイスをアンマウントします (重要)。次に実行します:

sudo woeusb -v --device /path/to/windows.iso /dev/sdc

Linux
  1. LinuxMintをWindows8にインストールする|デュアルブートWindows8およびLinuxMint12

  2. MAC上の.isoファイルを使用してPCで起動可能なUSBスティックを作成する

  3. Debianで起動可能なWindows10イメージを作成する方法は?

  1. ddコマンドを使用して起動可能なUSBドライブを作成する方法

  2. ターミナルを使用してUbuntu20.10にJavaをインストールする

  3. Fedora:Windows 8.1 の起動可能な USB を作成する

  1. UEFIを使用したWindowsとLinuxのデュアルブート

  2. Windows10とDebian10をデュアルブートする方法

  3. Windows10と一緒にElementaryOSをインストールする方法[ステップバイステップ]