编辑:我发现重新安装操作系统可能更有效率。我可能会再次遇到这种情况,所以我要么创建新问题,要么找到继续此问题的方法。另请注意,下面我在 netplan 上创建了一个错误报告https://bugs.launchpad.net/netplan/+bug/1953054
编辑: 这很有趣https://onet.vn/install-netplan-on-ubuntu.html
默认情况下,Ubuntu 16.04 LTS 上的 Netplan 是禁用的。您必须手动启用它。要启用 Netplan,您必须在 /etc/default/ 目录中创建一个文件 netplan,并向其中添加 ENABLED=1。
我有 Ubuntu 18.04.6 LTS。为了与其他服务器保持一致,我想使用 netplan.io。/etc/netplan/01-netcfg.yml
我关注了几篇帖子,它们提供了类似的禁用 NetworkManager 和配置/启用 netplan 的说明。这是其中之一,但它没有提供我想要的结果:如何在从 16.04 升级到 18.04 的 ubuntu 服务器上启用 netplan
总之,我想完全禁用 NetworkManager。我希望 /etc/netplan 成为在此服务器上配置静态寻址的唯一方法。
我已禁用/启用相应的服务:
# systemctl list-unit-files | grep -i network
dbus-org.freedesktop.network1.service enabled
network-manager.service masked
networkd-dispatcher.service enabled
NetworkManager-dispatcher.service enabled
NetworkManager-wait-online.service enabled
NetworkManager.service masked
systemd-networkd-wait-online.service enabled
systemd-networkd.service enabled
我已经写了一个 netplan 配置:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
dhcp4: no
addresses: [192.168.1.30/24]
gateway4: 192.168.1.1
但是我继续从 DHCP 获取地址,而不是从 netplan 配置获取:
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:13:77:bd:fb:7c brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic noprefixroute enp3s0
valid_lft 1750sec preferred_lft 1750sec
inet6 fe80::6815:1b1b:6a5a:4049/64 scope link noprefixroute
valid_lft forever preferred_lft forever
我看过了https://netplan.io/troubleshooting/#debugging-issues-with-the-networkd-backend/run/systemd/network
而我实际上并没有看到文件:
# ls /run/systemd/network
ls: cannot access '/run/systemd/network': No such file or directory
另外,在故障排除过程中,我创建了一个完全虚假的/etc/netplan/01-netcfg.yml
但它仍然被接受:
FOO:
BAR:
FOO
# netplan try -d
Do you want to keep these settings?
Press ENTER before the timeout to accept the new configuration
Changes will revert in 120 seconds
Configuration accepted.
# netplan apply -d
这到底发生什么事了?