centOS 7一个解决“network.service: control process exited, code=exited status=1”方法.

1.centOS 7一个解决“network.service: control process exited, code=exited status=1”方法.

今天早上2017-08-04,我打开虚拟机,使用远程工具xshell对虚拟机进行连接,我发现连接不上去,然后我ifconfig,发现找不到ens33了,就剩一个本地回环,看来是我的网络出现了问题,然后我查看我的网络状态,发现了如下情况:

 

[root@CT71 ~]# systemctl status network.service

● network.service - LSB: Bring up/down networking

Loaded: loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled)

Active: failed (Result: exit-code) since Fri 2017-08-04 08:20:31 CST; 1min 44s ago

Docs: man:systemd-sysv-generator(8)

Process: 62726 ExecStop=/etc/rc.d/init.d/network stop (code=exited, status=0/SUCCESS)

Process: 63183 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=1/FAILURE)

 

Aug 04 08:20:31 CT71 network[63183]: RTNETLINK answers: File exists

Aug 04 08:20:31 CT71 network[63183]: RTNETLINK answers: File exists

Aug 04 08:20:31 CT71 network[63183]: RTNETLINK answers: File exists

Aug 04 08:20:31 CT71 network[63183]: RTNETLINK answers: File exists

Aug 04 08:20:31 CT71 network[63183]: RTNETLINK answers: File exists

Aug 04 08:20:31 CT71 network[63183]: RTNETLINK answers: File exists

Aug 04 08:20:31 CT71 systemd[1]: network.service: control process exited, code=exited status=1

Aug 04 08:20:31 CT71 systemd[1]: Failed to start LSB: Bring up/down networking.

Aug 04 08:20:31 CT71 systemd[1]: Unit network.service entered failed state.

Aug 04 08:20:31 CT71 systemd[1]: network.service failed.

 

我在某度上找了好几个答案,都没有找到我能解决问题的答案,然后我进行Google,在一个博客上找到了我需要的答案,不知道是不是会针对于大家都可以,方法是关闭网络管理,如下:

 

systemctl stop NetworkManager

 

我在执行上面一步后就已经解决了问题,那个博客给出的答案还有下面的步骤,我没有用:

 

systemctl disable NetworkManager

 

Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service.

Removed symlink /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service.

Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.

 

然后重启网络:

 

systemctl start network.service

 

可以使用了:

 

[root@CT71 bin]# ifconfig

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

inet 172.17.251.180 netmask 255.255.0.0 broadcast 172.17.255.255

inet6 fe80::20c:29ff:fe84:b4 prefixlen 64 scopeid 0x20<link>

ether 00:0c:29:84:00:b4 txqueuelen 1000 (Ethernet)

