老王有一台 Linode 实例最开始是 Ubuntu 16.04 的系统,后来手动升级成了 20.04,但是系统升级后由这台实例备份新建的实例无法联网,检查后发现是 Linode 自动网络配置没有生效,在查阅相关资料后,得知 Ubuntu 16.04 默认使用 ifupdown 管理网络的,但是升级到 17.10 后就改为systemd-networkd 了,本文分享下 Ubuntu 如何卸载禁用 ifupdown 并启用 systemd-networkd。
一、背景介绍
如果是用 ifupdown 管理网络配置,那么有两个文件需要注意:
/etc/network/interfaces
/etc/resolv.conf
如果是用 systemd-networkd 管理网络配置,那么只有一个文件需要注意:
/etc/systemd/network/05-eth0.network
二、教程分享
由于我的 Linode 实例已经手动升级成了 Ubuntu 20.04,所以 Linode 自动网络配置脚本默认更新的就是 /etc/systemd/network/05-eth0.network
文件,但实际上我的系统还在用 ifupdown 管理网络配置,因此新创建的实例网络配置不正确。
解决方法也很简单:卸载 ifupdown 并启用 systemd-networkd。
1、卸载 ifupdown
apt-get remove ifupdown
2、启用 systemd-networkd
systemctl enable systemd-networkd.service
systemctl start systemd-networkd.service