关于qemu的二三事(1)————qemu的特殊参数之monitor

本文介绍了qemu虚拟化工具中的monitor功能,包括如何通过-monitor stdio进入console,以及monitor下四大类命令的使用:帮助与信息显示、设备操作、屏幕音频捕获和虚拟机操作。如help、info、change、eject、usb_add/del、mouse_move/button、sendkey、screendump、wavcapture、commit、savevm、loadvm、delvm、stop、cont、system_reset/powerdown等,这些命令在管理虚拟机时非常实用。


qemu作为一个十分重要的虚拟化工具,提供了丰富的功能/参数来支持虚拟化的各种操作。

下面仅就monitor这个参数或者说是功能来结合自己的实际体验来做个简要介绍。


如何进入qemu的monitor模式的console?两条路:

1, ctrl+alt+1或者ctrl+alt+2来进入和切换,但是我好像没有成功过。。。。我用的是下面第二种办法:

2, 直接在qemu启动的时候加上 -monitor参数,一般来个  -monitor  stdio  就很方便了,这样就可以来个很方便的shell脚本来操作monitor状态下的qemu虚拟机。


那么qemu的monitor都有什么比较有用的功能呢?或者说就是它提供或者说支持了哪些有用的参数?

大致分为以下四大类:

1,help和info

       help, 这个基本上每个支持命令行的程序的usage都会提供一个help的parameter来显示参数用法

       info,  显示一些例如cpu ,block, vnc等等信息和状态,具体支持哪些参数,在qemu的monitor的console里面输入help info看看吧,挺多的,就不一一列举了。

2,device相关操作

         change,The change command allows you to change removable media (like CD-ROMs), change the display options for a VNC, and change the password used on a VNC.

         eject,   release the device or file connected to the removable media device specified

         usb_add,  Add a host file as USB flash device ( you need to create in advance the host file: dd if=/dev/zero of=/tmp/disk.usb bs=1024k count=32 )

         usb_del,   use info usb to get the usb device list and then delete it

         mouse_move,   移动鼠标光标到指定坐标,例如 mouse_move    500 500

         mouse_button,     鼠标的左中右键, 1=L, 2=M, 4=R

         mouse_set index,   先用info mice查看然后再操作

         sendkey keys,  输入键盘上各个按键的,比如说: 

  • sendkey a
  • sendkey shift-a
  • sendkey ctrl-u
  • sendkey ctrl-alt-f1
         我曾经尝试过使用sendkey来登录guest,发现必须输入的时间足够短,不然登录会失败。

            基本上能够支持目前键盘上的大部分按键,不过有些特殊按键是被转义了的:

shiftshift_raltalt_raltgraltgr_r
ctrlctrl_rmenuesc12
345678
90minusequalbackspacetab
qwerty
uiopreta
sdfghj
klzxcv
bnmcommadotslash
asteriskspccaps_lockf1f2f3
f4f5f6f7f8f9
f10num_lockscroll_lockkp_dividekp_multiplykp_subtract
kp_addkp_enterkp_decimalsysrqkp_0kp_1
kp_2kp_3kp_4kp_5kp_6kp_7
kp_8kp_9<f11f12print
homepguppgdnendleftup
downrightinsertdelete

3, 屏幕和音频的捕获:

        screendump

        wavcapture

        stopcapture

4, 关于虚拟机的一些操作:

          commit,  顾名思义,实际上就是将操作和修改写入到镜像,至于写入到什么位置,看你是否用了snapshot,这个有待试验。

           quit,        退出qemu,这时候虚拟机也完犊子了。

           savevm, 保存虚拟机快照。

           loadvm,   加载虚拟机快照,或者说是恢复到虚拟机的某个时间点。

          delvm,      删除。

          stop,         即suspend,挂起。

           cont,        即resume,恢复。

            system_reset,             类似物理机上的reset强制重启。

            system_powerdown, 关机。

           log,         

           logfile,         指定logfile路径

          gdbserver,  开启端口方便host端用gdb来进行调试,这个还没玩过,有机会试试。

          x,                   据说和gdb里面的x差不多

        xp,                  据说和gdb里面的xp差不多。

        print,             同上。

        sum,            据说是计算校验和,没玩过,有机会试试。

        memsave,  顾名思义,保存内存的内容。


以上,是qemu的monitor参数的主要功能,就我自己的使用经历来说,仅仅使用过里面的部分功能,

比如说常用的help和info,mouse族命令,sendkey以及其他一些命令,还没有全部使用到所有参数。

还有待学习。


QUOTE:

1,wiki:QEMU/Monitor

2,使用 monitor command 监控 QEMU 运行状态



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值