如何在从 16.04 升级到 18.04 的 ubuntu 服务器上启用 netplan

如何在从 16.04 升级到 18.04 的 ubuntu 服务器上启用 netplan

我最近将我的 16.04 服务器系统升级到 18.04,然后尝试使用 netplan 设置网络。不幸的是,现在我的网络设置坏了,我不知道哪些文件属于哪个网络配置系统。

/etc/network/interfaces 文件仍然包含数据,并且 /etc/network 中还有一堆其他文件,我不知道它们的用途。

我想要做的是从以下配置重新开始:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp4s0:
      dhcp4: yes
      dhcp6: yes
  bridges:
    br0:
      interfaces: [enp4s0]
      dhcp4: true
      parameters:
        stp: false
        forward-delay: 0

有人能告诉我我真正需要哪些文件,哪些只是应该删除的垃圾吗?该系统只应该有一个桥接网络设备,并运行 openssh-server、lxc 和 docker。这是目前的情况:

# tree network
network
├── fan
├── if-down.d
│   ├── resolvconf
│   └── ubuntu-fan
├── if-post-down.d
│   ├── bridge -> /lib/bridge-utils/ifupdown.sh
│   ├── ifenslave
│   ├── ubuntu-fan
│   ├── vlan
│   └── wireless-tools
├── if-pre-up.d
│   ├── bridge -> /lib/bridge-utils/ifupdown.sh
│   ├── ethtool
│   ├── ifenslave
│   ├── vlan
│   └── wireless-tools
├── if-up.d
│   ├── 000resolvconf
│   ├── avahi-daemon
│   ├── ethtool
│   ├── ifenslave
│   ├── ip
│   ├── openssh-server
│   └── ubuntu-fan
├── interfaces
└── interfaces.d

5 directories, 21 files
# tree netplan
netplan
└── 01-netcfg.yaml

0 directories, 1 file
# tree NetworkManager/
NetworkManager/
└── conf.d
    └── 10-ubuntu-fan.conf

答案1

如果您要升级到 18.04 并想要使用 netplan 而不是 ifupdown,那么您应该执行以下操作:

  1. 确保在网络出现故障时可以访问服务器
  2. 确保包netplan.io已安装(应该在 18.04 上)。
  3. 根据您的配置创建一个 netplan yaml。有很多例子从中选择。
  4. sudo netplan apply
  5. sudo apt purge ifupdown
  6. 重启
  7. 您现在应该已“迁移”,并且networkctlip addr等应该会显示您的接口。

请注意,中仍会存在一些垃圾/etc/network/。您可以删除/存档:

  • /etc/network/interfaces
  • /etc/network/interfaces.d/

其余的是“钩子”目录,其他软件包将文件放入其中,以尝试对系统的网络状态做出反应。这些文件应该保持不变。

如果你有任何文件放在其中,那么最好通过集成到 systemd 单元文件中或使用以下方法来完成这些相同的功能:网络调度程序. 更多信息请见netplan 常见问题解答

相关内容