AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 477847
Accepted
Stonecraft
Stonecraft
Asked: 2018-10-26 14:17:04 +0800 CST2018-10-26 14:17:04 +0800 CST 2018-10-26 14:17:04 +0800 CST

Como faço para traduzir entre argumentos qemu-system e argumentos virt-install para que eu possa unificar comandos parcialmente funcionais?

  • 772

Estou no processo de configuração do VFIO com KVM. Eu tenho o próprio VFIO funcionando, pois a GPU do VFIO exibe a tela do shell UEFI quando inicio a VM. Também sou capaz de criar uma VM do Windows funcional com VNC para gráficos. Meu problema é que eu crio a VM com passthrough usando qemu-system, e aquela que inicializa totalmente eu crio usando virt-install.

O que eu gostaria de fazer é usar virt-install, mas com o mesmo dispositivo PCI que eu passo com qemu-create, então preciso descobrir como traduzir o argumento qemu-system para opções virt-install (ou virsh edit xml )

-device vfio-pci,host=42:00.0,multifunction=on \
-device vfio-pci,host=42:00.1 \

em argumentos virt-install. No entanto, as instruções que uso para virt-install não usam o PCI ID, mas sim o domínio, o barramento e o slot, que não são mostrados no lspci e não tenho certeza de como verificar. Portanto, preciso obter essas informações e usá-las em um comando virt-install ou encontrar uma maneira de usar o ID PCI com virt-install.

Aqui estão meus dois comandos:

sistema qemu:

sudo qemu-system-x86_64 \
-name $vmname,process=$vmname \
-machine type=q35,accel=kvm \
-cpu EPYC,kvm=off \
-smp 4,sockets=1,cores=2,threads=2 \
-m 16G \
-balloon none \
-rtc clock=host,base=localtime \
-vga none \
-nographic \
-serial none \
-parallel none \
-device vfio-pci,host=42:00.0,multifunction=on \
-device vfio-pci,host=42:00.1 \
-drive if=pflash,format=raw,readonly,file=/usr/share/OVMF/OVMF_CODE.fd \
-drive if=pflash,format=raw,file=/usr/share/OVMF/OVMF_VARS.fd \
-boot order=dc \
#-drive id=disk0,if=virtio,cache=none,format=raw,file=/dev/nvme-tank/ntfs-zvol-part1 \
-drive file=/media/big-tank-8TB/OSISOS/Windows/WindowsOct2018.iso,index=1,media=cdrom \
-drive file=/media/big-tank-8TB/OSISOS/Windows/virtio-win-0.1.160.iso,index=2,media=cdrom 

virt-install

virt-install \
--name myWINVM1 \
--ram 4096 \
--disk path=/dev/nvme-tank/ntfs-zvol-part1 \
--cpu core2duo \
--vcpus 4 \
--os-type windows \
--os-variant win10 \
--network bridge=virbr0 \
--graphics vnc \
--console pty,target_type=serial \
--disk /media/big-tank-8TB/OSISOS/Windows/WindowsOct2018.iso,device=cdrom,bus=ide \
--disk /media/big-tank-8TB/OSISOS/Windows/virtio-win-0.1.160.iso,device=cdrom,bus=ide 

Também seria bom descobrir como fazer a inicialização do sistema qemu corretamente, mas eu gosto mais do virt-install porque ele cria um arquivo XML útil que posso ver mais tarde.

kvm qemu
  • 1 1 respostas
  • 1015 Views

1 respostas

  • Voted
  1. Best Answer
    penguin359
    2018-10-26T15:50:45+08:002018-10-26T15:50:45+08:00

    Acredito que você esteja procurando a opção --hostdev para virt-install. Pode levar uma localização de barramento PCI e outros sinalizadores. A lista completa é mostrada com:

    virt-install --hostdev=?
    

    As opções necessárias para acima devem se parecer com:

    virt-install \
    --name myWINVM1 \
    --ram 4096 \
    --hostdev 42:00.0,address.type=pci,address.multifunction=on \
    --hostdev 42:00.1,address.type=pci \
    ...
    
    • 1

relate perguntas

  • Como limpar meta raid md?

  • Erro ao validar local de instalação: Distro 'centos7' não existe em nosso dicionário || Host OS CentOS 7 [fechado]

  • Como você altera a porta KVM VNC em tempo de execução, na linha de comando?

  • Por que os vms no KVM/QEMU são chamados de domínios?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    ssh Não é possível negociar: "nenhuma cifra correspondente encontrada", está rejeitando o cbc

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    Como descarregar o módulo do kernel 'nvidia-drm'?

    • 13 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add retorna com: "Erro ao conectar ao agente: nenhum arquivo ou diretório" 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve