qmp-shell não reconhece comandos

1

Portanto, há um script python que permite conectar-se ao monitor QEMU a partir de um shell comum. Eu tive que baixar um monte de arquivos da árvore fonte do QEMU e adicione -qmp unix:./qmp-sock,server,nowait à linha de comando vm. Ele se conecta, mas não consigo trabalhar.

$ qmp-shell qmp-sock 
Welcome to the QMP low-level shell!
Connected to QEMU 1.5.3

(QEMU) help
{u'error': {u'class': u'CommandNotFound', u'desc': u'The command help has not been found'}}
(QEMU) query-
query-balloon               query-fdsets                query-status
query-block                 query-kvm                   query-target
query-block-jobs            query-machines              query-tpm
query-blockstats            query-mice                  query-tpm-models
query-chardev               query-migrate               query-tpm-types
query-command-line-options  query-migrate-cache-size    query-uuid
query-commands              query-migrate-capabilities  query-version
query-cpu-definitions       query-name                  query-vnc
query-cpus                  query-pci                   
query-events                query-spice                 
(QEMU) query-kvm
{u'return': {u'enabled': True, u'present': True}}
(QEMU) info block
Error while parsing command line: list index out of range
command format: <command-name>  [arg-name1=arg1] ... [arg-nameN=argN]
(QEMU) info
{u'error': {u'class': u'CommandNotFound', u'desc': u'The command info has not been found'}}
(QEMU) exit
{u'error': {u'class': u'CommandNotFound', u'desc': u'The command exit has not been found'}}
(QEMU)
    
por tijagi 27.09.2014 / 05:43

1 resposta

1

Supondo que o qmp-shell funcione da mesma maneira que, digamos, fazer telnet para o soquete QMP e enviar comandos JSON diretamente, você precisa emitir o comando qmp_capabilities . Nenhum dos outros comandos em qmp funcionará até que seja executado, e resultará no erro 'CommandNotFound' citado.

Veja a página wiki do qemu sobre QMP para detalhes.

    
por 23.10.2014 / 06:49

Tags