Como posso executar um desligamento controlado de um guest virtualbox usando o VBoxManage?

2

Atualmente estou testando o Ubuntu 10.04 e tenho que instalar o software VirtualBox. Eu também instalei o Ubuntu 10.04 como um convidado VirtualBox rodando no sistema host.

Eu instalei o VirtualBox Utils no sistema operacional convidado, da seguinte forma:

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

O que eu quero ser capaz de fazer é iniciar um desligamento controlado do convidado, a partir do sistema host usando o comando VBoxManage.

Primeiro tentei este comando:

VBoxManage controlvm guest poweroff

que funcionou, mas não iniciou um desligamento controlado, ele efetivamente puxa o plugue do convidado.

Eu descobri que este comando deve fazer o seguinte:

VBoxManage controlvm guest acpipowerbutton

mas isso não parece fazer nada.

Alguém pode me dizer o que estou fazendo de errado?

p.s. Eu não quero usar o SSH & Certificados para fazer isso, como também vou executar convidados do Windows, e quero que a solução funcione para todos os convidados.

Edit: Acabou de encontrar esta postagem que sugere a instalação do acpid no guest No entanto, tendo acabado de fazer isso e reinicializado o sistema, ele não parece ter feito nenhuma diferença, pois o host ainda parece aceitar o comando, mas nada acontece ao convidado.

Segunda edição: configuração do evento acpi powerbutton da seguinte forma:

# /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

O script de shell acima (/etc/acpi/powerbtn.sh) existe

    
por Bryan 02.05.2010 / 12:32

2 respostas

3

Eu odeio postar respostas para minhas próprias perguntas, mas encontrei a solução ...

Basta instalar o suporte a acpi no convidado.

apt-get install acpi-support

Eu achei que teria sido o suficiente, mas parece que não foi.

Agora posso emitir um comando VBoxManage para enviar um evento ACPIPowerButton do host, que agora executa um desligamento de forma limpa no convidado.

Obrigado a todos por suas sugestões.

    
por 02.05.2010 / 14:12
2

O seu convidado está configurado para desligar quando recebe o sinal acpipowerbutton?

    
por 02.05.2010 / 13:28