Ubuntu 17.10+ disable netplan
These directions have been tested also to Ubuntu 18.04.1 and will very likely work also for any future release using netplan
and systemd
.
There's no need at all to fiddle with GRUB nor any manual file removal.
The configuration set up in /etc/networking
files and directories will survive reboots.
These are the verified steps:
- Check the actual interface names you are interested in with
ip l
for the links (aka interfaces) and withip a
for addresses. - Install
ifupdown
withsudo apt -y install ifupdown
. - Purge
netplan
withsudo apt -y purge netplan.io
. - Configure
/etc/network/interfaces
and/or/etc/network/interfaces.d
accordingly to your needs (man 5 interfaces
can be of some help with examples). - Restart the
networking
service withsudo systemctl restart networking; systemctl status networking
orsudo /etc/init.d/networking restart; /etc/init.d/networking status
. The output of thestatus
command should mentionactive
as its status. - The command
ip a
will show whether the expected network configuration has been applied. - Optionally, manually purge the remants of the netplan configuration files with
sudo rm -vfr /usr/share/netplan /etc/netplan
.
No reboot is needed in order to "refresh" the IP configuration: it will be active as of step no.5 . In case of troubles, double check the interface names. A typical IPv4 DHCP configuration will resemble this one:
auto enp0s3
iface enp0s3 inet dhcp
while a static IPv4 address can be configured like this:
auto enp0s3
iface enp0s3 inet static
address 192.168.255.42/24
gateway 192.168.255.254
#dns-nameservers 8.8.8.8 208.67.222.222
Beware, the dns-nameservers
entry won't work (thanks @Velkan for pointing it out!): the resolver is still using /etc/resolv.conf
and systemd
is providing his own resolution service from 127.0.0.53
.
So you can manually update it (no networking restart needed!):
nameserver 8.8.8.8
nameserver 208.67.222.222
But his would be only a temporary solution to vanish after the next reboot.
To get a permanent solution you need to edit /etc/systemd/resolved.conf
and add a line like this one to the "[Resolve]
" stanza:
DNS=8.8.8.8 208.67.222.222
Please, refer to man 5 resolved.conf
for the full documentation.
Finally, in the unlikely case any network service is not responding as expected, then that services may need a restart. But that's a weird non-standard network daemon behavior.
The exact method to do this is hard, perhaps impossible to locate now in the early days of netplan.
I currently have this set to:
GRUB_CMDLINE_LINUX="ipv6.disable=1"
I assume that you mean that your /etc/default/grub
reads, in part:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="ipv6.disable=1"
<snip>
I also assume that the link you give suggests that you add the referenced wording:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="ipv6.disable=1 netcfg/do_not_use_netplan=true"
<snip>
I suggest that you do just that, followed by:
sudo update-grub
You will also need:
sudo apt install ifupdown
It may already be installed.
Finally, fill in /etc/network/interfaces
manually to configure your network the way you want it.
The exact process to do this post-installation, as far as Google and I can find, doesn't exist. Reboot with your fingers crossed!