Vagrant ssh schlägt mit VirtualBox fehl

61399
Till

vagrant up schlägt fehl, wenn es zum ssh-Teil kommt:

myterminal$ vagrant up [default] VM already created. Booting if its not already running... [default] Running any VM customizations... [default] Clearing any previously set forwarded ports... [default] Forwarding ports... [default] -- ssh: 22 => 2222 (adapter 1) [default] -- db2: 30003 => 30003 (adapter 1) [default] Cleaning previously set shared folders... [default] Creating shared folders metadata... [default] Booting VM... [default] Waiting for VM to boot. This can take a few minutes. [default] Failed to connect to VM! Failed to connect to VM via SSH. Please verify the VM successfully booted by looking at the VirtualBox GUI. 

Wenn ich anschließend versuche, die Verbindung mit vagrant ssh oder vagrant reload oder ähnlichem herzustellen, erhalte ich Folgendes:

myterminal$ vagrant reload [default] Attempting graceful shutdown of linux... SSH connection was refused! This usually happens if the VM failed to boot properly. Some steps to try to fix this: First, try reloading your VM with `vagrant reload`, since a simple restart sometimes fixes things. If that doesn't work, destroy your VM and recreate it with a `vagrant destroy` followed by a `vagrant up`. If that doesn't work, contact a Vagrant maintainer (support channels listed on the website) for more assistance. 

Bitte helfen Ich bin wirklich ratlos.

Mit freundlichen Grüßen,

Luke

37

18 Antworten auf die Frage

26
Till

Ich hatte das gleiche Problem mit der Box, die im "Getting Started" von Vagrant angegeben ist. Meine Lösung ist für dieses Tutorial.

Ich finde hier eine Lösung: https://github.com/mitchellh/vagrant/issues/391

  1. Fügen Sie im VagrantFile den gui-Modus hinzu: config.vm.boot_mode = :gui
  2. Lauf vagrant up
  3. In der GUI loggen Sie sich mit dem Benutzer "vagrant" (Passwort = "vagrant")
  4. In der GUI ausführen sudo /etc/init.d/networking restart, in /etc/network/interfacesDatei müssen Sie jetzt einen Abschnitt mit haben#VAGRANT-BEGIN [...]#VAGRANT-END
  5. vagrant reloadauf dem physischen Computer ausführen
Das hat bei mir funktioniert, danke. Ich hatte Vagrant vorher am Laufen, dann hörte es auf, mit einer neuen Box zu arbeiten. Irgendeine Idee, was es verursacht? Andrew Vit vor 13 Jahren 3
** sudo /etc/init.d/networking restart ** ist für mich gearbeitet, danke! Anatoly vor 13 Jahren 0
Das hat auch für mich funktioniert. Vielen Dank! vor 13 Jahren 0
Ich habe neustarten, aber in / etc / network / interfaces habe ich keinen Abschnitt mit # VAGRANT-BEGIN [...] # VAGRANT-END, irgendein Hinweis, warum? Kann ich es manuell hinzufügen? sparrovv vor 13 Jahren 2
Sudo Dhclient funktioniert auch Ngo Minh Nam vor 12 Jahren 0
Ich bekomme `Die folgenden Einstellungen sollten nicht existieren: boot_mode` Calin vor 8 Jahren 1
In der neuesten Version muss v.gui = true für die Provider-Konfiguration angegeben werden Calin vor 8 Jahren 1
Dieses Problem wurde auch behoben, indem der Bridged-Modus vorübergehend deaktiviert wurde. Andrew Anthony Gerst vor 8 Jahren 0
9
Mark Cheverton

Ich sah dieses Problem mit meinem Setup und beschränkte es schließlich auf die Tatsache, dass ich der lokalen Hostdatei einen Namen hinzugefügt hatte. So hatte ich:

127.0.0.1 localhost myname myalias 

myaliasIch habe das, was ich hinzugefügt hatte, entfernt und es war in Ordnung. Danke an @saphirlazuli für den Hinweis, dass es mit dem Netzwerk zu tun hat.

Was ist die Problemumgehung, wenn ich Myalias bewahren möchte? Mickey Cheong vor 13 Jahren 0
Wenn Sie einen Alias ​​verwenden möchten, bleibt Debian / Ubuntu so, dass die erste Zeile nur "127.0.0.1 localhost" bleibt. Fügen Sie jedoch eine zweite Zeile mit Ihren Aliasnamen hinzu: "127.0.1.1 foo bar baz" CodeGnome vor 12 Jahren 0
6
DuffJ

Dies ist ein zeitweiliges Problem für mich und scheint definitiv mit dem Networking verbunden zu sein. Bei den Ausgaben Nr. 391 und Nr. 455 von Vagrant GitHub fand ich weitere hilfreiche Informationen . Ich habe versucht, mein nicht verwendetes Host-Only-Netzwerk in den VirtualBox-Einstellungen zu löschen (was als potenzieller Fix in einem der GitHub-Probleme empfohlen wird), was nicht zu helfen schien.

Der Start im GUI-Modus (wie in einer vorherigen Antwort beschrieben) ist eine großartige Möglichkeit, Probleme zu beheben. Ich habe festgestellt, dass die VM aus irgendeinem Grund beim Start keine IP-Adresse erhalten kann. Wenn Sie im GUI-Modus starten, sich dann anmelden (Vagrant / Vagrant) und sudo dhclientim Gastbetriebssystem ausführen, wird die IP-Adresse abgerufen, und der Vagrant-Installationsvorgang wird erfolgreich abgeschlossen.

