STEXI
@item help or ? [@var{cmd}]
+@findex help
Show the help for all commands or just for command @var{cmd}.
ETEXI
STEXI
@item commit
+@findex commit
Commit changes to the disk images (if -snapshot is used) or backing files.
ETEXI
STEXI
@item info @var{subcommand}
+@findex info
Show various information about the system state.
@table @option
STEXI
@item q or quit
+@findex quit
Quit the emulator.
ETEXI
{
.name = "eject",
- .args_type = "force:-f,filename:B",
+ .args_type = "force:-f,device:B",
.params = "[-f] device",
.help = "eject a removable medium (use -f to force it)",
- .mhandler.cmd = do_eject,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_eject,
},
STEXI
@item eject [-f] @var{device}
+@findex eject
Eject a removable medium (use -f to force it).
ETEXI
.args_type = "device:B,target:F,arg:s?",
.params = "device filename [format]",
.help = "change a removable medium, optional format",
- .mhandler.cmd = do_change,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_change,
},
STEXI
@item change @var{device} @var{setting}
+@findex change
Change the configuration of a device.
STEXI
@item screendump @var{filename}
+@findex screendump
Save screen into PPM image @var{filename}.
ETEXI
STEXI
@item logfile @var{filename}
+@findex logfile
Output logs to @var{filename}.
ETEXI
STEXI
@item log @var{item1}[,...]
+@findex log
Activate logging of the specified items to @file{/tmp/qemu.log}.
ETEXI
STEXI
@item savevm [@var{tag}|@var{id}]
+@findex savevm
Create a snapshot of the whole virtual machine. If @var{tag} is
provided, it is used as human readable identifier. If there is already
a snapshot with the same tag or ID, it is replaced. More info at
STEXI
@item loadvm @var{tag}|@var{id}
+@findex loadvm
Set the whole virtual machine to the snapshot identified by the tag
@var{tag} or the unique snapshot ID @var{id}.
ETEXI
STEXI
@item delvm @var{tag}|@var{id}
+@findex delvm
Delete the snapshot identified by @var{tag} or @var{id}.
ETEXI
STEXI
@item singlestep [off]
+@findex singlestep
Run the emulation in single step mode.
If called with option off, the emulation returns to normal mode.
ETEXI
STEXI
@item stop
+@findex stop
Stop emulation.
ETEXI
STEXI
@item c or cont
+@findex cont
Resume emulation.
ETEXI
STEXI
@item gdbserver [@var{port}]
+@findex gdbserver
Start gdbserver session (default @var{port}=1234)
ETEXI
STEXI
@item x/fmt @var{addr}
+@findex x
Virtual memory dump starting at @var{addr}.
ETEXI
STEXI
@item xp /@var{fmt} @var{addr}
+@findex xp
Physical memory dump starting at @var{addr}.
@var{fmt} is a format which tells the command how to format the
@table @var
@item count
+@findex count
is the number of items to be dumped.
@item format
+@findex format
can be x (hex), d (signed decimal), u (unsigned decimal), o (octal),
c (char) or i (asm instruction).
@item size
+@findex size
can be b (8 bits), h (16 bits), w (32 bits) or g (64 bits). On x86,
@code{h} or @code{w} can be specified with the @code{i} format to
respectively select 16 or 32 bit code instruction size.
STEXI
@item p or print/@var{fmt} @var{expr}
+@findex print
Print expression value. Only the @var{format} part of @var{fmt} is
used.
STEXI
@item sendkey @var{keys}
+@findex sendkey
Send @var{keys} to the emulator. @var{keys} could be the name of the
key or @code{#} followed by the raw value in either decimal or hexadecimal
STEXI
@item system_reset
+@findex system_reset
Reset the system.
ETEXI
STEXI
@item system_powerdown
+@findex system_powerdown
Power down the system (if supported).
ETEXI
STEXI
@item sum @var{addr} @var{size}
+@findex sum
Compute the checksum of a memory region.
ETEXI
STEXI
@item usb_add @var{devname}
+@findex usb_add
Add the USB device @var{devname}. For details of available devices see
@ref{usb_devices}
STEXI
@item usb_del @var{devname}
+@findex usb_del
Remove the USB device @var{devname} from the QEMU virtual USB
hub. @var{devname} has the syntax @code{bus.addr}. Use the monitor
{
.name = "device_add",
- .args_type = "config:s",
- .params = "device",
+ .args_type = "device:O",
+ .params = "driver[,prop=value][,...]",
.help = "add device, like -device on the command line",
- .mhandler.cmd = do_device_add,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_device_add,
},
STEXI
@item device_add @var{config}
+@findex device_add
Add device.
ETEXI
STEXI
@item device_del @var{id}
+@findex device_del
Remove device @var{id}.
ETEXI
.args_type = "index:i",
.params = "index",
.help = "set the default CPU",
- .mhandler.cmd = do_cpu_set,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_cpu_set,
},
STEXI
STEXI
@item mouse_move @var{dx} @var{dy} [@var{dz}]
+@findex mouse_move
Move the active mouse to the specified coordinates @var{dx} @var{dy}
with optional scroll axis @var{dz}.
ETEXI
STEXI
@item mouse_button @var{val}
+@findex mouse_button
Change the active mouse button state @var{val} (1=L, 2=M, 4=R).
ETEXI
STEXI
@item mouse_set @var{index}
+@findex mouse_set
Set which mouse device receives events at given @var{index}, index
can be obtained with
@example
#endif
STEXI
@item wavcapture @var{filename} [@var{frequency} [@var{bits} [@var{channels}]]]
+@findex wavcapture
Capture audio into @var{filename}. Using sample rate @var{frequency}
bits per sample @var{bits} and number of channels @var{channels}.
#endif
STEXI
@item stopcapture @var{index}
+@findex stopcapture
Stop capture with a given @var{index}, index can be obtained with
@example
info capture
STEXI
@item memsave @var{addr} @var{size} @var{file}
+@findex memsave
save to disk virtual memory dump starting at @var{addr} of size @var{size}.
ETEXI
STEXI
@item pmemsave @var{addr} @var{size} @var{file}
+@findex pmemsave
save to disk physical memory dump starting at @var{addr} of size @var{size}.
ETEXI
STEXI
@item boot_set @var{bootdevicelist}
+@findex boot_set
Define new values for the boot device list. Those values will override
the values specified on the command line through the @code{-boot} option.
#endif
STEXI
@item nmi @var{cpu}
+@findex nmi
Inject an NMI on the given CPU (x86 only).
ETEXI
{
.name = "migrate",
- .args_type = "detach:-d,uri:s",
- .params = "[-d] uri",
- .help = "migrate to URI (using -d to not wait for completion)",
- .user_print = monitor_user_noop,
- .mhandler.cmd_new = do_migrate,
+ .args_type = "detach:-d,blk:-b,inc:-i,uri:s",
+ .params = "[-d] [-b] [-i] uri",
+ .help = "migrate to URI (using -d to not wait for completion)"
+ "\n\t\t\t -b for migration without shared storage with"
+ " full copy of disk\n\t\t\t -i for migration without "
+ "shared storage with incremental copy of disk "
+ "(base image shared between src and destination)",
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_migrate,
},
+
STEXI
-@item migrate [-d] @var{uri}
+@item migrate [-d] [-b] [-i] @var{uri}
+@findex migrate
Migrate to @var{uri} (using -d to not wait for completion).
+ -b for migration with full copy of disk
+ -i for migration with incremental copy of disk (base image is shared)
ETEXI
{
.args_type = "",
.params = "",
.help = "cancel the current VM migration",
- .mhandler.cmd = do_migrate_cancel,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_migrate_cancel,
},
STEXI
@item migrate_cancel
+@findex migrate_cancel
Cancel the current VM migration.
ETEXI
{
.name = "migrate_set_speed",
- .args_type = "value:s",
+ .args_type = "value:b",
.params = "value",
.help = "set maximum speed (in bytes) for migrations",
- .mhandler.cmd = do_migrate_set_speed,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_migrate_set_speed,
},
STEXI
@item migrate_set_speed @var{value}
+@findex migrate_set_speed
Set maximum speed to @var{value} (in bytes) for migrations.
ETEXI
{
.name = "migrate_set_downtime",
- .args_type = "value:s",
+ .args_type = "value:T",
.params = "value",
.help = "set maximum tolerated downtime (in seconds) for migrations",
- .mhandler.cmd = do_migrate_set_downtime,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_migrate_set_downtime,
},
STEXI
@item migrate_set_downtime @var{second}
+@findex migrate_set_downtime
Set maximum tolerated downtime (in seconds) for migration.
ETEXI
STEXI
@item drive_add
+@findex drive_add
Add drive to PCI storage controller.
ETEXI
.args_type = "pci_addr:s,type:s,opts:s?",
.params = "auto|[[<domain>:]<bus>:]<slot> nic|storage [[vlan=n][,macaddr=addr][,model=type]] [file=file][,if=type][,bus=nr]...",
.help = "hot-add PCI device",
- .mhandler.cmd = pci_device_hot_add,
+ .user_print = pci_device_hot_add_print,
+ .mhandler.cmd_new = pci_device_hot_add,
},
#endif
STEXI
@item pci_add
+@findex pci_add
Hot-add PCI device.
ETEXI
.args_type = "pci_addr:s",
.params = "[[<domain>:]<bus>:]<slot>",
.help = "hot remove PCI device",
- .mhandler.cmd = do_pci_device_hot_remove,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_pci_device_hot_remove,
},
#endif
STEXI
@item pci_del
+@findex pci_del
Hot remove PCI device.
ETEXI
STEXI
@item host_net_add
+@findex host_net_add
Add host VLAN client.
ETEXI
STEXI
@item host_net_remove
+@findex host_net_remove
Remove host VLAN client.
ETEXI
#endif
STEXI
@item host_net_redir
+@findex host_net_redir
Redirect TCP or UDP connections from host to guest (requires -net user).
ETEXI
{
.name = "balloon",
- .args_type = "value:i",
+ .args_type = "value:M",
.params = "target",
.help = "request VM to change it's memory allocation (in MB)",
.user_print = monitor_user_noop,
- .mhandler.cmd_new = do_balloon,
+ .mhandler.cmd_async = do_balloon,
+ .async = 1,
},
STEXI
@item balloon @var{value}
+@findex balloon
Request VM to change its memory allocation to @var{value} (in MB).
ETEXI
STEXI
@item set_link @var{name} [up|down]
+@findex set_link
Set link @var{name} up or down.
ETEXI
STEXI
@item watchdog_action
+@findex watchdog_action
Change watchdog action.
ETEXI
STEXI
@item acl_show @var{aclname}
+@findex acl_show
List all the matching rules in the access control list, and the default
policy. There are currently two named access control lists,
@var{vnc.x509dname} and @var{vnc.username} matching on the x509 client
STEXI
@item acl_policy @var{aclname} @code{allow|deny}
+@findex acl_policy
Set the default access control list policy, used in the event that
none of the explicit rules match. The default policy at startup is
always @code{deny}.
STEXI
@item acl_allow @var{aclname} @var{match} @code{allow|deny} [@var{index}]
+@findex acl_allow
Add a match rule to the access control list, allowing or denying access.
The match will normally be an exact username or x509 distinguished name,
but can optionally include wildcard globs. eg @code{*@@EXAMPLE.COM} to
STEXI
@item acl_remove @var{aclname} @var{match}
+@findex acl_remove
Remove the specified match rule from the access control list.
ETEXI
},
STEXI
-@item acl_remove @var{aclname} @var{match}
+@item acl_remove @var{aclname}
Remove all matches from the access control list, and set the default
policy back to @code{deny}.
ETEXI
#endif
STEXI
@item mce @var{cpu} @var{bank} @var{status} @var{mcgstatus} @var{addr} @var{misc}
+@findex mce (x86)
Inject an MCE on the given CPU (x86 only).
ETEXI
.args_type = "fdname:s",
.params = "getfd name",
.help = "receive a file descriptor via SCM rights and assign it a name",
- .mhandler.cmd = do_getfd,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_getfd,
},
STEXI
@item getfd @var{fdname}
+@findex getfd
If a file descriptor is passed alongside this command using the SCM_RIGHTS
mechanism on unix sockets, it is stored using the name @var{fdname} for
later use by other monitor commands.
.args_type = "fdname:s",
.params = "closefd name",
.help = "close a file descriptor previously passed via SCM rights",
- .mhandler.cmd = do_closefd,
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_closefd,
},
STEXI
@item closefd @var{fdname}
+@findex closefd
Close the file descriptor previously assigned to @var{fdname} using the
@code{getfd} command. This is only needed if the file descriptor was never
used by another monitor command.
+ETEXI
+
+ {
+ .name = "block_passwd",
+ .args_type = "device:B,password:s",
+ .params = "block_passwd device password",
+ .help = "set the password of encrypted block devices",
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_block_set_passwd,
+ },
+
+STEXI
+@item block_passwd @var{device} @var{password}
+@findex block_passwd
+Set the encrypted device @var{device} password to @var{password}
+ETEXI
+
+ {
+ .name = "qmp_capabilities",
+ .args_type = "",
+ .params = "",
+ .help = "enable QMP capabilities",
+ .user_print = monitor_user_noop,
+ .mhandler.cmd_new = do_qmp_capabilities,
+ },
+
+STEXI
+@item qmp_capabilities
+Enable the specified QMP capabilities
ETEXI
STEXI