Vagrant informed me of an upgrade to the homestead box, version 0.5.0, but when I try to use this version, I get the following error:
==> default: Configuring and enabling network interfaces...
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
/sbin/ifdown eth1 2> /dev/null
Stdout from the command:
Stderr from the command:
(no output shown)
I was able to ssh into the box (using vagrant as the default password, since the ssh key was not yet transmitted), and discovered the names of the network interfaces have changed:
vagrant@homestead:~$ ifconfig -a
enp0s3 Link encap:Ethernet HWaddr 08:00:27:46:f3:a1
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe46:f3a1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:487 errors:0 dropped:0 overruns:0 frame:0
TX packets:305 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:57159 (57.1 KB) TX bytes:46276 (46.2 KB)
enp0s8 Link encap:Ethernet HWaddr 08:00:27:bb:88:05
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
I have never seen this before, but it looks like it's a result of Ubuntu 16.04 using systemd which implemented this: https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
There are various techniques to disable this behaviour, but probably the scripts should just be updated since this seems to be the way of the future.
Thanks, but we only process laravel/framework issues here.
Where do you process homestead issues, then? This is the only open issue tracker in the laravel project.
I also had this issue and didn't know where to report the issue so I'd also like to know the proper channel for reporting issues with Homestead.
If anyone else encounters this issue, /u/utotwel on Reddit claims that installing vagrant 1.8.4 (instead of the 1.8.1 package that comes with Ubuntu) solves the problem. It's not an ideal solution, since the vagrant package is extremely poor and puts everything in the wrong place, but it's a nice work-around! Hopefully the Debian/Ubuntu-maintained package will be updated soon.
If installing vagrant 1.8.4 is not an option... what can I do?
@ndlbass The easiest way is to simply stick with Homestead 0.4.4. Just set version = "0.4.4" in your Homestead.yaml
I got it working on 0.5.0 by logging into the running VM through the VirtualBox console (after provisioning failed), adding the net.ifnames=0 kernel parameter to /etc/default/grub, update-grub, then running vagrant reload --provision. I think I also had to fiddle with the device names in /etc/network/interfaces a bit to make everything work right. Not sure exactly what I did, but now it's working fine.
If anyone wants to know about how to get rid of the 0.5.0 version:
vagrant box remove laravel/homestead --provider virtualbox --box-version 0.5.0
Thanks @d3rd4v1d. It works!
Thanks @d3rd4v1d , you save my life 馃憤
Most helpful comment
Where do you process homestead issues, then? This is the only open issue tracker in the laravel project.