Ubuntu

QEMU - Ubuntu 主機上的 Ubuntu 來賓 - 安裝有效,重啟無效

  • January 22, 2019

我已經成功安裝 QEMU 來做 VGA passthrough。我可以讓客人閱讀 Ubuntu ISO,它會找到我分配的 img 驅動器

fallocate -l 100G /VMs/VMs/video_gpu.img

安裝似乎很順利。當我用 ISO 刪除 -drive 線時,我掉進了 EFI 外殼。一些答案建議簡單地“退出”,但我得到一個 BIOS 菜單,並且驅動器無法啟動。

如果我繼續嘗試重新安裝 Ubuntu Guest,安裝程序將檢測到現有的 Ubuntu 並要求與它一起安裝。

我是否錯誤配置了下面的 -drive 選項?

(編輯)

fdisk -l /VMs/VMs/video_gpu.img

顯示有​​一個 EFI 分區,然後是 Linux Filesystem,然後是 Linux Swap。

編輯

fs0:
cd efi
cd ubuntu
grubx64.efi

在那個 EFI 提示符處解決了問題,但是有沒有辦法自動啟動它?我會等待有人回答給他們一些代表,如果沒有,我會回答我自己的問題,也許只是將細節作為另一個問題發布。

qemu-system-x86_64 \
-name $vmname,process=$vmname \
-machine type=q35,accel=kvm \
-cpu host,kvm=off \
-smp 4,sockets=1,cores=2,threads=2 \
-m 16G \
-mem-prealloc \
-balloon none \
-rtc clock=host,base=localtime \
-vga none \
-nographic \
-serial none \
-parallel none \
-soundhw hda \
-usb -usbdevice host:04ca:007d -usbdevice host:413c:3016 \
-device vfio-pci,host=89:00.0,multifunction=on \
-device vfio-pci,host=89:00.1 \
-drive if=pflash,format=raw,readonly,file=/usr/share/OVMF/OVMF_CODE.fd \
-drive if=pflash,format=raw,file=/tmp/my_vars.fd \
-boot order=dc \
-drive id=disk0,if=virtio,cache=none,format=raw,file=/VMs/VMs/video_gpu.img \
-drive file=/home/user/ub16044.iso,index=3,media=cdrom \
-netdev type=tap,id=net0,ifname=tap0,vhost=on \
-device virtio-net-pci,netdev=net0,mac=00:16:3e:00:01:01

編輯 2

在我執行的來賓虛擬機中

efibootmgr -v

哪個輸出:

BootCurrent: 0003
Timeout: 0 seconds
BootOrder: 0000,0001,0002,0003
Boot0000* EFI DVD/CDROM PciRoot(0x0)/Pci(0x1f,0x2)/Sata(2,0,0)
Boot0001* EFI Misc Device       PciRoot(0x0)/Pci(0x5,0x0)
Boot0002* EFI Network   PciRoot(0x0)/Pci(0x4,0x0)/MAC(00163e000101,1)
Boot0003* EFI Internal Shell MemoryMapped(11,0x900000,0x11fffff)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1)

看起來我需要創建一個新訂單?

Michael Hampton 上面連結的安裝和執行引導修復解決了這個問題。

引用自:https://unix.stackexchange.com/questions/480255