virt-install(1) Virtualization Support virt-install(1) (NAME) virt-install - (SYNOPSIS) virt-install [OPTION]... (DESCRIPTION) virt-install KVM Xen libvirt . (EXAMPLES) . virt-install ( ) VNC SPICE . USB PCI . ISO CDROM (install tree) HTTP FTP . virt-install . (PXE) (import) ( ) . virt-install (unattended) ('kickstarting') . . --unattended . opt1=foo,opt2=bar . --option=? : virt-install --disk=? . --osinfo . --memory (--disk --filesystem) . LIBVIRT (CONNECTING TO LIBVIRT) --connect (Syntax): --connect URI . libvirt . : qemu:///system KVM QEMU libvirtd . virt-manager KVM . qemu:///session KVM QEMU libvirtd . xen:/// Xen. lxc:/// . . -n, --name : -n, --name NAME . . virt-install virsh(1) ('virsh shutdown') ('virsh undefine') . --memory : --memory OPTIONS (MiB). -r/--ram . 'memory' 'currentMemory' 'maxMemory' 'maxMemory.slots' XML . 'memory' maxmemory . (hotunplug) --memdev . --memory=? . --memorybacking : --memorybacking OPTIONS . --memorybacking=? . --arch : --arch ARCH (non-native) . . --machine : --machine MACHINE . Xen KVM . --metadata : --metadata OPT=VAL,[...] . name uuid title description . -u/--uuid --description . --metadata=? . --events : --events OPT=VAL,[...] . on_poweroff on_reboot on_crash . --events=? . --resource : --resource OPT=VAL,[...] (resource partitioning) . --resource=? . --sysinfo : --sysinfo OPT=VAL,[...] sysinfo/SMBIOS . : --sysinfo host SMBIOS . --sysinfo emulate SMBIOS . --sysinfo bios.vendor=custom --sysinfo smbios,bios.vendor=custom smbios SMBIOS . --sysinfo=? . XML smbios..SS --xml : --xml ARGS XML XPath. : virt-install --xml ./@foo=bar --xml ./newelement/subelement=1 XML : ... 1 --xml : --xml xpath.set=XPATH[=VALUE] . XPATH=VALUE xpath.value . . --xml xpath.value=VALUE xpath.set XPath xpath.value . '=' . . --xml xpath.create=XPATH . . --xml xpath.delete=XPATH xpath . xpath --xml xpath.* . --disk xpath1.set=./@foo=bar,xpath2.create=./newelement XML : XML virt-install . --qemu-commandline : --qemu-commandline ARGS qemu. qemu libvirt . : --qemu-commandline="-display gtk,gl=on" 'env' : --qemu-commandline=env=DISPLAY=:0.1 libvirt: .SS --vcpus : --vcpus OPTIONS . 'maxvcpus' MAX (hotplug) VCPUS . (CPU topology) sockets dies cores threads . cores sockets threads . (cores) . 'cpuset' . CPUSET . : 0,2,3,5 : 0 2 3 5 1-5,^3,8 : 1 2 4 5 8 'auto' virt-install NUMA (cpu pinning) . --vcpus=? . --numatune : --numatune OPTIONS NUMA (domain process). --numatune 1,2,3,4-7 --numatune 1-3,5,memory.mode=preferred numa . --vcpus cpuset= . (mode) 'interleave' 'preferred' 'strict' () . 'man 8 numactl' . --numatune=? . --memtune : --memtune OPTIONS (domain process). --memtune 1000 --memtune hard_limit=100,soft_limit=60,swap_hard_limit=150,min_guarantee=80 --memtune=? . --blkiotune : --blkiotune OPTIONS blkio (domain process). --blkiotune 100 --blkiotune weight=100,device.path=/dev/sdc,device.weight=200 --blkiotune=? . .SS --cpu : --cpu MODEL[,+feature][,-feature][,match=MATCH][,vendor=VENDOR],... CPU . MODEL CPU libvirt . libvirt force require optional disable forbid '+feature' '-feature' 'force=feature' 'disable=feature' . CPU virt-install CPU (speculative execution) Microarchitectural Store Buffer Data . . secure . on off on . microcode . : --cpu core2duo,+x2apic,disable=vmx CPU core2duo x2apic vmx --cpu host-model CPU . ( ) CPU . --cpu numa.cell0.memory=1234,numa.cell0.cpus=0-3,numa.cell1.memory=5678,numa.cell1.cpus=4-7 NUMA. XML : --cpu host-passthrough,cache.mode=passthrough (pass-through) (cache) . --cpu maximum CPU . (foreign architecture) riscv64 x86_64 . KVM . --cpu=? . --cputune : --cputune OPTIONS CPU . VCPU (pin) . --cputune vcpupin0.vcpu=0,vcpupin0.cpuset=0-3,vcpupin1.vcpu=1,vcpupin1.cpuset=4-7 --cputune=? . --security, --seclabel : --security, --seclabel type=TYPE[,label=LABEL][,relabel=yes|no],... seclabel . type 'static' 'dynamic' . 'static' LABEL . LABEL TYPE (static) . --security=? . .SS --keywrap : --keywrap OPTIONS XML S390 . --keywrap=? . --iothreads : --iothreads OPTIONS XML / . 4 --iothreads 4 . --iothreads=? . --features : --features FEAT=on|off,... (on) (off) XML . acpi apic eoi privnet hyperv . : --features apic.eoi=on APIC PV EOI --features hyperv.vapic.state=on,hyperv.spinlocks.state=off VAPIC hyperv spinlocks --features kvm.hidden.state=on KVM --features pvspinlock=on (paravirtual spinlocks) pvticketlocks. --features gic.version=2 ARM . "host" . --features smm.state=on (System Management Mode SMM) . UEFI . (QEMU q35 SMM .) --features=? . --clock : --clock offset=OFFSET,TIMER_OPT=VAL,... XML . : --clock offset=OFFSET 'utc' 'localtime' --clock TIMER_present=no (boolean). TIMER hpet kvmclock . --clock TIMER_tickpolicy=VAL tickpolicy . TIMER rtc pit . VAL catchup delay . libvirt . --clock=? . --pm : --pm OPTIONS (power management) . : --pm suspend_to_memi.enabled=on,suspend_to_disk.enabled=off --pm=? . .SS --launchSecurity : --launchSecurity TYPE[,OPTS] AMD SEV. : # 0x03 # dhCert SEV --launchSecurity sev # 0x01 - --launchSecurity sev,policy=0x01 # blob SEV # dhCert SEV --launchSecurity sev,session=BASE64SESSIONSTRING,dhCert=BASE64DHCERTSTRING SEV virtio virt-install --launchSecurity << (EXAMPLES)>> . --launchSecurity=? . (INSTALLATION OPTIONS) -c, --cdrom : --cdrom PATH ISO CDROM . CDROM ISO (eject) . -l, --location : -l, --location OPTIONS . virt-install kernel/initrd . --location --extra-args --initrd-inject . CDROM ISO --location CDROM ( ) . LOCATION : HTTP . FTP . ISO ISO. DIRECTORY . . URL : Fedora/Red Hat Based Debian Ubuntu Suse --location 'kernel' 'initrd' . URL ISO kernel/initrd . virt-install/libosinfo --location . ISO libosinfo my-unknown.iso 'kernel/fookernel' initrd 'kernel/fooinitrd' : --location my-unknown.iso,kernel=kernel/fookernel,initrd=kernel/fooinitrd PXE. . --import . --disk --filesystem . -x, --extra-args : -x, --extra-args KERNELARGS --location. kickstart : --extra-args "ks=https://myserver/my.ks" --initrd-inject : --initrd-inject PATH PATH initrd --location. kickstart : --initrd-inject=/path/to/my.ks --extra-args "ks=file:/my.ks" --install . --disk . . fedora29 : --install fedora29 virt-install URL --location libosinfo . : os= . --install os=fedora29 . os= . kernel=, initrd= kernel initrd . --initrd-inject . . : --install kernel=/path/to/kernel,initrd=/path/to/initrd . kernel/initrd : --install kernel=https://127.0.0.1/tree/kernel,initrd=https://127.0.0.1/tree/initrd . --boot . kernel_args=, kernel_args_overwrite=yes|no (XML libvirt). kernel/initrd --location . kernel_args --extra-args virt-install --location (append) . virt-install kernel_args_overwrite=yes . bootdev= (hd cdrom floppy network) . XML libvirt . cdrom --cdrom --pxe . no_install=yes|no virt-install . --import --boot . --live '--cdrom $ISO --install no_install=yes' . VM . DOMAIN UUID ID VM . virt-install XML libvirt VM XML . VM --name --disk . --reinstall --cdrom CDROM VM CDROM . --unattended : --unattended [OPTIONS] (unattended) libosinfo. : Red Hat kickstarts Debian Windows . --install : --install fedora29 --unattended Windows : --cdrom /path/to/my/windows.iso --unattended : profile= (profile) libosinfo . 'desktop' 'jeos' . virt-install 'desktop' . admin-password-file= admin/root VM . "admin-password-file=/path/to/password-file" "admin-password-file=/dev/fd/n" n (file descriptor) . (whitespace) (new-line) . user-login= VM. virt-install . virt-install "root" . user-password-file= VM . "user-password-file=/path/to/password-file" "user-password-file=/dev/fd/n" n . user-login . . product-key= (product key) --cloud-init cloud-init VM. ISO NoCloud cloud-init CDROM VM . . --cloud-init root . --cloud-init --cloud-init root-password-generate=on,disable=on . . --cloud-init=? . : root-password-generate=on root VM. virt-install . disable=on cloud-init VM . cloud-init . root-password-file= root VM . "root-password-file=/path/to/password-file" "root-password-file=/dev/fd/n" n . . meta-data= meta-data cloud-init iso. meta-data --cloud-init . URL . user-data= user-data cloud-init iso. user-data --cloud-init . URL . root-ssh-key= ssh root. : root-ssh-key=/home/user/.ssh/id_rsa.pub clouduser-ssh-key ssh cloud-init. . : network-config= network-config cloud-init iso. URL . : --boot BOOTOPTS . kernel/initrd BIOS ( libvirt 0.8.3 ). --boot ( --location --cdrom ) . --import : <<>> . : --boot cdrom,fd,hd,network cdrom PXE . : s390x . --boot kernel=KERNEL,initrd=INITRD,kernel_args="console=/dev/ttyS0" kernel/initrd . --boot kernel=KERNEL,initrd=INITRD,dtb=DTB kernel/initrd (DTB) . DTB x86 ARM PPC . --boot loader=BIOSPATH BIOSPATH BIOS . --boot bootmenu.enable=on,bios.useserial=on bios bios . --boot init=INITPATH init . --filesystem virt-install /sbin/init /bin/sh . --boot uefi, --boot uefi=on UEFI . virt-install UEFI libvirt UEFI XML domcapabilities . UEFI . --boot uefi=off UEFI . --boot uefi,firmware.feature0.name=secure-boot,firmware.feature0.enabled=yes,firmware.feature1.name=enrolled-keys,firmware.feature1.enabled=yes UEFI Secure Boot . . --boot uefi,firmware.feature0.name=secure-boot,firmware.feature0.enabled=no UEFI Secure Boot . . secure-boot enrolled-keys : --boot loader=/.../OVMF_CODE.fd,loader.readonly=yes,loader.type=pflash,nvram.template=/.../OVMF_VARS.fd,loader_secure=no OVMF . libvirt varstore UEFI varstore "/.../OVMF_VARS.fd" . --boot uefi UEFI . --boot=? . : --idmap : --idmap OPTIONS UID GID 'user' . UID/GID sVirt . --idmap LXC . : --idmap uid.start=0,uid.target=1000,uid.count=10,gid.start=0,gid.target=1000,gid.count=10 --idmap=? . .SH " (GUEST OS OPTIONS)" --osinfo, --os-variant : --osinfo [OSNAME|OPT1=VAL1,...] . virtio . --osinfo OSNAME --os-variant OSNAME --osinfo fedora32. : name=, short-id= (short-id) libosinfo. : fedora32 win10 id= libosinfo URL. name=win10 id=http://microsoft.com/win/10 . detect=on|off virt-install . URL CDROM . require=on|off on virt-install . : --osinfo detect=on,require=on virt-install . virt-install . --osinfo detect=on,name=OSNAME OSNAME (fallback). --osinfo . virt-install --osinfo detect=on . . . require . VIRTINSTALL_OSINFO_DISABLE_REQUIRE=1 . virt-install --osinfo list . osinfo-query os . : --osinfo --os-variant . --osinfo . (STORAGE OPTIONS) --disk : --disk OPTIONS . : --disk opt1=val1,opt2=val2,... : --disk size=10 virt-install . : --disk /some/storage/path[,opt1=val1]... : path . . 'size' . virt-install API libvirt . path URL . . pool pool libvirt . 'size' . vol (volume) libvirt . 'poolname/volname' . : size ( GiB) sparse . 'yes' 'no' . 'yes' ( ) . (sparse=no) . / (I/O) . format . 'raw' 'qcow2' 'vmdk' . . driver_type . 'qcow2' . . libvirt . backing_store backing store . backing_format backing_store : device . 'cdrom' 'disk' 'lun' 'floppy'. 'disk' . boot.order . boot.order 1,2,3,... . . . target.bus bus (bus) . 'ide' 'sata' 'scsi' 'usb' 'virtio' 'xen'. . readonly ( 'on' 'off' ) shareable ( 'on' 'off' ) cache (cache) . pagecache . cache 'none' 'writethrough' 'directsync' 'unsafe' 'writeback' . 'writethrough' . 'writeback' . 'directsync' pagecache . 'unsafe' flush ..TP driver.discard discard ( "trim" "unmap") . "unmap" ( discard) "ignore" ( discard) . 1.0.6 ( QEMU KVM). driver.name . . driver.type / . . driver.io / (IO) . "threads" "native" "io_uring" . driver.error_policy . "stop" "ignore" "enospace" . serial . /dev/disk/by-id . : WD-WMAP9A966149 source.startupPolicy . snapshot . . -f/--file -s/--file-size --nonsparse --nodisks . --disk=? . : --filesystem . : --filesystem /source/on/host,/target/point/in/guest QEMU LXC . QEMU (mount hint) sysfs (mount) . : type . 'mount' () 'template' OpenVZ. accessmode mode . QEMU type=mount . 'mapped' () 'passthrough' 'squash'. libvirt domain XML . source . target (mount) . --filesystem=? . (NETWORKING OPTIONS) -w, --network : -w, --network OPTIONS . : bridge=BRIDGE (bridge) BRIDGE. / (LAN) . (live migration) . network=NAME NAME. virsh . libvirt default . ( NetworkManager) . (LAN) NAT . type=direct,source=IFACE[,source.mode=MODE] IFACE macvtap. user LAN SLIRP. QEMU . NAT . none virt-install . --network (NIC) . bridge . default . . : model.type model . : 'e1000' 'rtl8139' 'virtio' ... mac.address mac MAC RANDOM . Xen MAC '00:16:3e' QEMU KVM '52:54:00' . filterref.filter libvirt. nwfilter 'nwfilter' virsh . 'virsh nwfilter-list' : 'clean-traffic' 'no-mac-spoofing' ... virtualport.* (virtual port profile). 802.Qbg 802.Qbh midonet openvswitch . --network=? . -m/--mac -b/--bridge --nonetworks . hostdev=HOSTDEV nodedev type=hostdev : HOSTDEV --hostdev . portForward=[ADDRESS:]HOSTPORT[:GUESTPORT][/PROTO] (port forwarding) --network passt. podman run -p . HOSTPORT 7000-8000 GUESTPORT . GUESTPORT . : --network passt,portForward=8080:80 \ --network passt,portForward0=7000-8000/udp,portForward1=127.0.0.1:2222:22 \ DISPLAY virt-install '--graphics none' . --graphics : --graphics TYPE,opt1=arg1,opt2=arg2,... . . virt-install . : --graphics TYPE,opt1=arg1,opt2=arg2,... : --graphics vnc,password=foobar TYPE: vnc VNC . port VNC 5900 . VNC vncdisplay virsh ( virt-viewer(1) ). spice Spice . Spice USB . spice : --video qxl --channel spicevmc none . ( --extra-args ). 'virsh console NAME' . : port . 'vnc' 'spice' . tlsPort tlsPort spice. websocket WebSocket VNC . -1 WebSocket . 'vnc' 'spice' . listen VNC/Spice. 127.0.0.1 ( localhost) ( qemu /etc/libvirt/qemu.conf ). 0.0.0.0 . 'none' . libvirt ( virt-viewer --attach). 'socket' libvirt . 'vnc' 'spice' . password . virt-install . 'vnc' 'spice' . gl.enable OpenGL . 'yes' 'no' . 'spice' . gl.rendernode DRM . 'gl' . --graphics=? . : --vnc, --vncport, --vnclisten, -k/--keymap, --sdl, --nographics.SS --autoconsole : --autoconsole OPTIONS virt-install . . . --autoconsole graphical virt-viewer(1) --autoconsole text virsh console . --autoconsole none --noautoconsole --noautoconsole . --autoconsole none virt-install . --cdrom --location . virt-install . '--wait' virt-install --noautoconsole . (VIRTUALIZATION OPTIONS) . -v, --hvm (full virtualization) (para) . Xen . QEMU . -p, --paravirt (paravirtualized) . --hvm . --container . ( LXC OpenVZ ). --virt-type . kvm qemu xen. 'virsh capabilities' . --accelerate . QEMU () '--virt-type qemu' . (DEVICE OPTIONS) address.* (bus) . https://libvirt.org/formatdomain.html#device-addresses . --controller : --controller OPTIONS . : --controller usb2 USB2 --controller usb3 USB3 --controller type=usb,model=none USB --controller type=scsi,model=virtio-scsi VirtIO SCSI --controller num_pcie_root_ports=NUM pcie-root-port PCIe . --controller=? . .SS --input : --input OPTIONS . mouse tablet keyboard . --input=? . --hostdev, --host-device : --hostdev, --host-device OPTIONS . HOSTDEV: --hostdev pci_0000_00_1b_0 libvirt 'virsh nodedev-list' --hostdev 001.003 USB (bus) (device) ( lsusb). --hostdev 0x1234:0x5678 USB (vendor) (product) ( lsusb). --hostdev 1f.01.02 PCI ( lspci). --hostdev wlan0,type=net ( LXC). --hostdev /dev/net/tun,type=misc ( LXC). --hostdev /dev/sdf,type=storage ( LXC). --hostdev=? . --sound : --sound MODEL . MODEL . ich6 ich9 ac97 es1370 sb16 pcspk default . 'default' . --soundhw . --sound=? . --audio --sound . --audio=? . --watchdog : --watchdog MODEL[,action=ACTION] watchdog ( ) . . watchdog . ACTION libvirt watchdog . : reset () poweroff pause none shutdown ( ) MODEL : i6300esb () ib700. : --watchdog default --watchdog i6300esb,action=poweroff i6300esb 'poweroff' --watchdog=? . .SS --serial : --serial OPTIONS . : --serial type,opt1=val1,opt2=val2,... --serial --parallel . (character device) : --serial pty (Pseudo TTY). pty XML . --serial dev,path=HOSTPATH . /dev/ttyS0 . /dev/parport0 . --serial file,path=FILENAME FILENAME. --serial tcp,host=HOST:PORT,source.mode=MODE,protocol.type=PROTOCOL TCP. MODE 'bind' ( HOST:PORT) 'connect' ( HOST:PORT) 'bind' . HOST '127.0.0.1' PORT . PROTOCOL 'raw' 'telnet' ( 'raw'). 'telnet' telnet . : 4567: --serial tcp,host=0.0.0.0:4567 localhost 1234: --serial tcp,host=:1234,source.mode=connect telnet localhost 2222. 'telnet localhost 2222' : --serial tcp,host=:2222,source.mode=bind,source.protocol=telnet --serial udp,host=CONNECT_HOST:PORT,bind_host=BIND_HOST:BIND_PORT UDP. HOST:PORT ( HOST '127.0.0.1' PORT ). BIND_HOST:BIND_PORT (bind) ( BIND_HOST 127.0.0.1 BIND_PORT ). : syslog ( /etc/rsyslog.conf ): --serial udp,host=:514 192.168.10.20 4444 ( 'nc -u -l 4444' ): --serial udp,host=192.168.10.20:4444 --serial unix,path=UNIXPATH,mode=MODE unix(7) . MODE --serial tcp,mode=MODE . --serial=? . : --parallel : --parallel OPTIONS (parallel) . serial . --parallel=? . : .SS --channel . --serial --parallel / (host/source) . 'target' . : --channel SOURCE,target.type=guestfwd,target.address=HOST:PORT QEMU. HOST:PORT . --channel SOURCE,target.type=virtio[,target.name=NAME] virtio ( 2.6.34 ). virtio --channel /dev/vport0p1 /dev/vport0p2 . NAME org.linux-kvm.virtioport1. /sys/class/virtio-ports/vport0p1/NAME . --channel spicevmc,target.type=virtio[,target.name=NAME] spice QEMU virtio ( 2.6.34 ). NAME com.redhat.spice.0 . --channel qemu-vdagent,target.type=virtio[,target.name=NAME] vd QEMU virtio ( 2.6.34 ). / VNC . (clipboard) spice-vdagent spice . NAME com.redhat.spice.0 . --channel=? . --console . (hypervisor) getty (target_type=xen xen target_type=virtio ). : --console pty,target.type=virtio virtio PTY . /dev/hvc0 . . virtio libvirt 0.8.3 . --console=? . --video : --video OPTIONS . VIDEO kvm cirrus vga qxl virtio vmvga (vmware). --video=? . --smartcard : --smartcard MODE[,OPTIONS] (smartcard) . MODE host host-certificates passthrough. : type . passthrough . : --smartcard passthrough,type=spicevmc smartcard SPICE --smartcard=? . .SS --redirdev : --redirdev BUS[,OPTIONS] (redirected). : type tcp spicevmc . server TCP 'server:port'. : --redirdev usb,type=tcp,server=localhost:4000 USB TCP 'localhost' . --redirdev usb,type=spicevmc USB Spice. --redirdev=? . --memballoon : --memballoon MODEL[,OPTIONS] (memballoon) . memballoon MODEL='none' . MODEL memballoon . 'virtio' 'xen' 'none' . : --memballoon virtio memballoon 'virtio' --memballoon none memballoon --memballoon=? . --tpm : --tpm TYPE[,OPTIONS] TPM . : --tpm /dev/tpm (passthrough) TPM . --tpm emulator TPM (emulated). --tpm default virt-install . --tpm none virt-install TPM. --tpm=? . --rng : --rng TYPE[,OPTIONS] (RNG). TYPE random egd builtin . : --rng /dev/urandom /dev/urandom "random" . --rng builtin RNG (builtin) . --rng egd,backend.source.host=localhost,backend.source.service=8000,backend.type=tcp localhost TCP . --rng=? . .SS --panic : --panic MODEL[,OPTS] (panic notifier) . : --panic default --panic=? . --shmem : --shmem NAME[,OPTS] . / . .. . --shmem=? . --memdev : --memdev OPTS (hotunplug). memdev hotplugmemory NUMA . --memdev=? . --vsock : --vsock OPTS vsock /. : --vsock cid.auto=yes --vsock=? . --iommu : --iommu MODEL[,OPTS] IOMMU . --iommu=? . --pstore : --pstore OPT=VAL,[...] pstore oops/panic (crash). --pstore=? . (MISCELLANEOUS OPTIONS) -h, --help --version --autostart (autostart) . (boot) . --transient (VM) libvirt --import --boot --transient . . libvirt XML . . : --destroy-on-exit ( ) . --transient virt-install qemu ..SS --print-xml : --print-xml [STEP] XML . ( --dry-run ). --quiet . XML . --print-xml 2 ( XML ) . --noreboot (domain) . --wait : --wait WAIT virt-install . virt-install ( ) --noautoconsole . '--wait' virt-install . virt-install . virt-install . --dry-run libvirt . virt-install . --check . (--check path_in_use=on|off) (--check disk_size=on|off) . . -q, --quiet . -d, --debug . ~/.cache/virt-manager/virt-install.log . (EXAMPLES) Fedora 29 KVM . virt-viewer(1) # sudo virt-install --install fedora29 libosinfo fedora29 : # sudo virt-install --install fedora29 --unattended Windows 10 libvirtd: # virt-install \ --connect qemu:///system \ --name my-win10-vm \ --memory 4096 \ --disk size=40 \ --osinfo win10 \ --cdrom /path/to/my/win10.iso KVM CentOS 7 URL VNC SPICE : # virt-install \ --connect qemu:///system \ --memory 8192 \ --vcpus 8 \ --graphics vnc \ --osinfo centos7.0 \ --location http://mirror.centos.org/centos-7/7/os/x86_64 debian9 : # virt-install \ --import \ --memory 512 \ --disk /home/user/VMs/my-debian9.img \ --osinfo debian9 QEMU ARM () . # virt-install \ --name armtest \ --memory 1024 \ --arch armv7l --machine vexpress-a9 \ --disk /home/user/VMs/myarmdisk.img \ --boot kernel=/tmp/my-arm-kernel,initrd=/tmp/my-arm-initrd,dtb=/tmp/my-arm-dtb,kernel_args="console=ttyAMA0 rw root=/dev/mmcblk0p3" \ --graphics none SEV RAM + hard_limit virtio: : IOMMU driver.iommu virtio . --memtune SEV libvirt . # virt-install \ --name foo \ --memory 4096 \ --boot uefi \ --machine q35 \ --memtune hard_limit=4563402 \ --disk size=15,target.bus=scsi \ --import \ --controller type=scsi,model=virtio-scsi,driver.iommu=on \ --controller type=virtio-serial,driver.iommu=on \ --network network=default,model=virtio,driver.iommu=on \ --rng /dev/random,driver.iommu=on \ --memballoon driver.iommu=on \ --launchSecurity sev . (COPYRIGHT) (C) Red Hat, Inc . . GNU General Public License . . (SEE ALSO) virsh(1) virt-clone(1) virt-manager(1) virt-install(1)