How to Disable Network Manager on CentOS Stream 10

NetworkManager is the default tool for configuring and managing the network services on CentOS Stream 10, sometimes there are situations where we need to permanently disable the NetworkManager, and use alternative methods to configure and manage the network. This wiki describes how to permanently disable NetworkManager on CentOS Stream 10.

Check Status and Disable Network

To check the service's status right now, run the command below,

systemctl status NetworkManager

Output:

[root@server ~]# systemctl status NetworkManager
● NetworkManager.service - Network Manager
     Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; p>
     Active: active (running) since Thu 2025-02-20 11:57:05 CST; 3min 58s ago
 Invocation: 709422588721421e936d934dd979a9ee
       Docs: man:NetworkManager(8)
   Main PID: 849 (NetworkManager)
      Tasks: 4 (limit: 23166)
     Memory: 8.8M (peak: 9.5M)
        CPU: 17.436s
     CGroup: /system.slice/NetworkManager.service
             └─849 /usr/sbin/NetworkManager --no-daemon

To stop the Network Manager Service, run the following command.,

systemctl stop NetworkManager

Output:

[root@vps ~]#  systemctl stop NetworkManager

To disable the Network Manger service using the following command,

systemctl disable NetworkManager

Output:

[root@vps ~]#  systemctl disable NetworkManager
Removed "/etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service".
Removed "/etc/systemd/system/multi-user.target.wants/NetworkManager.service".
Removed "/etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service".

Verify the Network Manager Service is shut down and auto start across reboot is disabled, run the following command to confirm,

systemctl status NetworkManager
systemctl is-enabled NetworkManager

Output:

[root@server ~]# systemctl status NetworkManager
systemctl is-enabled NetworkManager
○ NetworkManager.service - Network Manager
     Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; disabled; preset: enabled)
     Active: inactive (dead)
       Docs: man:NetworkManager(8)

Feb 20 12:02:14 server NetworkManager[849]: <info>  [1740074534.1705] caught SIGTERM, shutting down normally.
Feb 20 12:02:14 server systemd[1]: Stopping NetworkManager.service - Network Manager...
Feb 20 12:02:14 server NetworkManager[849]: <info>  [1740074534.1728] dhcp4 (ens3): canceled DHCP transaction
Feb 20 12:02:14 server NetworkManager[849]: <info>  [1740074534.1728] dhcp4 (ens3): activation: beginning transaction (timeout in 45 seconds)
Feb 20 12:02:14 server NetworkManager[849]: <info>  [1740074534.1729] dhcp4 (ens3): state changed no lease
Feb 20 12:02:14 server NetworkManager[849]: <info>  [1740074534.1733] manager: NetworkManager state is now CONNECTED_SITE
Feb 20 12:02:14 server NetworkManager[849]: <info>  [1740074534.1780] exiting (success)
Feb 20 12:02:14 server systemd[1]: NetworkManager.service: Deactivated successfully.
Feb 20 12:02:14 server systemd[1]: Stopped NetworkManager.service - Network Manager.
Feb 20 12:02:14 server systemd[1]: NetworkManager.service: Consumed 22.621s CPU time, 9.5M memory peak.
disabled
[root@vps ~]# systemctl is-enabled NetworkManager
disabled

Start and Enable the Network

Since the Network is disabled, Use the following commands to start and enable the network,

systemctl start NetworkManager
systemctl enable NetworkManager

Done! Network Manager Service is currently disabled and has been stopped across reboots.


CrownCloud - Get a SSD powered KVM VPS at $4.5/month!
Use the code WELCOME for 10% off!

1 GB RAM / 25 GB SSD / 1 CPU Core / 1 TB Bandwidth per month

Available Locations: LAX | MIA | ATL | FRA | AMS