OS Manuals

/usr/bin/cloud-hypervisor

Virtual Machine Monitor (VMM) for KVM/MSHV targeting cloud workloads

From cloud-hypervisor 54.0-r3 (enterprise-packages), captured 2026-11-08 by running cloud-hypervisor --help (exit 0). permalink

Launch a cloud-hypervisor VMM.

Usage: cloud-hypervisor [OPTIONS]

Options:
      --api-socket <api-socket>
          HTTP API socket (UNIX domain socket): path=<path> or fd=<fd>.
      --balloon <balloon>
          Balloon parameters "size=<balloon_size>,deflate_on_oom=on|off,free_page_reporting=on|off,iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"
      --cmdline <cmdline>
          Kernel command line
      --console <console>
          Control (virtio) console: "off|null|pty|tty|file=<path>|socket=<path>,iommu=on|off,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>" [default: tty]
      --cpus <cpus>
          boot=<boot_vcpus>,max=<max_vcpus>,topology=<threads_per_core>:<cores_per_die>:<dies_per_package>:<packages>,kvm_hyperv=on|off,max_phys_bits=<maximum_number_of_physical_bits>,affinity=<list_of_vcpus_with_their_associated_cpuset>,features=<list_of_features_to_enable>,nested=on|off,core_scheduling=vm|vcpu|off [default: boot=1,max_phys_bits=46]
      --debug-console <debug-console>
          Debug console: off|pty|tty|file=<path>,iobase=<port in hex> [default: off,iobase=0xe9]
      --device <device>...
          Direct device assignment parameters "path=<device_path>,fd=<vfio_cdev_fd>,iommu=off|virtio|smmuv3,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>,x_nv_gpudirect_clique=<clique_id>,x_exclude_mmap_bars=[<bar>...]"
      --disk <disk>...
          Disk parameters "path=<disk_image_path>,readonly=on|off,direct=on|off,iommu=off|virtio,num_queues=<number_of_queues>,queue_size=<size_of_each_queue>,vhost_user=on|off,socket=<vhost_user_socket_path>,bw_size=<bytes>,bw_one_time_burst=<bytes>,bw_refill_time=<ms>,ops_size=<io_ops>,ops_one_time_burst=<io_ops>,ops_refill_time=<ms>,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>,rate_limit_group=<group_id>,queue_affinity=<list_of_queue_indices_with_their_associated_cpuset>,serial=<serial_number>,backing_files=on|off,sparse=on|off,image_type=<raw,qcow2,vhd,vhdx,vmdk>,lock_granularity=byte-range|full,guest_block_size=<size_in_bytes>
      --event-monitor <event-monitor>
          Path to report events on: path=<path> or fd=<fd>
      --firmware <firmware>
          Path to firmware that is loaded in an architectural specific way
      --fs <fs>...
          virtio-fs parameters "tag=<tag_name>,socket=<socket_path>,num_queues=<number_of_queues>,queue_size=<size_of_each_queue>,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"
      --generic-vhost-user <generic-vhost-user>...
          generic vhost-user parameters "device_type=<ID number for virtio device type (FS, block, net, etc) or symbolic name>,socket=<socket_path>,queue_sizes=<list of queue sizes>,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"
      --initramfs <initramfs>
          Path to initramfs image
      --kernel <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-rules>...
          Landlock parameters "path=<path/to/{file/dir}>,access=[rw]"
      --log-file <log-file>
          Log file. Standard error is used if not specified
      --log-format <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>
          Memory parameters "size=<guest_memory_size>,mergeable=on|off,shared=on|off,hugepages=on|off,hugepage_size=<hugepage_size>,hotplug_method=acpi|virtio-mem,hotplug_size=<hotpluggable_memory_size>,hotplugged_size=<hotplugged_memory_size>,prefault=on|off,reserve=on|off,thp=on|off" [default: size=512M]
      --memory-zone <memory-zone>...
          User defined memory zone parameters "size=<guest_memory_region_size>,file=<backing_file>,shared=on|off,hugepages=on|off,hugepage_size=<hugepage_size>,host_numa_node=<node_id>,id=<zone_identifier>,hotplug_size=<hotpluggable_memory_size>,hotplugged_size=<hotplugged_memory_size>,prefault=on|off,reserve=on|off"
      --net <net>...
          Network parameters "tap=<if_name>,ip=<ip_addr>,mask=<net_mask>,mac=<mac_addr>,host_mac=<host_mac_addr>,fd=<[fd1,fd2,...]>,iommu=off|virtio,mtu=<mtu>,num_queues=<number_of_queues>,queue_size=<size_of_each_queue>,id=<device_id>,vhost_user=<vhost_user_enable>,socket=<vhost_user_socket_path>,vhost_mode=client|server,bw_size=<bytes>,bw_one_time_burst=<bytes>,bw_refill_time=<ms>,ops_size=<io_ops>,ops_one_time_burst=<io_ops>,ops_refill_time=<ms>,pci_segment=<segment_id>,pci_device_id=<pci_slot>,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 <numa>...
          Settings related to a given NUMA node "guest_numa_id=<node_id>,cpus=<cpus_id>,distances=<list_of_distances_to_destination_nodes>,device_id=<device_id>,memory_zones=<list_of_memory_zones>,pci_segments=<list_of_pci_segments>"
      --pci-segment <pci-segment>...
          PCI Segment parameters "pci_segment=<segment_id>,mmio32_aperture_weight=<scale>,mmio64_aperture_weight=<scale>"
      --platform <platform>
          Platform configuration parameters "num_pci_segments=<num_pci_segments>,iommu_segments=<list_of_segments>,iommu_address_width=<bits>,iommufd=on|off,iommufd_fd=<fd>,vfio_p2p_dma=on|off,system_manufacturer=<dmi_system_manufacturer>,system_product_name=<dmi_system_product_name>,system_version=<dmi_system_version>,system_serial_number=<dmi_system_serial_number>,system_uuid=<dmi_system_uuid>,system_sku_number=<dmi_system_sku_number>,system_family=<dmi_system_family>,oem_strings=<list_of_strings>,chassis_asset_tag=<dmi_chassis_asset_tag>"
      --pmem <pmem>...
          Persistent memory parameters "file=<backing_file_path>,size=<persistent_memory_size>,iommu=off|virtio,discard_writes=on|off,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"
      --pvpanic
          Enable pvpanic device
      --rate-limit-group <rate-limit-group>...
          Rate Limit Group parameters "bw_size=<bytes>,bw_one_time_burst=<bytes>,bw_refill_time=<ms>,ops_size=<io_ops>,ops_one_time_burst=<io_ops>,ops_refill_time=<ms>,id=<device_id>"
      --restore <restore>
          Restore from a VM snapshot.
          Restore parameters "source_url=<source_url>,prefault=on|off,memory_restore_mode=copy|ondemand|copyonwrite,net_fds=<list_of_net_ids_with_their_associated_fds>,vfio_fds=<list_of_vfio_ids_with_their_associated_fd>,iommufd_fd=<fd>,resume=true|false,zone_updates=<list_of_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 <rng>
          Random number generator parameters "src=<entropy_source_path>,iommu=off|virtio,pci_segment=<segment_id>,pci_device_id=<pci_slot>" [default: src=/dev/urandom]
      --rtc [<rtc>]
          Virtio RTC parameters "iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>". Passing --rtc with no arguments enables the device with default settings.
      --seccomp <seccomp>
          [default: true] [possible values: true, false, log, errno]
      --serial <serial>
          Control serial port: "off|null|pty|tty|file=<path>|socket=<path>" [default: null]
      --tpm <tpm>
          TPM device "(UNIX Domain Socket from swtpm) socket=</path/to/a/socket>"
      --user-device <user-device>...
          Userspace device socket=<socket_path>,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"
  -v...
          Sets the level of debugging output
      --vdpa <vdpa>...
          vDPA device "path=<device_path>,num_queues=<number_of_queues>,iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"
  -V, --version
          Print version
      --vsock <vsock>
          Virtio VSOCK parameters "cid=<context_id>,socket=<socket_path>,iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"
      --watchdog
          Enable virtio-watchdog
  -h, --help
          Print help
