参考
Multiple ways to access QEMU Machine Protocol (QMP)
https://www.humblec.com/qmp-qemu-monitor-protocol-and-different-ways-of-accessing-it/
方法一: 通过telnet
参数:
-chardev socket,id=mon0,host=localhost,port=4444,server,nowait -mon chardev=mon0,mode=readline
然后使用telnet localhost 4444
登录。
方法二:使用qemu自带的qemu-shell工具
- 通过网络套接字
参数:
-chardev socket,id=mon0,host=localhost,port=4444,server,nowait -mon chardev=mon0,mode=control
或者:
-qmp tcp:localhost:4444,server,nowait
然后使用scripts/qmp/qmp-shell -H localhost:4444
登录,最后通过Ctrl-D
退出.
- 通过本地套接字
参数:
-chardev socket,id=mon1,path=./qmp-sock,server,nowait -mon chardev=mon1,mode=control
或者:
-qmp unix:./qmp-sock,server,nowait
然后使用scripts/qmp/qmp-shell -H ./qmp-sock
登录,最后通过Ctrl-D
退出.
方式三:通过stdio
参数:
-chardev stdio,id=mon0 -mon chardev=mon0,mode=readline
或者:
--monitor stdio BASH 复制 全屏
或者:
–nographic BASH 复制 全屏
对于最后这样,需要使用快捷键Ctrl-A C
切换到monitor。