Linux中如何将网络管理器由NetworkManager切换为systemd-network

在Linux中,网络管理器的选择对于系统性能和网络设置有很大的影响,NetworkManager是一个非常流行的网络管理工具,而systemd-network是Linux内核的一部分,它提供了更加稳定和高效的网络管理功能,本文将介绍如何在Linux中将网络管理器由NetworkManager切换为systemd-network。

NetworkManager简介

NetworkManager是一个通用的网络管理工具,可以自动配置和管理网络连接,它支持多种协议,如DHCP、DNS、代理等,并允许用户通过图形界面或命令行进行配置,NetworkManager的主要优点是易于使用和扩展性好,但它也存在一些缺点,如性能较差、配置复杂等。

Linux中如何将网络管理器由NetworkManager切换为systemd-network

systemd-network简介

systemd-network是Linux内核的一部分,它提供了一种简单的方式来配置和管理网络连接,通过使用systemd-network,用户可以在不修改网络接口配置文件的情况下更改网络设置,systemd-network还支持动态IP地址分配、DNS解析等功能,使得网络管理变得更加简单和高效。

如何将NetworkManager切换为systemd-network

1、安装systemd-network

需要在系统中安装systemd-network,在基于Debian的系统(如Ubuntu)中,可以使用以下命令安装:

sudo apt-get install systemd-networkd

在基于RHEL的系统(如CentOS)中,可以使用以下命令安装:

sudo yum install systemd-networkd

2、禁用NetworkManager

Linux中如何将网络管理器由NetworkManager切换为systemd-network

接下来,需要禁用NetworkManager,可以通过编辑NetworkManager的配置文件来实现这一点,在大多数系统中,该文件位于/etc/NetworkManager/NetworkManager.conf,使用文本编辑器打开该文件,并找到以下行:

[main]
dns=dnsmasq

将其注释掉,如下所示:

; [main]
; dns=dnsmasq

重启NetworkManager服务以应用更改:

sudo systemctl restart NetworkManager

3、启用systemd-network

现在,已经成功禁用了NetworkManager,可以启用systemd-network了,同样地,在大多数系统中,该服务位于/etc/systemd/system/multi-user.target.wants/network-manager.service,使用文本编辑器打开该文件,并确保其中的内容如下所示:

Linux中如何将网络管理器由NetworkManager切换为systemd-network

[Unit]
Description=Network Manager for systemd-based systems
After=network.target network-online.target
Documentation=man:systemd-networkd(8)
DocumentationUrl=http://www.freedesktop.org/wiki/Software/systemd/networking/index.html
BindsTo=network-online.target network-dhcp6.target firewalld.service avahi-daemon.service nscd.service udevadm.service dbus-daemon.service gpm.service polkitd.service bluetooth.service iwd.service wpa_supplicant.service systemd-resolved.service systemd-timesyncd.service systemd-tmpfiles-setup.service systemd-random-seed-directory.service systemd-random-seed.service acpid.service rsyslog.service timesyncd.service libnss-myhostname.so systemd-hostnamed.service systemd-logind.service systemd-udev-trigger.service systemd-user@socket service sshd.service sulogin.service apparmor.service auditd.service cronie.service cups-pdf.service postfix.service setroubleshoot.service syslogrotate.service xdmcp.service xsltproc.timer zfsdumpcodezfsquota zfsquota nfs-common nfslock krb5ccpreauth nscd avahi-autoipd e2fsck e2fsck.noatime ext4-resize fstrim resolvconf rpcbind rpcidmapped rtkit rtmpdump screen udevd udevrun unattended-upgrades update-notifier vboxadd vboxnetadp vboxpciutils wpa_supplicant watchdog -Requires=network-online.target network-dhcp6.target firewalld.service avahi-daemon.service nscd.service udevadm.service dbus-daemon.service gpm.service polkitd bluetooth iwd wpa_supplicant systemd-resolved systemd-timesyncd systemd-tmpfiles-setup systemd-random-seed systemd-random-seed-directory acpid rsyslog timesyncd libnss-myhostname systemd-hostnamed systemd-logind systemd-udev-trigger systemd-user@socket sshd sulogin apparmor auditd cups-pdf postfix setroubleshoot syslogrotate xdmcp xsltproc zfsdumpcodezfsquota zfsquota nfs-common nfslock krb5ccpreauth nscd avahi-autoipd e2fsck e2fsck.noatime ext4-resize fstrim resolvconf rpcbind rpcidmapped rtkit rtmpdump screen udevd udevrun unattended-upgrades update-notifier vboxadd vboxnetadp vboxpciutils wpa_supplicant watchdog -After=multi-user.target network-online.target 

保存并关闭文件后,重新加载systemd守护进程以应用更改:

sudo systemctl daemon-reload

4、启动并启用systemd-network服务

启动并启用systemd-network服务,在大多数系统中,可以使用以下命令:

sudo systemctl enable --now network || sudo systemctl enable network && sudo systemctl start network

至此,已经成功将网络管理器从NetworkManager切换为systemd-network,可以使用以下命令检查当前正在运行的服务:

ps aux | grep 'systemctl is running' || ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' && ps aux | grep 'systemctl is running' || sudo service systemd-network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network start || sudo service network

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/219470.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2024-01-14 15:06
Next 2024-01-14 15:19

相关推荐

  • linux 配置永久路由

    在Linux下,路由配置是非常重要的一部分,它决定了数据包的传输路径,本文将详细介绍Linux下的路由配置命令以及配置永久路由的几种方式。Linux下路由配置命令1、查看路由表要查看路由表,可以使用route或ip route命令,这两个命令的功能相同,都可以查看和操作路由表。route -nip route show2、添加路由使用……

    2023-12-27
    0331
  • linux中arp命令

    Linux基础命令arp的用法Arp(地址解析协议)是Linux系统中用于将网络层地址(如IPv4或IPv6)映射到链路层地址(如MAC地址)的协议,在网络通信中,设备的硬件地址(如网卡的MAC地址)与IP地址之间存在一一对应的关系,而ARP协议就是用来实现这种对应关系的,本文将介绍ARP命令的基本用法,包括查看ARP表、添加/删除A……

    2023-12-19
    0220
  • Docker如何使用Linux 和 Interfaces

    Docker是一个开源的应用容器引擎,它允许开发者将应用及其依赖打包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。在Docker中,我们可以使用Linux和Interfaces来管理网络连接,以下是如何使用Linux和Interface……

    2023-12-27
    0126
  • Linux面板FTP无法连接的解决办法

    Linux面板FTP无法连接的解决办法在Linux系统中,FTP(文件传输协议)是一种常用的网络传输方式,用于在客户端和服务器之间传输文件,在使用Linux面板进行FTP连接时,可能会遇到无法连接的问题,本文将介绍一些解决Linux面板FTP无法连接的方法。1、检查FTP服务是否启动我们需要确保FTP服务已经启动,在Linux系统中,……

    2023-12-28
    0309
  • linux系统快速查找文件的方法有哪些

    Linux系统快速查找文件的方法在Linux系统中,我们经常需要查找文件,我们需要找到一个特定的文件,而有时候,我们需要找到包含特定关键词的文件,本文将介绍几种在Linux系统中快速查找文件的方法,包括使用find命令、使用locate命令以及使用grep命令。find命令find命令是Linux系统中最强大的文件搜索工具之一,它可以……

    2023-12-18
    0138
  • linux服务器租用

    您可以在各大云服务商租用Linux服务器,例如阿里云、腾讯云、华为云等。这些服务商提供了多种不同的配置和价格,以满足不同用户的需求。

    2024-01-06
    0156

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入