Centos 无法启动LSB:关闭网络

Centos 无法启动LSB:关闭网络,centos,centos7,Centos,Centos7,我是CentOS 7新手,正在CentOS 7上配置静态IP,因此我编辑了文件/etc/sysconfig/network scipts/ifcfg-eth0,如下所示: TYPE=Ethernet BOOTPROTO=none Device=eth0 ONBBOOT=yes IPADDR=192.168.4.196 NETMASK=255.255.255.0 GATEWAY=192.168.88.254 DNS1=8.8.8.8 USERCTL=no 但是当我发出命令的时候 systemct

我是CentOS 7新手,正在CentOS 7上配置静态IP,因此我编辑了文件
/etc/sysconfig/network scipts/ifcfg-eth0
,如下所示:

TYPE=Ethernet
BOOTPROTO=none
Device=eth0
ONBBOOT=yes
IPADDR=192.168.4.196
NETMASK=255.255.255.0
GATEWAY=192.168.88.254
DNS1=8.8.8.8
USERCTL=no
但是当我发出命令的时候

systemctl restart network 
我发现了错误

failed to start LSB :/Bring Up down Networking
ip路由显示
没有输出

我已应用解决方案,该解决方案使用相同的现有错误停止NetworkManager

我能够配置动态DHCP并获得动态IP地址,但不能获得静态IP地址


可能的解决方案是什么?

您应该将BOOTPROTO更改为static,并将DNS配置移动到/etc/resolv.conf文件中,例如:

TYPE=Ethernet
BOOTPROTO=static
PHYSDEV=eth0
ONBBOOT=yes
IPADDR=192.168.4.196
NETMASK=255.255.255.0
GATEWAY=192.168.88.254
USERCTL=no

当我面临这个问题,使我的漫游笔记本电脑上的AutoSH功能无法正常运行时,我决定撕碎我的MageiaOS代码,以了解根本原因。我没有NetworkManager,所以我确信这不是障碍

发现的问题可以被描述为SysV和systemd之间管理网络服务的最终活锁。可能有许多情况会触发它(NetworkManager就是一个例子),在我的例子中,它是由VMWare错误配置的vboxnet ifaces

SysV/systemd balance的每个部分都有两个关键的拦截器,它们可能会在循环中开始相互触发。在SysV端,init.d/network脚本最终调用“ifup$device boot”,作为对“boot”参数的响应,它启动可插拔ifaces的ifplugdemon。这个守护进程的问题是,尽管有“-I”开关(用于忽略错误),但在内存中检测到自身时,它仍然会失败,退出代码为4。从网络脚本关闭此守护程序的唯一正确方法是发出“ifdown$device boot”命令,该命令应该在通过“service”或“systemctl”命令停止网络服务时执行

这个问题有趣的部分是:为什么在网络服务启动之前ifplugd已经在内存中了?在我的例子中,WiFi iface是在错误配置vbox iface之前启动的,但后者导致整个initscript失败。所以,网络在引导时启动,但服务状态被记录为失败。但是,是什么阻止我们停止网络服务,从而从ifdown/boot命令中杀死ifplugd呢?答案是:systemd以其巧妙的方式处理单元文件中的ExecStop指令(这是为网络服务动态自动生成的)。基本上,“systemctl stop”命令如果认为服务未启动,则忽略ExecStop指令。当然不是因为。。。如果之前在意外的ifplugd实例上绊倒失败!因此,无法停止服务,因此无法摆脱ifplugd,因此无法(重新)启动服务等等

结语。这类问题没有单一的解决方法,因为网络脚本和systemd方法之间的兼容性平衡非常脆弱,因此许多意外因素可能会开始干扰。要对此场景进行故障排除,以下几种状态可能很有用:

  • 网络服务:systemctl状态网络
  • ifplugd服务:ps ax | grep ifplugd
  • 网络链接状态:ifconfig/iwconfig
  • 自动生成单元:cat/var/run/systemd/generator.late/network.service
  • 独立运行ifup的其他地方:grep-rs ifup/etc
当然还有“bash-x”和调试“echo Bump”指令。:-)


长期解决方案是在这种情况下修复ifplugd以支持'-I'开关。中期解决方案是修复/etc/sysconfig/networkscripts/ifup-eth忽略ifplugd返回代码。短期解决方案似乎是最棘手的,它只是删除所有可能触发此活动锁的配置因素。但这是唯一允许系统自动更新的…

因为接口问题

对我有效的解决方案是:

检查可用的接口

vi-ifcfg-ens192
并将名称设备字段更改为ens192

systemctl disable NetworkManager

systemctl status NetworkManager  -> inactive

systemctl stop network

systemctl start network
然后检查ip a


获取IP的详细信息并能够ping该IP。

Execute
tee/etc/modprobe.d/*blacklist*.conf我来这里是为了寻找我的案例的答案,所以我将与大家分享,也许它会帮助其他人。我要感谢cPanel的工作人员向我指出了这一点

至于报告的问题,我们已经看到CloudLInux服务器运行的内核版本低于“3.10.0-862”,并更新到CloudLInux 7.7,它们将获得“iproute”包的更新

“iproute”包需要淘汰较新的内核,或者从最初的服务器更新中排除

这一信息已被报告。您可以在此处找到有关它的更多信息:

就我而言

journalctl -xe
显示使用相同UUID的eth0和eno1接口配置重复:

Nov 06 09:35:41 4200-150-137 /etc/sysconfig/network-scripts/ifup-eth[27549]: Device eno1 does not seem to be present, del
Nov 06 09:35:41 4200-150-137 network[27401]: [FAILED]
Nov 06 09:35:41 4200-150-137 network[27401]: Bringing up interface eth0:  [  OK  ]

删除未使用的接口ifcfg文件为我解决了问题。

经过多次尝试,包括重新启动网络管理器,在相关接口上注释UUID(我的是ifcfg-eth0),它最终归结为一个丢失的文件,尽管它的值可以直接包含在接口文件中,但显然需要包含该文件

vi /etc/sysconfig/network
然后添加正确的值并保存:

NETWORKING=yes
HOSTNAME=xxx.xxx.xxx
GATEWAY=x.x.x.x

我希望这对某人有帮助。它在CentOS 7上作为来宾虚拟机在Windows 10的Hyper V上进行测试。

我有OVH的VPS,并且一直在努力解决类似问题。 只是想分享我的解决方案,因为它可以帮助一些人。 它过去将引导延迟5分钟,
dhclient
正在
ifup
呼叫上检查ipv6

将此设置为否

DHCPV6C=no

在为我工作的
/etc/sysconfig/networkscripts/ifcfg-eth0

里面,非常感谢你!!!!
DHCPV6C=no