ms-sysまたはddを使用してLinuxから起動可能なWindows 7 USBドライブを作成する際の問題は何ですか?


9

LinuxからWindows 7インストールUSBメディアを作成する方法(Windows 7をインストールするため)に関するいくつかのWebページと投稿(ここおよび他のフォーラム)を読んでいます

TechNetでこれについて尋ねると、それを行う方法に関する一般的な情報を含む返信がありました。

「私は個人的にLinuxにあまり詳しくありませんが、基本的にあなたがする必要のあることはすべて...あなたがそれを行う方法は次のとおりです:

  1. usbフラッシュドライブをフォーマットします。fat32またはntfsは、Windowsインストールをホストするのに十分な大きさのパーティション(64ビットの場合は3GB、32ビットの場合は2.5GB)を作成し、そのパーティションをアクティブ/ブート可能としてマークします。これはウィンドウで実行できますが、gpartedなどのツールでも実行できるため、debianでも同じことができるはずです。

  2. そのパーティションを作成したら、ダウンロードしたISOをマウントし、ルートから始まるすべてのファイルをUSBフラッシュドライブのルートにコピーします。

それで終わりです。」

私はさまざまな場所で別の方法を見つけました。それはTechNetで述べられた方法とほとんど同じです。ただし、この方法には欠落しているステップや、必要かどうかわからないステップがあるようです。

dd常に機能するとは限りません。基本的に、足りないステップは、適切なブートセクターをUSBスティックに書き込むことms-sysでした。これは、Linuxからを使用して実行できます。これは、製品版ので動作しWindows 7ます。

以下は完全な概要です。詳細については、serverfaultの質問を参照してください。

  1. ms-sysをインストールします。
  2. USBメディアが割り当てられているデバイスを確認します(fdisk -l)。ここではそれが想定されます/dev/sdb
  3. すべてのパーティションを削除し、すべてのスペースを占める新しいパーティションを作成し、タイプをNTFSに設定して、ブート可能に設定します。

    cfdisk /dev/sdb

  4. NTFSファイルシステムを作成します。

    mkfs.ntfs -f /dev/sdb1

  5. ISOおよびUSBメディアをマウントします。

    mount -o loop win7.iso /mnt/iso
    mount /dev/sdb1 /mnt/usb

  6. すべてのファイルをコピー:

    # cp -r /mnt/iso/* /mnt/usb/

  7. USBスティックにWindows 7 MBRを書き込みます。

    # ms-sys -7 /dev/sdb

  8. 書き込みがフラッシュされていることを確認します(数分かかる場合があります)。

    # sync

  9. gpartedを開き、USBドライブを選択し、ファイルシステムを右クリックして、[フラグの管理]をクリックします。「ブート」チェックボックスをオンにして閉じます

...これで完了です。

ご質問

  • 最後の手順を実行せずにUSBを機能させるべきではありません# ms-sys -7 /dev/sdbか?それともUSBを起動可能にするためですか?パーティションを起動可能としてマークするだけですか?

  • 代わりにrsyncを使用した方がいいcp -rでしょうか?

  • このすべての手順を次のように実行する必要がありrootますか?そうでない場合、USBデバイスとISOイメージのマウントに使用されるchmodすべてのファイル664chownすべてのディレクトリを使用する必要がありますか?データをコピーする方が簡単で、データにroot影響しないと思います。

  • 誰かがこの方法を試したり、isoをコピーしてみたいような人はいddますか?


Windows 7ではなく、
ISOでDD

回答:


1

ms-sysコマンドが重要です。では-7オプションではWindows 7の互換性のあるブートセクタ作成し、あなたのフラッシュドライブ上に。

ISOはUDFISO9660などのISOファイルシステムを使用しているため、ddは使用できません。USBドライブは、ext3、FAT32、NTFSなどのディスクファイルシステムのみを適切にサポートしているためです。

cp -rの代わりにrsyncを使用する方がよいでしょうか?

あんまり。cp -r完全に正常に動作します。NTFSはパーミッションをLinuxとは異なる方法で処理するため、rsyncを使用してすべてをそのままに保つことはあまり重要ではありません。本当に重要なことは、ISOからのファイルがUSB上にあり、ブートセクターがms-sys -7

必要に応じて、すべての手順をrootとして実行できます。実際にあるルートを必要とする唯一の2つの段階mkfs及び2 mount

rootでも権限の問題が発生する場合はntfs-3g /dev/sdb1、一部のLinuxディストリビューションがNTFSの読み取り専用ドライバーしか提供していないため、USBをマウントする必要がある場合があります。


1

私はdd(dd if = / file / win7.iso of = / dev / sdb)を試してみましたが、機能しません。

それを機能させるための私のステップ:

  • ms-sysをインストールする
  • パーティションを作成し、NTFSファイルシステムを作成するためにgparted。

その後、次のコマンドを適用します。

# mount -o loop win7.iso /mnt/iso 
# mount /dev/sdb1 /mnt/usb
# cp -r /mnt/iso/* /mnt/usb/*
# ms-sys -7 /dev/sdb*
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.