Immer noch auf der Suche nach einer dauerhaften Lösung.

Hoffe das hilft!

[EDITED TO ADD]: Ein hilfreicher Vorschlag wurde zu GitHub Issue # 455 hinzugefügt. Dabei wurde die folgende Konfiguration hinzugefügt Vagrantfile:

config.ssh.max_tries = 150 

Dies funktioniert derzeit für mich und scheint sinnvoll zu sein, da das Problem scheinbar mit einem Timeout zusammenhängt - die Erhöhung der Anzahl der Versuche sollte die Wahrscheinlichkeit erhöhen, dass der SSH-Prozess rechtzeitig erfolgreich ist. Es ist in erster Linie ein zeitweiliges Thema, also werde ich mir eine Weile das Urteil vorbehalten, aber die Daumen drücken, es wird funktionieren! Danke an karel1980 für den Vorschlag.

Das Löschen meines nicht verwendeten Host-Only-Netzwerks in den VirtualBox-Einstellungen hat für mich funktioniert! Vielen Dank! Duke vor 11 Jahren 0
Es scheint, dass diese Einstellung ab 1.3.X - https://github.com/berkshelf/berkshelf/pull/856 verunglimpft wurde Jeremy Hajek vor 10 Jahren 1
5
Till

Wenn dies vagrant upfehlschlägt, empfehle ich Folgendes:

  1. Boot mit GUI - Modus : das sehen hilft, wenn das Bild unterbrochen ist (oder zum Beispiel, was es tut, bevor die Bereitstellung gestartet wird), stellen Sie config.vm.boot_mode = :guiin IhremVagrantfile
  2. Debug-Protokollierung : Führen Sie die Bereitstellung mit Debug durch .chef.log_level = :debug
  3. Packen Sie die Box neu : Manchmal müssen Sie etwas installieren, bevor alles andere läuft - um den Bootstrapper zu booten. Das ist nicht wirklich möglich, so ist die einfachste ohne Bereitstellung einer vm zu booten, installieren Sie, was Sie brauchen und wieder Paket, um das Feld ( vagrant box repackage foo, dann vagrant import foound fügen Sie dann fooin Ihrem Vagrantfile)

Hinweis: Der GUI-Modus kann andere Probleme haben, z. B. funktioniert für mich kein Provisioning mit Vagrant, 0.7.5wenn GUI aktiviert ist. Es ist immer noch großartig, die eigentliche Box zu debuggen.

2
Simon Celen

Mein Netzwerkkartentyp war ursprünglich auf eingestellt 82540EM. Ich habe es geändert Am79C973und jetzt arbeitet Vagrant jedes Mal. Ich habe mehrere VMs gestartet, den Host sogar neu gestartet, und es funktioniert immer noch.

Der Befehl lautet:

VBoxManage modifyvm yourmachinename --nictype1 Am79C973 

Vergessen Sie nicht, Ihre Verpackung bei Vagrant neu zu verpacken und vorzulesen.

Ich verwende Debian Squeeze 64-Bit als Host und Gäste und verwende VirtualBox 4.1.16 auf einem Core i7-2600-Computer.

1

Wenn das Kernelmodul bereits installiert ist, starten Sie die VM direkt mit VirtualBox. Daraufhin werden alle beim Starten der VM aufgetretenen Startfehler angezeigt. Probleme wie Dateisystemfehler verhindern, dass der SSH-Serverdämon ordnungsgemäß funktioniert.

1
sparrovv

Ich hatte das gleiche Problem unter osx (VirtualBox 4.1.0 und Vagrant 0.8.6), und für mich war die einzige Hilfe:

  1. einloggen mit: gui per login / pass: vagrant / vagrant
  2. Ändern Sie die Datei „/etc/rc.local“ so, dass die Zeile „sh /etc/init.d/networking restart“ kurz vor „exit 0“ eingefügt wird.
  3. deaktiviere: gui
  4. vagrant reload

Ich habe dies unter https://github.com/mitchellh/vagrant/issues/391 thx mikhailov gefunden.

1
diedthreetimes

Ich hatte das gleiche Problem. In meinem Fall war die 64-Bit-Emulation nicht aktiviert. Die Aktivierung dieser Funktion in meinem BIOS hat das Problem behoben.

1
Kevin Meredith

Meine Gastbox wurde aufgrund eines Festplattenproblems nicht ordnungsgemäß gestartet.

Ich habe die VM gezwungen, via zu schließen

VBoxManage controlvm poweroff

Dann habe ich meine folgende VagrantfileZeile geändert :

config.vm.boot_mode =: gui

Als nächstes lief ich weiter

vagrant up

In der GUI, die auftauchte, musste ich das Dienstprogramm 'Disk Fixer' ausführen.

Nachdem das Festplatten-Dienstprogramm ausgeführt wurde, wurde meine VM erfolgreich gestartet und konnte dann ausgeführt werden vagrant ssh.

1
Pavan Katepalli

Ich habe den Part in der Vagrantfile folgendermaßen kommentiert:

 config.vm.provider :virtualbox do |vb| # Don't boot with headless mode vb.gui = true  # Use VBoxManage to customize the VM. For example to change memory: # vb.customize ["modifyvm", :id, "--memory", "1024"] end 

Ich habe es gerettet und dann tat ich es

vagrant reload 

und dann funktionierten die Dinge gut. Ich bin nicht sicher, warum das Problem behoben wurde.