windows - Kan ikke oprette en VM med tilgængelig netværksinterface

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg begyndte at oprette en ny VM for udvikling, fordi min ubuntu 14.4 synes forældet.


Jeg desicided at skifte til ubuntu 17.10 for fremtiden, men mislykkes ved første installation.


Dette er min vagrant-fil:


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

Vagrant.configure("2") do |config|

    config.vm.provider "virtualbox" do |vb|
        vb.gui = false
        vb.memory = "1024"
    end

    config.vm.box = "generic/ubuntu1710"
    config.vm.network "forwarded\_port", guest: 80, host: 8080, auto\_correct: false
    config.vm.network "private\_network", ip: "192.168.37.200"

end


Og under tilvejebringelsen fik jeg det her


The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!

/sbin/ifdown 'eth1' || true
/sbin/ip addr flush dev 'eth1'
# Remove any previous network modifications from the interfaces file
sed -e '/^#VAGRANT-BEGIN/,$ d' /etc/network/interfaces > /tmp/vagrant-network-interfaces.pre
sed -ne '/^#VAGRANT-END/,$ p' /etc/network/interfaces | tac | sed -e '/^#VAGRANT-END/,$ d' | tac > /tmp/vagrant-network-interfaces.post

cat 
  /tmp/vagrant-network-interfaces.pre 
  /tmp/vagrant-network-entry 
  /tmp/vagrant-network-interfaces.post 
  > /etc/network/interfaces

rm -f /tmp/vagrant-network-interfaces.pre
rm -f /tmp/vagrant-network-entry
rm -f /tmp/vagrant-network-interfaces.post

/sbin/ifup 'eth1'

Stdout from the command:



Stderr from the command:

bash: line 4: /sbin/ifdown: No such file or directory
bash: line 20: /sbin/ifup: No such file or directory


Maskinen er ikke tilgængelig via hosting windows. Skal jeg installere noget før levering? Eller foretrækker du en anden maskinskabelon fra hashicorb?


Hilsen
n00n

Bedste reference


Vagrant kan ikke bruges med Ubuntu 17.10 i øjeblikket på grund af fjernelsen af ​​de traditionelle netværkskonfigurationsværktøjer og -filer: /sbin/ifup og /sbin/ifdown.


Men du kan oprette vagrant VM med en netværksinterface med følgende løsning:


1.
Tilføj installation af ifupdown i din Vagrantfil:


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

$provision\_script = <<PROVISION
    apt-get -y update
    apt-get install ifupdown -y
PROVISION

Vagrant.configure("2") do |config|
    config.vm.provision "shell", inline: $provision\_script
    config.vm.provider "virtualbox" do |vb|
        vb.gui = false
        vb.memory = "1024"
    end

    config.vm.box = "generic/ubuntu1710"
    config.vm.network "forwarded\_port", guest: 80, host: 8080, auto\_correct: false
    config.vm.network "private\_network", ip: "192.168.37.200"
end


2.
Opret vagrant VM:


vagrant up


Selvfølgelig mislykkes det med den pågældende fejl.


3.
Start provision script inde netop skabt VM. Det installerer pakke ifupdown med nødvendige filer:


vagrant provision


4.
Og genindlæs nu din VM:


vagrant reload