提交 0ec9a8c2 编写于 作者: X Xu He Jie 提交者: Eric Blake

virsh: Add 'reset' command for virsh

Signed-off-by: NXu He Jie <xuhj@linux.vnet.ibm.com>
上级 df1a0055
...@@ -3191,6 +3191,44 @@ cmdReboot(vshControl *ctl, const vshCmd *cmd) ...@@ -3191,6 +3191,44 @@ cmdReboot(vshControl *ctl, const vshCmd *cmd)
return ret; return ret;
} }
/*
* "reset" command
*/
static const vshCmdInfo info_reset[] = {
{"help", N_("reset a domain")},
{"desc", N_("Reset the target domain as if by power button")},
{NULL, NULL}
};
static const vshCmdOptDef opts_reset[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{NULL, 0, 0, NULL}
};
static bool
cmdReset(vshControl *ctl, const vshCmd *cmd)
{
virDomainPtr dom;
bool ret = true;
const char *name;
if (!vshConnectionUsability(ctl, ctl->conn))
return false;
if (!(dom = vshCommandOptDomain(ctl, cmd, &name)))
return false;
if (virDomainReset(dom, 0) == 0) {
vshPrint(ctl, _("Domain %s was reset\n"), name);
} else {
vshError(ctl, _("Failed to reset domain %s"), name);
ret = false;
}
virDomainFree(dom);
return ret;
}
/* /*
* "destroy" command * "destroy" command
*/ */
...@@ -13665,6 +13703,7 @@ static const vshCmdDef domManagementCmds[] = { ...@@ -13665,6 +13703,7 @@ static const vshCmdDef domManagementCmds[] = {
{"migrate-getspeed", cmdMigrateGetMaxSpeed, {"migrate-getspeed", cmdMigrateGetMaxSpeed,
opts_migrate_getspeed, info_migrate_getspeed, 0}, opts_migrate_getspeed, info_migrate_getspeed, 0},
{"reboot", cmdReboot, opts_reboot, info_reboot, 0}, {"reboot", cmdReboot, opts_reboot, info_reboot, 0},
{"reset", cmdReset, opts_reset, info_reset, 0},
{"restore", cmdRestore, opts_restore, info_restore, 0}, {"restore", cmdRestore, opts_restore, info_restore, 0},
{"resume", cmdResume, opts_resume, info_resume, 0}, {"resume", cmdResume, opts_resume, info_resume, 0},
{"save", cmdSave, opts_save, info_save, 0}, {"save", cmdSave, opts_save, info_save, 0},
......
...@@ -790,6 +790,14 @@ domain actually reboots. ...@@ -790,6 +790,14 @@ domain actually reboots.
The exact behavior of a domain when it reboots is set by the The exact behavior of a domain when it reboots is set by the
I<on_reboot> parameter in the domain's XML definition. I<on_reboot> parameter in the domain's XML definition.
=item B<reset> I<domain-id>
Reset a domain immediately without any guest shutdown. B<reset>
emulates the power reset button on a machine, where all guest
hardware sees the RST line set and reinitializes internal state.
B<Note>: Reset without any guest OS shutdown risks data loss.
=item B<restore> I<state-file> [I<--bypass-cache>] [I<--xml> B<file>] =item B<restore> I<state-file> [I<--bypass-cache>] [I<--xml> B<file>]
[{I<--running> | I<--paused>}] [{I<--running> | I<--paused>}]
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册