Options (41)
OptionDescriptionSource
--api-socket api-socketHTTP API socket (UNIX domain socket): path=<path> or fd=<fd>.help
--balloon balloonBalloon parameters "size=<balloon_size>,deflate_on_oom=on|off,free_page_reporting=on|off,iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"help
--cmdline cmdlineKernel command linehelp
--console consoleControl (virtio) console: "off|null|pty|tty|file=<path>|socket=<path>,iommu=on|off,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>" [default: tty]help
--cpus cpusboot=<boot_vcpus>,max=<max_vcpus>,topology=<threads_per_core>:<cores_per_die>:<dies_per_package>:<packages>,kvm_hyperv=on|off,max_phys_bits=<maximum_number_of_physical_bits>,affinity=<list_of_vcpus_wi…help
--debug-console debug-consoleDebug console: off|pty|tty|file=<path>,iobase=<port in hex> [default: off,iobase=0xe9]help
--device device>...Direct device assignment parameters "path=<device_path>,fd=<vfio_cdev_fd>,iommu=off|virtio|smmuv3,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>,x_nv_gpudirect_clique=<clique_id>,x_e…help
--disk disk>...Disk parameters "path=<disk_image_path>,readonly=on|off,direct=on|off,iommu=off|virtio,num_queues=<number_of_queues>,queue_size=<size_of_each_queue>,vhost_user=on|off,socket=<vhost_user_socket_path>,b…help
--event-monitor event-monitorPath to report events on: path=<path> or fd=<fd>help
--firmware firmwarePath to firmware that is loaded in an architectural specific wayhelp
--fs fs>...virtio-fs parameters "tag=<tag_name>,socket=<socket_path>,num_queues=<number_of_queues>,queue_size=<size_of_each_queue>,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"help
--generic-vhost-user generic-vhost-user>...generic vhost-user parameters "device_type=<ID number for virtio device type (FS, block, net, etc) or symbolic name>,socket=<socket_path>,queue_sizes=<list of queue…help
--initramfs initramfsPath to initramfs imagehelp
--kernel kernelPath to kernel to load.help
--landlockenable/disable Landlock.help
--landlock-rules landlock-rules>...Landlock parameters "path=<path/to/{file/dir}>,access=[rw]"help
--log-file log-fileLog file.help
--log-format log-formatLog format.help
--memory memoryMemory parameters "size=<guest_memory_size>,mergeable=on|off,shared=on|off,hugepages=on|off,hugepage_size=<hugepage_size>,hotplug_method=acpi|virtio-mem,hotplug_size=<hotpluggable_memory_size>,hotplug…help
--memory-zone memory-zone>...User defined memory zone parameters "size=<guest_memory_region_size>,file=<backing_file>,shared=on|off,hugepages=on|off,hugepage_size=<hugepage_size>,host_numa_node=<node_id>,id=<zone_identifier>,hotp…help
--net net>...Network parameters "tap=<if_name>,ip=<ip_addr>,mask=<net_mask>,mac=<mac_addr>,host_mac=<host_mac_addr>,fd=<[fd1,fd2,...]>,iommu=off|virtio,mtu=<mtu>,num_queues=<number_of_queues>,queue_size=<size_of_e…help
--no-shutdownDo not exit the VMM when the guest shuts downhelp
--numa numa>...Settings related to a given NUMA node "guest_numa_id=<node_id>,cpus=<cpus_id>,distances=<list_of_distances_to_destination_nodes>,device_id=<device_id>,memory_zones=<list_of_memory_zones>,pci_segments=…help
--pci-segment pci-segment>...PCI Segment parameters "pci_segment=<segment_id>,mmio32_aperture_weight=<scale>,mmio64_aperture_weight=<scale>"help
--platform platformPlatform configuration parameters "num_pci_segments=<num_pci_segments>,iommu_segments=<list_of_segments>,iommu_address_width=<bits>,iommufd=on|off,iommufd_fd=<fd>,vfio_p2p_dma=on|off,system_manufactur…help
--pmem pmem>...Persistent memory parameters "file=<backing_file_path>,size=<persistent_memory_size>,iommu=off|virtio,discard_writes=on|off,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"help
--pvpanicEnable pvpanic devicehelp
--rate-limit-group rate-limit-group>...Rate Limit Group parameters "bw_size=<bytes>,bw_one_time_burst=<bytes>,bw_refill_time=<ms>,ops_size=<io_ops>,ops_one_time_burst=<io_ops>,ops_refill_time=<ms>,id=<device_id>"help
--restore restoreRestore from a VM snapshot.help
--rng rngRandom number generator parameters "src=<entropy_source_path>,iommu=off|virtio,pci_segment=<segment_id>,pci_device_id=<pci_slot>" [default: src=/dev/urandom]help
--rtc rtcVirtio RTC parameters "iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>".help
--seccomp seccomp[default: true] [possible values: true, false, log, errno]help
--serial serialControl serial port: "off|null|pty|tty|file=<path>|socket=<path>" [default: null]help
--tpm tpmTPM device "(UNIX Domain Socket from swtpm) socket=</path/to/a/socket>"help
--user-device user-device>...Userspace device socket=<socket_path>,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"help
-vSets the level of debugging outputhelp
--vdpa vdpa>...vDPA device "path=<device_path>,num_queues=<number_of_queues>,iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"help
-V, --versionPrint versionhelp
--vsock vsockVirtio VSOCK parameters "cid=<context_id>,socket=<socket_path>,iommu=off|virtio,id=<device_id>,pci_segment=<segment_id>,pci_device_id=<pci_slot>"help
--watchdogEnable virtio-watchdoghelp
-h, --helpPrint helphelp

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.