У меня есть виртуальная машина Virtualbox под управлением Ubuntu, запущенная Vagrant на хосте OSX.
В какой-то момент мой ssh-сеанс гостю перестал отвечать. Я попытался vagrant halt
из окна терминала на хосте (OS X). Казалось, что процесс выключения также зависает, и выключение Oracle VM VirtualBox Manager не приводит к выключению самих виртуальных машин.
При запуске гостевых ОС на рабочем столе закрытие окна графического интерфейса предоставляет несколько вариантов выключения гостя, но я не знаю, как сделать то же самое, когда гость работает без управления.
Есть ли способ в Vagrant или VirtualBox принудительно завершить работу виртуальной машины?
Попробуйте использовать команду VBoxManage:
VBoxManage list runningvms
Это дает вам имя виртуальной машины, которую вы хотите выключить. Например:
"rails_1366055054" {8144df4b-941f-40d6-ba5f-6e83d398ffd3}
Чтобы выключить эту виртуальную машину, вы запускаете
VBoxManage controlvm "rails_1366055054" poweroff
Обратите внимание, что этот совет применим только при использовании поставщика VirtualBox.
Вы можете выполнить следующую команду из каталога Vagrant VM:
vagrant halt --force