在RHEL 7上禁用NetworkManager


9

我在vmware vSphere中设置了RHEL7服务器,但是在没有NetworkManager的情况下无法在网络上进行安装。我在安装过程中将服务器配置为具有静态IP,并使用NetworkManager设置了所有内容。尽管这样做确实可行,但我们在办公室中不使用NetworkManager,因此我进入并输入通常放置配置文件的内容,以使不具有NetworkManager的RHEL6服务器联机。

/ etc / sysconfig / network-scripts / ifcfg-ens192是以下内容:

NAME = ens192
TYPE = Ethernet
ONBOOT =是
NM_CONTROLLED =否
BOOTPROTO =静态
IPADDR = 10.0.2.15
PREFIX = 24
GATEWAY = 10.0.2.2

但是,当我禁用NetworkManager时,网络服务无法启动并显示以下错误

#service网络重启

重新启动网络(通过systemctl):network.service的作业失败。有关详细信息,请参见“ systemctl status network.service”和“ journalctl -xn”。

这两个命令都输出以下内容:

网络[1838]:RTNETLINK答案:文件存在
网络[1838]:RTNETLINK答案:文件存在
网络[1838]:RTNETLINK答案:文件存在
网络[1838]:RTNETLINK答案:文件存在
网络[1838]:RTNETLINK答案:文件存在
网络[1838]:RTNETLINK答案:文件存在
网络[1838]:RTNETLINK答案:文件存在
systemd [1]:network.service:控制进程已退出,代码=退出状态= 1
systemd [1]:无法启动LSB:带来上/下联网

另外,这是命令“ ip addr”输出的内容:

1:lo:mtu 65536 qdisc noqueue状态未知
     链接/环回00:00:00:00:00:00 brd 00:00:00:00:00:00
     inet 127.0.0.1/8作用域主机
       lovalid_lft永远是preferred_lft永远是
     inet6 :: 1/128范围主机
       永远有效_lft永远首选_lft
2:ens192:mtu 1500 qdisc noop state DOWN qlen 1000
     link / ether 08:00:27:98:8e:df brd ff:ff:ff:ff:ff:ff:ff


RTNETLINK answers: File exists表示network.service尝试添加的任何内容(可能是IP地址)已经存在。运行ip addr并将结果添加到您的问题。
BenjiWiebe 2014年

我最近调试了一个问题,network.service跟踪ip命令的最佳方法是strace。通常,您不应该得到这种类型的错误。可能值得报告(最好是通过支持)。
PavelŠimerda

Answers:


2

检查您的VM的MAC地址。应该是08:00:27:98:8e:df,因为那是您运行ip addr所显示的内容。如果还有其他问题,则需要使用以下内容在ifcfg-ens192文件中进行设置,但用实际地址替换。

HWADDR="08:00:27:98:8e:df"

我有同样的问题,这为我解决了。


“问题”中的配置文件显然依赖于NAME = ens192,而没有任何MAC地址匹配。
PavelŠimerda

1

我发现解决此问题所需要做的就是配置中的MAC

 NAME=ens192
 TYPE=Ethernet
 ONBOOT=yes
 HWADDR="08:00:27:98:8e:df"
 NM_CONTROLLED=no
 BOOTPROTO=static
 IPADDR=10.0.2.15
 PREFIX=24
 GATEWAY=10.0.2.2

如果不确定硬件地址,可以在其中找到。

 cat /sys/class/net/ens192/address



0

由于禁用了NetworkManager,我也遇到了“无法启动LSB:启动/关闭网络连接”错误。启动后花了两分钟来启动接口。造成混淆的原因是“ ... LSB”。原来,消息仅来自传统的/etc/rc.d/init.d/network脚本。就我而言,以下解决了问题;

为了网络脚本/的ifcfg-eth0的加入

NMCONTROLLED=no

删除了NetworkManager遗留下来的不必要的ifcfg- *文件

# rm /etc/sysconfig/network-scripts/ifcfg-Wired_connection_?

0

这样可以解决问题!

# rm /etc/udev/rules.d/70-persistent-ipoib.rules 

# reboot
  • 现在编辑/ etc / sysconfig / network-scripts / ifcfg-eth0,
  • 添加新生成的HWADDR或将其删除
  • 删除UUID行

-重新启动网络服务

 #systemctl restart network.service

现在!工作。


0

即使您的接口已禁用nm,NetworkManager也会指定默认路由(ip route),这只是该接口而不是整个系统。

ps aux | grep -I net   # will probably find NetworkManager still running.
chkconfig network on
systemctl disable NetworkManager.service
systemctl stop NetworkManager.service

1
systemctl disable不会停止服务,也不会停止chkconfig ... off转换为同一命令。
PavelŠimerda

-1

我有同样的问题。因此,我只是删除在中创建的备份文件/etc/sysconfig/network-scripts,例如ifcfg-Bridge_connection_1.homeifcfg-Bridge_connection_1.office为备份使用而创建的。不应在此处创建它们。/etc/init.d/network restart删除那些无用的ifcfg- *后,该工具可以很好地工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.