qemu-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-discuss] [Qemu-devel] Does qemu guest agent support 'guest-exe


From: Michael Roth
Subject: Re: [Qemu-discuss] [Qemu-devel] Does qemu guest agent support 'guest-exec'?
Date: Tue, 01 Aug 2017 11:43:38 -0500
User-agent: alot/0.5.1

Quoting Hu, Robert (2017-08-01 02:15:01)
> Hi,
> 
> qemu/scripts/qmp/qemu-ga-client seems only support "cat, fsfreeze, fstrim, 
> halt, ifconfig, info, ping, powerdown, reboot, shutdown, suspend".
> 
> But from qemu/qga/commands.c seems at least Linux guest should already 
> support this. Despite qemu-ga-client, how can I talk to guest-agent in guest 
> to execute some program? any other utils?

qemu-ga-client is more of a helper script to make it easier to execute
things from cmdline and hasn't been updated to support guest-exec. But
the official API is documented in qga/qapi-schema.json and involves
talking to qemu-ga directly via JSON commands. A simple example for
guest-exec would be something like:

address@hidden:~$ sudo nc -U /tmp/vm3-qga.sock
{'execute':'guest-exec','arguments':{'path':'ip','arg': ['addr', 'show', 
'eth0'],'capture-output':true}}
{"return": {"pid": 1462}}
{'execute':'guest-exec-status','arguments':{'pid':1462}}
{"return": {"exitcode": 0, "out-data": 
"MjogZXRoMDogPEJST0FEQ0FTVCxNVUxUSUNBU1QsVVAsTE9XRVJfVVA+IG10dSAxNTAwIHFkaXNjIHBmaWZvX2Zhc3Qgc3RhdGUgVVAgZ3JvdXAgZGVmYXVsdCBxbGVuIDEwMDAKICAgIGxpbmsvZXRoZXIgNTI6NTQ6MDA6MTI6MzQ6MDMgYnJkIGZmOmZmOmZmOmZmOmZmOmZmCiAgICBpbmV0IDE5Mi4xNjguMTIyLjEzLzI0IGJyZCAxOTIuMTY4LjEyMi4yNTUgc2NvcGUgZ2xvYmFsIGR5bmFtaWMgZXRoMAogICAgICAgdmFsaWRfbGZ0IDMwNjRzZWMgcHJlZmVycmVkX2xmdCAzMDY0c2VjCiAgICBpbmV0NiBmZTgwOjo1MDU0OmZmOmZlMTI6MzQwMy82NCBzY29wZSBsaW5rIAogICAgICAgdmFsaWRfbGZ0IGZvcmV2ZXIgcHJlZmVycmVkX2xmdCBmb3JldmVyCg==",
 "exited": true}}
^C
address@hidden:~$ cat <<EOF | base64 -d
MjogZXRoMDogPEJST0FEQ0FTVCxNVUxUSUNBU1QsVVAsTE9XRVJfVVA+IG10dSAxNTAwIHFkaXNjIHBmaWZvX2Zhc3Qgc3RhdGUgVVAgZ3JvdXAgZGVmYXVsdCBxbGVuIDEwMDAKICAgIGxpbmsvZXRoZXIgNTI6NTQ6MDA6MTI6MzQ6MDMgYnJkIGZmOmZmOmZmOmZmOmZmOmZmCiAgICBpbmV0IDE5Mi4xNjguMTIyLjEzLzI0IGJyZCAxOTIuMTY4LjEyMi4yNTUgc2NvcGUgZ2xvYmFsIGR5bmFtaWMgZXRoMAogICAgICAgdmFsaWRfbGZ0IDMwNjRzZWMgcHJlZmVycmVkX2xmdCAzMDY0c2VjCiAgICBpbmV0NiBmZTgwOjo1MDU0OmZmOmZlMTI6MzQwMy82NCBzY29wZSBsaW5rIAogICAgICAgdmFsaWRfbGZ0IGZvcmV2ZXIgcHJlZmVycmVkX2xmdCBmb3JldmVyCg==
EOF
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP 
group default qlen 1000
    link/ether 52:54:00:12:34:03 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.13/24 brd 192.168.122.255 scope global dynamic eth0
       valid_lft 3064sec preferred_lft 3064sec
    inet6 fe80::5054:ff:fe12:3403/64 scope link 
       valid_lft forever preferred_lft forever


> 
> Best Regards,
> Robert Hoo
> 
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]