ディスク全体を仮想マシンに渡すことなく、qemu / kvmでデフォルトでインストールされているオペレーティングシステムを開くことはできますか?

ディスク全体を仮想マシンに渡すことなく、qemu / kvmでデフォルトでインストールされているオペレーティングシステムを開くことはできますか?

私はLinuxとWindowsをデュアルブートします。 Windows Updateなどの操作を実行するためにLinuxを離れる必要がないように、Windowsのデフォルトインストールを仮想マシンで開くことができるようにしたいです。

私が見つけたのは、ディスク全体(それぞれWindowsパーティションとLinuxパーティションがある/ dev / sda、/ dev / sdb ...)を仮想マシンに渡すことでした。 WindowsとLinuxパーティションが完全に分離されているため、Windowsの電源を入れると正常に動作します(LinuxインストールにWindowsパーティションがマウントされていません)。ディスク全体を仮想マシンに渡すことの欠点は、実行中のLinuxインストールを(間違って)開く可能性があることです。これは私のシステムに大きなダメージを与えたでしょう。

それでは、私が今やっていることに代わるものはありませんか?

答え1

1つの回避策は、ループデバイスを作成し、--sizelimitオプションを使用することです。

# blockdev --getsize64 /dev/sda
146774507520
# losetup  -f  --sizelimit $(( 200*1024*1024 )) /dev/zero
/dev/loop0
# blockdev --getsize64 /dev/loop0
209715200

答え2

必要なパーティションを簡単に渡すこともできます。したがって、Windowsのインストールがディスクのパーティション1にあるとしますsda/dev/sdaKVM / QEMU構成でこれを指定しないで、別の/dev/sda1パーティションの別のディスクに交換して繰り返します。

関連情報