Ubuntu 14.04 LTS (Trusty Tahr) 上的 QEMU GPU 直通

Ubuntu 14.04 LTS (Trusty Tahr) 上的 QEMU GPU 直通

我正在学习有关如何运行可以使用我的图形处理器,我遇到了一个问题。

以下是教程:

这是我启动虚拟机的脚本:

#!/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 8192 -cpu core2duo,kvm=off \
-smp 4,sockets=1,cores=2,threads=1 \
-bios /usr/share/seabios/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=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on \
-device vfio-pci,host=01:00.1,bus=root.1,addr=00.1 \
-device virtio-scsi-pci,id=scsi \
-drive file=/home/matthew/windows1.img,id=disk,format=raw, if=none -device scsi-hd,drive=disk \
-drive file=/home/matthew/Windows10.iso,id=isocd, if=none -device scsi-cd,drive=isocd \
-boot menu=on

exit 0

我收到的错误是:

qemu-system-x86_64: -drive file=/home/matthew/windows1.img,id=disk,format=raw,: drive with bus=0, unit=0 (index=0) exists

我的电脑硬件是:

  • 中央处理器:英特尔 i5-4670
  • 主板:华擎H87M
  • 内存:16 GB 金士顿
  • 硬盘:西部数据 500GB
  • 固态硬盘:金士顿 250GB

答案1

创建新的 img 可能会有帮助。在脚本中更改它。

看:

dd if=/dev/zero of=windows#.img bs=1M seek=size count=0

其中windows#.img,是每个虚拟机映像的唯一名称,而 size 是您想要的映像的大小(以 GB * 1000 为单位)。如果您想要大约 80 GB 的映像,请输入 80000。我们需要 120 GB 的映像,因此输入 120000。默认情况下,此 img 文件将在您的/home/user文件夹中创建。

相关内容