QEMU Connect физический диск
Я сделал виртуальную машину Windows на моем компьютере с Ubuntu, используя следующий скрипт (найден онлайн).
#!/bin/bash
configfile=/etc/vfio-pci1.cfg
vfiobind() {
dev="$1"
vendor=$(cat /sys/bus/pci/devices/$dev/vendor)
device=$(cat /sys/bus/pci/devices/$dev/device)
if [ -e /sys/bus/pci/devices/$dev/driver ]; then
echo $dev > /sys/bus/pci/devices/$dev/driver/unbind
fi
echo $vendor $device > /sys/bus/pci/drivers/vfio-pci/new_id
}
modprobe vfio-pci
cat $configfile | while read line;do
echo $line | grep ^# >/dev/null 2>&1 && continue
vfiobind $line
done
sudo qemu-system-x86_64 -enable-kvm -M q35 -m 6144 -cpu host \
-smp 4,sockets=1,cores=4,threads=4 \
-bios /usr/share/qemu/bios.bin -vga none \
-device ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1 \
-device vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on \
-device vfio-pci,host=02:00.1,bus=root.1,addr=00.1 \
-device virtio-scsi-pci,id=scs \
-drive file=/home/bas/windows7.img,id=disk,format=raw -device scsi-hd,bus=virtio.0,drive=disk \
-drive file=/home/bas/Downloads/Windows7Pro.iso,id=isocd -device ide-cd,bus=virtio.1,drive=isocd \
-hda /dev/sdd
-boot menu=on
exit 0
Файл vfio-pci1.cfg содержит только адрес pci для видеокарты и USB-устройств (клавиатуры и мыши). Скрипт передает одну из моих видеокарт на виртуальную машину. Я буду запускать 2 из этих vms одновременно, чтобы я мог играть в игры с другом на одном компьютере, поэтому двойная загрузка невозможна.
Если вы запускаете виртуальную машину, она использует фактическую видеокарту для своего отображения.
Виртуальная машина запускается и работает нормально. Я просто хочу добавить к ней физический диск, чтобы я мог разделить том, на котором есть только игры (без системного диска), на виртуальную машину, но я не могу понять, как это сделать.
1 ответ
Согласно документации: http://wiki.qemu.org/download/qemu-doc.html
Вы должны просто быть в состоянии сделать
-hda /dev/sdX
Но, поскольку это Windows, вы просто вынули жесткий диск из компьютера и вставили его в другой. Так что это пойдет и придется искать новое оборудование и т. Д. Вы можете серьезно испортить ваш диск Windows в процессе. Это, вероятно, не очень хорошая идея... Я предлагаю вам создать снимок диска Windows и использовать его вместо этого.
Вы также должны использовать bus = virtio для этих других блочных устройств, гораздо быстрее.