2016-02-26 10 views
5

Ich habe versucht, die offizielle FreeBSD vagrant Box laufen unter Verwendung von:ungültig konfiguriert Shell Fehler bei der offiziellen FreeBSD vagrant Box läuft

vagrant init freebsd/FreeBSD-10.2-STABLE 

Und danach, verändert meine Vagrantfile entsprechend auf der Grundlage der Anweisungen bei https://forums.freebsd.org/threads/52717/ durch die Zugabe von folgenden Linien:

Vagrant.configure("2") do |config| 
    config.vm.guest = :freebsd 
    config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true 
    config.vm.box = "freebsd/FreeBSD-10.2-STABLE" 
    config.ssh.shell = "sh" 
    config.vm.base_mac = "080027D14C66" 

    config.vm.provider :virtualbox do |vb| 
    vb.customize ["modifyvm", :id, "--memory", "1024"] 
    vb.customize ["modifyvm", :id, "--cpus", "1"] 
    vb.customize ["modifyvm", :id, "--hwvirtex", "on"] 
    vb.customize ["modifyvm", :id, "--audio", "none"] 
    vb.customize ["modifyvm", :id, "--nictype1", "virtio"] 
    vb.customize ["modifyvm", :id, "--nictype2", "virtio"] 
    end 
end 

Als ich geben Sie den vagabundierenden Befehl:

vagrant up --provider virtualbox 

der folgende Fehler wurde angezeigt:

Die konfigurierte Schale (config.ssh.shell) ungültig ist und nicht in der Lage zu ordnungsgemäß Befehle auszuführen. Der häufigste Grund hierfür ist die Verwendung einer Shell , die auf dem System nicht verfügbar ist. Vergewissern Sie sich, dass Sie den vollständigen Pfad zur Shell mit verwenden und dass die Shell vom Benutzer SSH ausführbar ist.

Unabhängig von dem Fehler, ich bin immer noch in der Lage vagrant ssh in die Box. Ich kann das Gerät jedoch nicht ordnungsgemäß mit vagrant halt herunterfahren. Es würde den gleichen Fehler wie oben angezeigt und überhaupt nicht herunterfahren.

Antwort

1

Die Lösung war einfach, denn es war ein völliger Fehler von meiner Seite. In der Vagrant-Datei sollten Sie alle Teile entfernen, die beim Ausführen des Befehls vagrant init generiert wurden, mit Ausnahme der beiden Zeilen ganz oben. Fügen Sie dann die Vorschläge unter diese beiden Zeilen ein. Der komplette Vagrantfile sollte wie folgt sein:

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

Vagrant.configure("2") do |config| 
    config.vm.guest = :freebsd 
    config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true 
    config.vm.box = "freebsd/FreeBSD-10.2-STABLE" 
    config.ssh.shell = "sh" 
    config.vm.base_mac = "080027D14C66" 

    config.vm.provider :virtualbox do |vb| 
     vb.customize ["modifyvm", :id, "--memory", "1024"] 
     vb.customize ["modifyvm", :id, "--cpus", "1"] 
     vb.customize ["modifyvm", :id, "--hwvirtex", "on"] 
     vb.customize ["modifyvm", :id, "--audio", "none"] 
     vb.customize ["modifyvm", :id, "--nictype1", "virtio"] 
     vb.customize ["modifyvm", :id, "--nictype2", "virtio"] 
    end 

    config.vm.network "private_network", ip: "192.168.33.10" 
end 

Was ich falsch tat, war nisten diese Vagrant.configure("2") do |config| Block innerhalb des automatisch generierten ein.