On Thu, 2015-07-09 at 17:19 +0800, zhang bo wrote:
linux-ZyvZnF:~ # virsh list --all
Id Name State
----------------------------------------------------
- redhat7;reboot shut off
- oscar-vm-5 shut off
As shown above,
1 we use command "virsh define a.xml" to define a guest with a name
containing ';', that's 'redhat7;reboot'
2 then we start the guest: "virsh start redhat7;reboot"
3 shell consider the command as
a) run "virsh start redhat7", failed
b) run "reboot", to reboot the host
And *the host get rebooted*.
shall libvirtd do the guest-name-validation work? Or other
suggustions?
Proper usage of string escaping is the user's responsibility.
Unfortunately a lot of shell scripts get this wrong, leading
to more or less catastrophic results.
The same reasoning, by the way, applies to file names, and eg.
the Nautilus file manager happily allows me to use foo;reboot
as name when creating or renaming files...
Cheers.
--
Andrea Bolognani
Software Engineer - Virtualization Team