qemuで物理Windowsパーティションをブートする方法は?


14

gentooとwindows 7を私の唯一のハードドライブにインストールしました。Gentooからqemuを使用してWindowsインストールを開始したいと思います。ブートメニューは正常に機能しますが、選択するとすぐにWindowsブルースクリーンが表示されます。

どうすればそれを機能させることができますか?

(Windowsには、qemuエミュレートされたハードウェアが機能するために必要なドライバーが欠落していると思います。)


qemu正しいアーキテクチャーで実行していることを確認してください。また、Windowsは、HDDコントローラーがAHCIになるのを待っている場合(そうでない場合も同様)、起動に失敗します。
Gelraen、2011年

アーキテクチャは良いですが、qemuはそれをサポートしていないようであるので、ahciについてできることは何もないと思います...
McEnroe

これを試してください:avforums.com/forums/windows-7/...
gelraen

@gelraen問題は、あなたのリンクが私がやりたいことの逆のプロセスを説明していることです。うまくいく可能性があるか、少なくとも100%元に戻せることを知らずに、試すだけでは危険はありません。
マッケンロー2011年

その投稿は、AHCIからATAに戻すことについてです。また、物理マシンでAHCIをオフにして元に戻すことも、レジストリファイルをバックアップすることもできます。
gelraen

回答:


7

ネイティブの物理的なWindows7パーティションの起動は、次の方法で実行できます。

  1. 必要条件を準備します(Win7インストールメディア、Virtioドライバー)。
  2. 現在のユーザーが読み取り専用でハードドライブにアクセスできるようにします。
  3. QEMUを使用してスナップショットモードで起動します。

これは、物理ドライブ上の何も変更しません(実際には読み取り専用です)。


細部

必要なものを準備する

  1. ISOを準備するか、ドライブをお持ちの場合は、Win7の実際のインストールメディアを準備します。
  2. Virtioドライバーをダウンロードします。たとえば、Fedoraからこのドライバーをダウンロードしますhttps :
    //fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/virtio-win.iso

インストールされているWindowsアーキテクチャ(32ビットと64ビット)に一致する正しいインストールメディアを使用するように注意してください。次のコマンドは、64ビットアーキテクチャを想定しています。

ディスクをアクセス可能にする

これは、ハードドライブが/dev/sdarootとして実行されていることを前提としています。

   chmod g-w /dev/sda
   chgrp $USER /dev/sda

udevは通常すべてのデバイスファイルを再作成するため、この変更は(おそらく)次の再起動時に失われます。

QEMUでの起動

  1. これも、ハードドライブがであることを前提としています/dev/sda。ネットワークが無効になっています:

    qemu-system-x86_64 -snapshot -m 3G -enable-kvm -usbdevice tablet \
    -drive file=/dev/sda,if=virtio \
    -drive file=<win7-installation-media> \
    -drive file=<virtio-driver-media>,media=cdrom -boot d \
    -net none
    
  2. 次に、CD / DVDから起動してWin7リカバリーを開始し、Virtioドライバーをロードして、リカバリーコマンドプロンプトで次のコマンドを実行します。ドライブ文字を適切なものに置き換えてください。

    dism /image:g:\ /add-driver /driver:e:\viostor\w7\amd64
    

Drive G:は、Win7インストールを含むドライブです。ドライブE:は、Virtioドライバーを備えたCDROMドライブを表します。

dismコマンドがからコピーされたこのスーパーユーザーの答え

詳細については、スクリーンショットをご覧ください。

(申し訳ありませんが、スクリーンショットは用意されていますが、投稿するには10の評判が必要です:)


10の評判は苦痛です。それは私や他の多くの人が私たちが望んでいた詳細な種類の助けを与えることを止めました。= /私はちょうど私の画像をアップロードしてリンクを貼り付けました、FYI。
ブレントRittenhouse

正直なところ、10ポイントを獲得するのはそれほど難しくありません。問題は、スクリーンショットがもう見つからないことです。私はそれらが私のディスクのどこかにあると確信していますが、...:/
doak

3

この投稿で私が見たことから、qemuを使用して既存のWindowsインストールを起動することはできません。

与えられている主な引数は、Windowsがインストールされている場合、プロダクトキーがコンピューターのマザーボードに関連付けられていることです。ここで、qemuを使用してWindowsを実行しようとすると、Windowsはqemuエミュレーターを別のマザーボードとして認識し、問題が発生します。

詳細については、投稿を参照しください。


2
VirtualBoxはそれ自体を任意のマザーボード(forums.virtualbox.org/viewtopic.php?t=33356)として宣伝できますが、QEMUも同様に宣伝できます。
RushPL 2014年

1

私は、archlinuxでこれをなんとか実現しました。主に、他の(より賢い)人々がブログで提供した例を採用することによってです。

最小バージョン:

depsをインストールする

sudo pacman -S qemu   # qemu itself
sudo pacman -S ovmf   # intel EFI driver
cp /usr/share/ovmf/x64/OVMF_CODE.fd bios.bin   # copy OVMF_CODE.fd to bios.bin somewhere. It MUST be renamed.

ケムを始める

qemu-system-x86_64 \
    -enable-kvm                                   `# enable KVM optimiations` \
    -L .                                          `# dir with bios.bin` \
    --bios bios.bin                               `# bios.bin itself` \
    -m 8G                                         `# provide reasonable amount of ram` \
    -cpu host                                     `# match the CPU type exactly` \
    -drive file=/dev/sda,format=raw,media=disk    `# load raw HDD` 

パフォーマンスの最適化

以下のフラグも推奨されており、私はそれらをうまく使用しています。

# emulate exact host cpu,
# enable hyper-v enlightenments
-enable-kvm
-cpu host,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time
-machine type=pc,accel=kvm

# use all available CPU cores
-smp $(nproc)

閲覧者

私はビューアとしてスパイスを使用しました:

-daemonize  `# don't start monitor, we connect using RDP` \
-vga qxl \
-spice port=5930,disable-ticketing \
-device virtio-serial \
-device virtserialport,chardev=spicechannel0,name=com.redhat.spice.0 \
-chardev spicevmc,id=spicechannel0,name=vdagent \

ビューアを表示するために次が続きます

spicy -h 127.0.0.1 -p 5930 & disown spicy;  # spice-gtk

Windowsブートローダー警告

最後に、複数のディスクを使用している場合は、Windowsブートローダーに注意してください。2つ目の非OSドライブも存在しないと起動しないWindowsインストールがあります。

参考文献

私はここに私のソースを保持したいと思います-私は少なくとも以下が非常に役に立ったことを覚えています:

https://wiki.qemu.org/Main_Page https://qemu.weilnetz.de/doc/qemu-doc.html https://wiki.archlinux.org/index.php/QEMU https://wiki.gentoo .org / wiki / QEMU https://www.suse.com/documentation/sles11/book_kvm/data/part_2_book_book_kvm.html

幸運を!


これは、アーチLinuxで私のために働いた
jameh

0

これが私が物理的なWindows 10ドライブに使用するものです。「-cpu host」フラグを使用しないと、多くの場合Windowsは起動に失敗することに注意してください。

/ dev / nvme0n1をドライブに置き換えてください。/ dev / sdaまたは/ dev / sdb

qemu-system-x86_64 --enable-kvm -cpu host -smp 8 -m 8192 -drive format = raw、file = / dev / nvme0n1

出典:http : //realtechtalk.com/QEMUKVM_wont_boot_Windows_2016_or_2019_server_on_an_Intel_Core_i3_-2221-articles

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