如何永久禁用网络管理器?

如何永久禁用网络管理器?

我正在使用 Ubuntu 18.04.1 LTS。我想在 Ubuntu 机器上禁用网络管理器,因为 (1) 我不需要它,(2) 我更喜欢硬编码配置,以及 (3) 网络管理器经常通过更改 DHCP 配置导致问题。

我尝试跟随官方文档

停止网络管理器

sudo systemctl stop NetworkManager.service

禁用网络管理器(永久),以避免其在重启后重新启动

sudo systemctl disable NetworkManager.service

尽管如此,每次我重新启动机器时,网络管理器都会再次出现。

我怎样才能让它消失?

答案1

该方法依赖于桌面环境:

  • 对于 Ubuntu MATE 18.04 LTS 和 20.04 LTS,清除network-manager包是安全的。您只需运行:

    sudo apt-get purge network-manager
    
  • 对于带有 GNOME 桌面的 Ubuntu 18.04 LTS 和 20.04 LTS,清除network-manager包也会清除ubuntu-desktopgnome-control-centerGNOME 桌面的基本部分)。所以这不是一个选项。

    在这里您应该禁用 NetworkManager 服务(正如您已经做的那样):

    sudo systemctl stop NetworkManager.service
    sudo systemctl disable NetworkManager.service
    

    以及另外三项服务:

    sudo systemctl stop NetworkManager-wait-online.service
    sudo systemctl disable NetworkManager-wait-online.service
    
    sudo systemctl stop NetworkManager-dispatcher.service
    sudo systemctl disable NetworkManager-dispatcher.service
    
    sudo systemctl stop network-manager.service
    sudo systemctl disable network-manager.service
    

    然后重新启动。


笔记:

  1. 您可以/etc/network/interfaces从以下网址了解有关网络配置的更多信息Ubuntu 16.04 LTS 服务器指南
  2. 现代 Ubuntu 18.04 LTS 服务器使用netplan,您可以在Ubuntu 18.04 LTS 服务器指南

答案2

尝试以下mask命令:

sudo systemctl stop NetworkManager.service
sudo systemctl mask NetworkManager.service

面膜名称...

屏蔽命令行中指定的一个或多个单元。这会将这些单元文件链接到 /dev/null,使其无法启动。
这是 disable 的增强版本,因为它禁止以任何方式激活单元,包括启用和手动激活。请谨慎使用此选项。这将遵循 --runtime 选项,仅暂时屏蔽直到系统下次重新启动。
--now 选项可用于确保单元也停止。此命令仅需要有效的单元名称,它不接受单元文件路径。

相关内容