RX packets 3629648 bytes 315562709 (300.9 MiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 2974 bytes 295864 (288.9 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

 

ens34: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

inet 192.168.111.110 netmask 255.255.255.0 broadcast 192.168.111.255

inet6 fe80::febf:b561:4150:f3b0 prefixlen 64 scopeid 0x20<link>

ether 00:0c:29:84:00:be txqueuelen 1000 (Ethernet)

RX packets 121771 bytes 11870451 (11.3 MiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 94155 bytes 20071976 (19.1 MiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

 

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536

inet 127.0.0.1 netmask 255.0.0.0

inet6 ::1 prefixlen 128 scopeid 0x10<host>

loop txqueuelen 1 (Local Loopback)

RX packets 90 bytes 6748 (6.5 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 90 bytes 6748 (6.5 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

 

virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500

inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255

ether 52:54:00:b6:46:31 txqueuelen 1000 (Ethernet)

RX packets 0 bytes 0 (0.0 B)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 0 bytes 0 (0.0 B)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
————————————————
版权声明:本文为优快云博主「linuxbugs」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/woodrow1994/article/details/79412287

面试的小伙伴可以mark一下,轻松拿高薪!

 

 

<think>好的,我现在需要帮助用户解决在Linux系统中遇到的network.service启动失败的问题,尤其是可能与IP地址配置相关的情况。用户提到了错误信息“Job for network.service failed because the control process exited with error code”,并希望找到解决方案,特别是与IP配置文件相关的部分。让我仔细分析这个问题,并参考之前的对话和提供的引用内容来构建解决方案。 首先,我需要回忆一下之前给用户的回答中提到的步骤,用户可能已经尝试过配置IP地址并重启网络服务,但现在遇到了服务启动失败的问题。根据用户提供的引用,特别是引用[1]、[2]、[3]、[4],错误通常与网络配置错误、服务冲突或配置文件问题有关。例如,引用[4]中提到可能需要检查配置文件是否正确,关闭NetworkManager服务,或者删除无关的网卡配置文件。 接下来,我需要整理出一个结构化的解决方案,涵盖常见的错误原因和对应的解决步骤。根据用户的问题,重点在于IP地址配置,因此需要详细检查配置文件中的参数是否正确,如IP地址、子网掩码、网关、DNS等,同时确保没有拼写错误或格式问题。此外,服务冲突也是一个常见原因,比如NetworkManager和传统的network服务之间的冲突,需要确认是否已经正确关闭了冲突的服务。 另外,用户提到的引用中多次提到使用systemctl status和journalctl命令查看详细的错误日志,这应该是排查问题的重要步骤。因此,在解决方案中需要指导用户如何通过这些命令获取具体的错误信息,从而定位问题。 可能还需要考虑其他因素,例如网卡设备名称是否正确(如eth0是否实际存在),或者是否存在多个冲突的配置文件。引用[4]中提到删除无关的网卡配置文件可能有助于解决问题,因此在解决方案中应该包含这一步骤作为备选方案。 现在,我需要将这些思考整理成一个步骤清晰的解决方案,分为几个主要部分:错误诊断、检查配置文件、解决服务冲突、其他可能的问题以及临时解决方案。每个部分都需要具体的命令和操作示例,确保用户能够按照步骤执行。 同时,需要注意用户可能对Linux系统不是很熟悉,因此需要避免使用过于专业的术语,尽量用简单明了的语言解释每个步骤的目的和操作方法。例如,在检查配置文件时,需要指出具体的文件路径和关键参数,并提供示例,帮助用户对比自己的配置是否正确。 最后,生成相关问题,帮助用户进一步排查或了解相关主题,比如如何查看网络服务日志、如何备份配置文件等,这样可以提供更全面的支持。</think>--- ### 一、错误诊断核心步骤 根据引用[1][^1]、[3][^3]、[4][^4],**`network.service`启动失败通常与配置错误或服务冲突相关**,以下是具体排查流程: --- #### 1. **查看详细错误日志** 通过以下命令定位具体错误原因: ```bash sudo systemctl status network.service # 查看服务状态(引用[3]) sudo journalctl -xe -u network.service # 查看完整日志(引用[4][^4]) ``` **典型错误场景**: - IP地址冲突(如重复的静态IP) - 配置文件语法错误(如`GATEFIXO`拼写错误,引用[5][^5]) - 网卡设备不存在(如配置文件中指定了错误的`ethX`名称) --- #### 2. **检查IP配置文件** **关键文件路径**(根据发行版): - **CentOS/RHEL**:`/etc/sysconfig/network-scripts/ifcfg-ethX` - **Ubuntu/Debian**:`/etc/network/interfaces` 或 `/etc/netplan/*.yaml` **必须验证的配置项**(以CentOS为例): ```bash TYPE=Ethernet BOOTPROTO=static # 静态IP必须设置为static ONBOOT=yes # 确保开机启动(引用[2][^2]) IPADDR=192.168.1.100 # 检查是否在子网范围内 NETMASK=255.255.255.0 # 子网掩码 GATEWAY=192.168.1.1 # 网关地址(引用[5][^5]中错误参数名为GATEFIXO) DNS1=8.8.8.8 # DNS配置 ``` **常见错误**: - 参数拼写错误(如`GATEWAY`写成`GATEFIXO`) - IP地址与网关不在同一子网 - 缺少`ONBOOT=yes`导致接口未激活 --- #### 3. **解决服务冲突** **NetworkManager与network服务冲突**(引用[4][^4]): ```bash sudo systemctl stop NetworkManager # 停止NetworkManager sudo systemctl disable NetworkManager # 禁止开机自启 sudo systemctl restart network # 重启传统网络服务 ``` --- ### 二、解决方案 #### 1. **修正配置文件语法** - 使用`vim`或`nano`编辑配置文件: ```bash sudo vim /etc/sysconfig/network-scripts/ifcfg-eth0 ``` - 逐行检查参数,确保无拼写错误或多余空格。 #### 2. **清理无关配置文件** 如果存在多个网卡配置文件(如`ifcfg-eth1`、`ifcfg-eth2`),删除未使用的配置(引用[4][^4]): ```bash sudo rm -f /etc/sysconfig/network-scripts/ifcfg-ethX_old ``` #### 3. **临时测试配置** 若怀疑配置文件错误,可临时设置IP(不依赖配置文件): ```bash sudo ip addr add 192.168.1.100/24 dev eth0 # 临时配置IP(引用[1][^1]) sudo ip link set eth0 up # 启用接口 ``` --- ### 三、特殊场景处理 #### 1. **光口网卡/新硬件兼容性问题** 若新增光口网卡后报错(引用[2][^2]): - 检查驱动是否加载: ```bash lspci | grep -i ethernet # 确认网卡被系统识别 ``` - 更新固件或安装厂商驱动。 #### 2. **网卡名称随机化问题** 若网卡名称非`ethX`(如`ens33`),需固定名称: ```bash sudo vim /etc/default/grub # 修改GRUB_CMDLINE_LINUX,添加`net.ifnames=0 biosdevname=0` sudo grub2-mkconfig -o /boot/grub2/grub.cfg ``` --- ### 四、验证与恢复 1. **重启网络服务**: ```bash sudo systemctl restart network ``` 2. **检查IP配置**: ```bash ip addr show eth0 # 确认IP地址已生效 ping 8.8.8.8 # 测试外网连通性 ``` --- ### 相关问题 1. 如何通过日志分析`network.service`的具体错误原因? 2.CentOS中如何永久固定网卡名称(如从`ens33`改为`eth0`)? 3. 动态IP(DHCP)配置错误是否会导致`network.service`启动失败? --- ### 附:错误示例与修复 **错误日志片段**: ```plaintext network.service: control process exited, code=exited status=1 Failed to start LSB: Bring up/down networking. ``` **修复方法**: - 检查`ifcfg-ethX`文件中的`ONBOOT=yes`和`BOOTPROTO=static`配置。 - 运行`sudo nmcli dev status`确认NetworkManager未占用网卡。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值