Launch a cloud-hypervisor VMM. Usage: cloud-hypervisor [OPTIONS] Options: --api-socket HTTP API socket (UNIX domain socket): path= or fd=. --balloon Balloon parameters "size=,deflate_on_oom=on|off,free_page_reporting=on|off,iommu=off|virtio,id=,pci_segment=,pci_device_id=" --cmdline Kernel command line --console Control (virtio) console: "off|null|pty|tty|file=|socket=,iommu=on|off,id=,pci_segment=,pci_device_id=" [default: tty] --cpus boot=,max=,topology=:::,kvm_hyperv=on|off,max_phys_bits=,affinity=,features=,nested=on|off,core_scheduling=vm|vcpu|off [default: boot=1,max_phys_bits=46] --debug-console Debug console: off|pty|tty|file=,iobase= [default: off,iobase=0xe9] --device ... Direct device assignment parameters "path=,fd=,iommu=off|virtio|smmuv3,id=,pci_segment=,pci_device_id=,x_nv_gpudirect_clique=,x_exclude_mmap_bars=[...]" --disk ... Disk parameters "path=,readonly=on|off,direct=on|off,iommu=off|virtio,num_queues=,queue_size=,vhost_user=on|off,socket=,bw_size=,bw_one_time_burst=,bw_refill_time=,ops_size=,ops_one_time_burst=,ops_refill_time=,id=,pci_segment=,pci_device_id=,rate_limit_group=,queue_affinity=,serial=,backing_files=on|off,sparse=on|off,image_type=,lock_granularity=byte-range|full,guest_block_size= --event-monitor Path to report events on: path= or fd= --firmware Path to firmware that is loaded in an architectural specific way --fs ... virtio-fs parameters "tag=,socket=,num_queues=,queue_size=,id=,pci_segment=,pci_device_id=" --generic-vhost-user ... generic vhost-user parameters "device_type=,socket=,queue_sizes=,id=,pci_segment=,pci_device_id=" --initramfs Path to initramfs image --kernel Path to kernel to load. This may be a kernel or firmware that supports a PVH entry point (e.g. vmlinux) or architecture equivalent --landlock enable/disable Landlock. --landlock-rules ... Landlock parameters "path=,access=[rw]" --log-file Log file. Standard error is used if not specified --log-format Log format. Common tokens: {boottime}, {wallclock}, {glog}, {localglog}, {thread}, {level}, {location}, {msg}. See docs/logging.md for the full list (per-field date/time tokens, local-time variants, glog level letter). [default: "cloud-hypervisor: {boottime}s: <{thread}> {level}:{location} -- {msg}"] --memory Memory parameters "size=,mergeable=on|off,shared=on|off,hugepages=on|off,hugepage_size=,hotplug_method=acpi|virtio-mem,hotplug_size=,hotplugged_size=,prefault=on|off,reserve=on|off,thp=on|off" [default: size=512M] --memory-zone ... User defined memory zone parameters "size=,file=,shared=on|off,hugepages=on|off,hugepage_size=,host_numa_node=,id=,hotplug_size=,hotplugged_size=,prefault=on|off,reserve=on|off" --net ... Network parameters "tap=,ip=,mask=,mac=,host_mac=,fd=<[fd1,fd2,...]>,iommu=off|virtio,mtu=,num_queues=,queue_size=,id=,vhost_user=,socket=,vhost_mode=client|server,bw_size=,bw_one_time_burst=,bw_refill_time=,ops_size=,ops_one_time_burst=,ops_refill_time=,pci_segment=,pci_device_id=,offload_tso=on|off,offload_ufo=on|off,offload_csum=on|off" --no-shutdown Do not exit the VMM when the guest shuts down --numa ... Settings related to a given NUMA node "guest_numa_id=,cpus=,distances=,device_id=,memory_zones=,pci_segments=" --pci-segment ... PCI Segment parameters "pci_segment=,mmio32_aperture_weight=,mmio64_aperture_weight=" --platform Platform configuration parameters "num_pci_segments=,iommu_segments=,iommu_address_width=,iommufd=on|off,iommufd_fd=,vfio_p2p_dma=on|off,system_manufacturer=,system_product_name=,system_version=,system_serial_number=,system_uuid=,system_sku_number=,system_family=,oem_strings=,chassis_asset_tag=" --pmem ... Persistent memory parameters "file=,size=,iommu=off|virtio,discard_writes=on|off,id=,pci_segment=,pci_device_id=" --pvpanic Enable pvpanic device --rate-limit-group ... Rate Limit Group parameters "bw_size=,bw_one_time_burst=,bw_refill_time=,ops_size=,ops_one_time_burst=,ops_refill_time=,id=" --restore Restore from a VM snapshot. Restore parameters "source_url=,prefault=on|off,memory_restore_mode=copy|ondemand|copyonwrite,net_fds=,vfio_fds=,iommufd_fd=,resume=true|false,zone_updates=" `source_url` should be a valid URL (e.g file:///foo/bar or tcp://192.168.1.10/foo) `prefault` controls eager prefaulting for the copy-based restore path (disabled by default) `memory_restore_mode=copy` preserves the existing eager read-copy restore behavior, `memory_restore_mode=ondemand` enables lazy demand paging and fails restore if userfaultfd support is unavailable, and `memory_restore_mode=copyonwrite` maps the snapshot file copy-on-write (plain private RAM only; falls back to copy otherwise) `net_fds` is a list of net ids with new file descriptors. Only net devices backed by FDs directly are needed as input. `vfio_fds` is a list of VFIO device ids each paired with a new cdev file descriptor, e.g. vfio_fds=[vfio0@5,vfio1@6]. Use this to restore a VFIO device onto a different sysfs path or host. Requires `iommufd_fd`. `iommufd_fd` is a new iommufd file descriptor for the restored VM. The one saved in the snapshot does not survive serialization. `resume` controls whether the VM will be directly resumed after restore `zone_updates` can be used to update NUMA memory zones. Expects a list of elements in the form `id@host_numa_node` --rng Random number generator parameters "src=,iommu=off|virtio,pci_segment=,pci_device_id=" [default: src=/dev/urandom] --rtc [] Virtio RTC parameters "iommu=off|virtio,id=,pci_segment=,pci_device_id=". Passing --rtc with no arguments enables the device with default settings. --seccomp [default: true] [possible values: true, false, log, errno] --serial Control serial port: "off|null|pty|tty|file=|socket=" [default: null] --tpm TPM device "(UNIX Domain Socket from swtpm) socket=" --user-device ... Userspace device socket=,id=,pci_segment=,pci_device_id=" -v... Sets the level of debugging output --vdpa ... vDPA device "path=,num_queues=,iommu=off|virtio,id=,pci_segment=,pci_device_id=" -V, --version Print version --vsock Virtio VSOCK parameters "cid=,socket=,iommu=off|virtio,id=,pci_segment=,pci_device_id=" --watchdog Enable virtio-watchdog -h, --help Print help