CentOS 开机时启动网络

CentOS 开机时启动网络

为什么 CentOS 在启动时不运行 eth0?

那里ifconfig只有lo界面。我必须输入

service network restart

运行接口eth0,为什么?

网络脚本 eth0:

DEVICE=eth0
HWADDR=00:1D:09:67:E2:FB
TYPE=Ethernet
UUID=b6e7650e-b2e8-419e-ac6b-a26941053d2d
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp

答案1

您是否在某些非标准运行级别中启动?您可以使用以下方法之一进行检查:

runlevel
who -r

您还可以在尝试重新启动网络守护程序之前检查它是否正在运行:

service network status

答案2

当您安装 Centos 7(或 Centos 6)时,主配置屏幕中会有一个网络链接。您必须单击该屏幕,然后在结果屏幕的右上角打开网络。这将安装启用了网络的 centos。安装您系统的人可能没有这样做。

在你的情况下,由于你使用的是“service”而不是“systemctl”,我猜你运行的是 Centos 6 或更早版本。我认为运行

 chkconfig network on

将使网络在启动时启动。

您的解决方案不起作用

这是我在 Centos 6 机器上的 network 和 network-scripts/ifcfg-eth0 文件中的内容,该机器在启动时成功启动网络。我的配置与您的配置略有不同,因为我不使用 dhcp:

[root@developmentServer1 sysconfig]# cat network
NETWORKING=yes
HOSTNAME=developmentServer1
GATEWAY=192.168.1.1
[root@developmentServer1 sysconfig]# cat network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:15:17:9D:95:16"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="3d9bdb48-568c-4336-a89b-50312a5b7ff1"
IPADDR=192.168.1.22

我甚至没有名为“NetworkManager”的定义服务:

[root@developmentServer1 sysconfig]# chkconfig --list | grep -i network
network         0:off   1:off   2:on    3:on    4:on    5:on    6:off
[root@developmentServer1 sysconfig]# cat /etc/redhat-release
CentOS release 6.4 (Final)
[root@developmentServer1 sysconfig]#

如果您这样做,禁用它的建议是值得尝试的。

答案3

不确定您正在运行哪个版本的 CentOS,但版本 6 和 7 有不同的方式在启动时启用网络服务。

如果您使用的是 CentOS 6,并且这是一台服务器,则您需要在ifcfg-*文件上设置 NM_CONTROLLED=no,以确保安全。在 CentOS 7 中,NetworkManager 是管理网络的默认服务,不应禁用。

在 CentOS / RHEL 6 上:

chkconfig network on

在 CentOS / RHEL 7 (systemd) 上:

systemctl enable NetworkManager

如果这些都不能解决您的问题,您需要在问题中添加更多详细信息,例如启动顺序、系统日志ip adifconfig -a输出等中的任何错误消息。

相关内容