У меня есть Ubuntu 10.10 и я использую VirtualBox 3.2. В качестве гостевой ОС у меня есть другая Ubuntu в VirtualBox.
Я автоматически запускаю гостевую Ubuntu, используя следующую команду, как только загружается мой хост Ubuntu:
VBoxHeadless -startvm Ubuntu --vrdp on
Затем я могу получить к нему доступ с помощью ssh или tsclient.
Теперь мне нужно автоматически отключить гостевую Ubuntu, как только я выключу свою Хост-Ubuntu. Кто-нибудь знает какой-нибудь безопасный способ автоматического выключения гостевой Ubuntu с помощью командной строки? Я обнаружил два способа отключения гостевой ОС, но я не уверен, безопасны они или нет. Вот они:
Если вы откроете настройки управления питанием Gnome, вы можете установить, какие действия следует выполнять при нажатии кнопки питания. Если вы настроите его на выключение, он автоматически выключится, когда вы нажмете виртуальную кнопку питания с помощью VBoxManage controlvm Ubuntu acpipowerbutton команда.
Это равносильно выдергиванию вилки из розетки на реальном компьютере. Ты не хочешь этого делать!
Используйте метод выключения ACPI (проверьте настройки управления питанием, как предлагает Эгил) или, возможно, укажите метод сохранения состояния (savestate) попробовать.
Вы должны отключить свою виртуальную Ubuntu точно так же, как вы отключаете свое реальное оборудование. Из командной строки в сеансе ssh удаленная проблема:
sudo poweroff
Если вы хотите сохранить состояние компьютера (аналогично приостановке / гибернации), используйте вторую точку в ответ @htorque.
Одна из проблем, связанных с завершением работы виртуальной машины с помощью опции savestate, заключается в том, что вам необходимо переместить эту виртуальную машину на другой компьютер. Вы можете столкнуться с проблемой, если новый компьютер использует другой процессор и, возможно, другие отличия в оборудовании. Когда виртуальная машина перезапускается из сохраненного состояния, ей требуется вернуть свою среду, чего не произойдет, если процессор другой. Виртуальная машина, которая была должным образом выключена, просматривает текущее оборудование при перезапуске и обычно вводит некоторые или все новые драйверы, которые ей нужны.
Я обычно выключаю виртуальную машину (Linux) с помощью$ sudo shutdown -h nowЯ предполагаю, что это самый изящный способ завершения работы виртуальной машины, потому что он завершает работу (не выключается) и предоставляет льготное время и (возможно) сообщение для пользователей, вошедших в систему.