QEMU监控器(monitor)是QEMU实现与用户交互的一种控制台,一般用于为QEMU模拟器提供较为复杂的功能,包括为客户机添加和移除一些媒体镜像(如CD-ROM、磁盘镜像等),暂停和继续客户机的运行,快照的建立和删除,从磁盘文件中保存和恢复客户机状态,客户机动态迁移,查询客户机当前各种状态参数等。在前面几章中,根据实际应用的具体场景已经多次提及一部分QEMU monitor中的命令了,本节将对QEMU monitor的使用和其中的常见命令进行介绍和总结。
QEMU monitor的切换和配置
要使用QEMU monitor,首先需要切换到monitor窗口中,然后才能使用命令来操作。
在默认情况下,在显示客户机的QEMU窗口中,按Ctrl+Alt+2
组合键可以切换到QEMU monitor中,而从monitor窗口中按Ctrl+Alt+1
组合键又可以回到客户机标准显示窗口。
当然,并非在所有情况下都使用Ctrl+Alt+2
快捷键切换到monitor窗口,如果使用SDL显示,且在使用qemu命令行启动客户机时添加了-alt-grab
或-ctrl-grab
参数,则会使该组合键被对应修改为Ctrl+Alt+Shift+2
或右Ctrl+2
组合键。
如果所有的情况都一定要到图形窗口(SDL或VNC)才能操作QEMU monitor,那么在某些完全不能使用图形界面的情况下将会受到一些限制。其实,QEMU提供了如下的参数来灵活地控制monitor的重定向。
-monitor dev
该参数的作用是将monitor重定向到宿主机的dev设备上。关于dev设备这个选项的写法有很多种,下面简单介绍其中的几种。
- vc
即虚拟控制台(Virtual Console),不加-monitor
参数就会使用-monitor vc
作为默认参数。而且,还可以用于指定monitor虚拟控制台的宽度和长度,如vc:800x600
表示宽度、长度分别为800像素、600像素,vc:80Cx24C
则表示宽度、长度分别为80个字符宽和24个字符长,这里的C代表字符(character)。注意,只有选择这个vc
为-monitor
的选项时,利用前面介绍的Ctrl+Alt+2
组合键才能切换到monitor窗口,其他情况下不能用这个组合键。 - /dev/XXX
使用宿主机的终端(tty),如-monitor/dev/ttyS0
是将monitor重定向到宿主机的ttyS0串口上去,而且QEMU会根据QEMU模拟器的配置来自动设置该串口的一些参数。 - null
空设备,表示不将monitor重定向到任何设备上,无论怎样也不能连接上monitor。 - stdio
标准输入输出,不需要图形界面的支持。-monitor stdio
将monitor重定向到当前命令行所在标准输入输出上,可以在运行qemu命令后直接默认连接到monitor中,操作起来非常方便,尤其是当需要使用较多QEMU monitor的命令时。
QEMU monitor中常用命令
进入monitor后,输入help即可获取命令帮助,在此不再赘述。
参考
KVM实战:原理、进阶与性能调优