Для установки через Vagrant требуется графический интерфейс

ОБНОВЛЕНИЕ (5 февраля 2014 г.): Эта ошибка возникает, когда компьютер перезагружается без надлежащего завершения работы.

Я пытаюсь установить систему управления обучением EdX с открытым исходным кодом через их бродячий ящик для разработки на удаленной машине. Однако я получаю сообщение об ошибке, связанное с графическим интерфейсом виртуальной машины. Можно ли что-нибудь сделать через CLI/ssh? Это точная ошибка.

The guest machine entered an invalid state while waiting for it       
to boot. Valid states are 'starting, running'. The machine is in the  
'poweroff' state. Please verify everything is configured              
properly and try again.                                               

If the provider you're using has a GUI that comes with it,            
it is often helpful to open that and watch the machine, since the     
GUI often has more helpful error messages than Vagrant can retrieve.  
For example, if you're using VirtualBox, run `vagrant up` while the   
VirtualBox GUI is open.           

Ниже приведено содержимое VagrantFile.


# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "precise32"
  config.vm.box_url = "http://files.vagrantup.com/precise32.box"

  config.vm.network :forwarded_port, guest: 8000, host: 9000
  config.vm.network :forwarded_port, guest: 8001, host: 9001

  # Create a private network, which allows host-only access to the machine
  # using a specific IP.
  config.vm.network :private_network, ip: "192.168.20.40"

  nfs_setting = RUBY_PLATFORM =~ /darwin/ || RUBY_PLATFORM =~ /linux/
  config.vm.synced_folder ".", "/opt/edx/edx-platform", id: "vagrant-root", :nfs => nfs_setting

  # Make it so that network access from the vagrant guest is able to
  # use SSH private keys that are present on the host without copying
  # them into the VM.
  config.ssh.forward_agent = true

  config.vm.provider :virtualbox do |vb|
    # Use VBoxManage to customize the VM. For example to change memory:
    vb.customize ["modifyvm", :id, "--memory", "2048"]

    # This setting makes it so that network access from inside the vagrant guest
    # is able to resolve DNS using the hosts VPN connection.
    vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  end

  config.vm.provision :shell, :path => "scripts/install-acceptance-req.sh"
  config.vm.provision :shell, :path => "scripts/vagrant-provisioning.sh"
end

person iankit    schedule 22.01.2014    source источник
comment
пожалуйста, покажите вам конфигурацию Vagrantfile.   -  person Robert    schedule 22.01.2014
comment
добавил бродячую конфигурацию.   -  person iankit    schedule 30.10.2014


Ответы (2)


Нет, на этом этапе вы мало что можете сделать/диагностировать с помощью CLI или Ssh, потому что виртуальная машина не инициализируется должным образом и не находится в «рабочем» состоянии.

Вы должны следовать совету, содержащемуся в сообщении об ошибке.

Уничтожьте текущую виртуальную машину:

vagrant destroy

затем откройте графический интерфейс VirtualBox и перезапустите настройку Vagrant с помощью:

vagrant up

Затем вы можете посмотреть в консоли/окне виртуальной машины (из графического интерфейса Virtualbox), что дает сбой и препятствует запуску установки.

Альтернативный способ запустить виртуальную машину с помощью графического интерфейса консоли — изменить Vagrantfile:

# You will find this line in the Vagrantfile
Vagrant.configure("2") do |config|

  #Add this directive
  config.vm.provider "virtualbox" do |v|
    v.gui = true
  end


end

(уничтожьте существующую и неисправную виртуальную машину с помощью vagrant destroy, а затем запустите vagrant up)

Если удаленная машина (на которой работает VirtualBox) представляет собой систему Unix, доступ к которой осуществляется с помощью SSH, вы можете экспортировать графический интерфейс на свою локальную машину, используя параметр -X при подключении к ней по SSH. Подробнее о ssh -X см. в этом ответе.

person mbarthelemy    schedule 22.01.2014
comment
уничтожить и снова вверх не помогает. Та же ошибка повторяется. Еще бы попробовать альтернативный метод. - person iankit; 22.01.2014
comment
Спасибо за этот ответ! У меня были проблемы с аналогичной проблемой, и я уже нашел решение v.gui = true, но не мог заставить его работать, пока не нашел ваш ответ о том, что я должен поместить его в блок Vagrant.configure("2") do |config| - person Energya; 11.04.2015

Это сообщение появилось в моей среде по двум причинам:

1 - Если графический интерфейс вашего программного обеспечения VirtualBox закрыт, просто откройте его. P.S. Попробуйте vagrant destroy, затем снова vagrant up

2 - Если проблема не устранена, просто обновите графический интерфейс VirtualBox. Загрузки VirtualBox

Дайте мне знать, если это будет сделано.

person Helder Robalo    schedule 09.03.2014
comment
У меня нет доступа к графическому интерфейсу на машине. Это VPS с доступом только к оболочке - person iankit; 09.03.2014