如何使用 VBoxManage 对 VirtualBox 客户机执行受控关机?

如何使用 VBoxManage 对 VirtualBox 客户机执行受控关机?

我目前正在测试 Ubuntu 10.04,并安装了 VirtualBox 软件。我还安装了 Ubuntu 10.04 作为在主机系统上运行的 VirtualBox 客户机。

我已将 VirtualBox Utils 安装到客户操作系统中,如下所示:

sudo apt-get install virtualbox-ose-guest-utils

我想要做的是使用 VBoxManage 命令从主机系统启动客户机的受控关机。

我首先尝试了这个命令:

VBoxManage controlvm guest poweroff

虽然它可以起作用,但是并没有启动受控关机,它实际上切断了客人的电源。

从那时起,我发现这个命令应该可以解决问题:

VBoxManage controlvm guest acpipowerbutton

但这似乎没有任何作用。

谁能告诉我我做错了什么?

ps 我不想使用 SSH 和证书来执行此操作,因为我还要运行 Windows 客户机,并且我希望该解决方案适用于所有客户机。

编辑:刚刚发现这个邮政这意味着在客户机中安装 acpid,但是刚刚完成此操作并重新启动系统后,似乎没有任何区别,因为主机似乎仍然接受命令,但客户机没有任何反应。

第二次编辑:acpi powerbutton 事件配置如下:

# /etc/acpi/events/powerbtn
# This is called when the user presses the power button and calls
# /etc/acpi/powerbtn.sh for further processing.

# Optionally you can specify the placeholder %e. It will pass
# through the whole kernel event message to the program you've
# specified.

# We need to react on "button power.*" and "button/power.*" because
# of kernel changes.

event=button[ /]power
action=/etc/acpi/powerbtn.sh

上述 shell 脚本 (/etc/acpi/powerbtn.sh) 存在

答案1

我不喜欢发布我自己的问题的答案,但是我找到了解决方案......

只需在客户机中安装 acpi-support 即可。

apt-get install acpi-support

我认为 acpid 就足够了,但看起来好像还不够。

我现在可以发出 VBoxManage 命令从主机发送 ACPIPowerButton 事件,该命令现在可以干净地在客户机上执行关机。

感谢大家的建议。

答案2

您的客户机是否配置为在收到 acpipowerbutton 信号时关机?

相关内容