CentOS:eth0 未在启动时启动

CentOS:eth0 未在启动时启动

每当我重新启动 CentOS Hyper-V VM 时,eth0它都不会自动启动。我所需要做的就是执行ifup eth0,然后一切都解决了,但这无法通过 ssh 实现!我从运行级别 3 开始。


[root@localhost ~]# cat /etc/*release*
CentOS release 6.2 (Final)

ifup eth0在控制台上执行后:

[root@localhost ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:15:5D:2B:2B:07
      inet addr:10.10.0.3  Bcast:10.10.0.255  Mask:255.255.255.0
      inet6 addr: fe80::215:5dff:fe2b:2b07/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:34 errors:0 dropped:0 overruns:0 frame:0
      TX packets:49 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000
      RX bytes:4656 (4.5 KiB)  TX bytes:6399 (6.2 KiB)
      Interrupt:9 Base address:0xa000

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
IPADDR=10.10.0.3
NETMASK=255.255.255.0
GATEWAY=10.10.0.1
USERCTL=no
ONBOOT=yes

[root@localhost ~]# chkconfig --list | grep network
network         0:off   1:off   2:on    3:on    4:on    5:on    6:off

尝试关闭网络管理器后

[root@localhost ~]# chkconfig NetworkManager off
error reading information on service NetworkManager: No such file or directory
[root@localhost ~]# service NetworkManager status
NetworkManager: unrecognized service


最近的干净启动

[root@localhost ~]# grep eth0 /var/log/messages
Jul  7 02:12:44 localhost kernel: eth0: Digital DS21140 Tulip rev 32 at MMIO 0xfebff000, 00:15:5d:2b:2b:07, IRQ 9.
Jul  7 02:13:15 localhost kernel: eth0: Using EEPROM-set media 100baseTx-FDX.

[root@localhost ~]# dmesg | grep eth0
eth0: Digital DS21140 Tulip rev 32 at MMIO 0xfebff000, 00:15:5d:2b:2b:07, IRQ 9.
eth0: Using EEPROM-set media 100baseTx-FDX.
eth0: no IPv6 routers present


我所见过的唯一问题是,当我执行命令时ifup eth0出现以下错误,但eth0仍然可以启动:

[root@localhost ~]# ifup eth0
/etc/sysconfig/network-scripts/ifup-ipv6: line 56: /etc/sysconfig/network: No such file or directory
/etc/sysconfig/network-scripts/ifup-aliases: line 125: /etc/sysconfig/network: No such file or directory

答案1

嗯。从你上一条消息中查找该/etc/sysconfig/network文件。

我有:

$ cat /etc/sysconfig/network
NETWORKING=yes

您还可以(在我的 CentOS 5 盒子上):

NETWORKING=yes
HOSTNAME=foo.example.org
GATEWAY=192.168.1.1

文档是这里(至少对于 5 来说,应该非常相似)

我不确定“NETWORKING”设置的默认值是什么。可能是“否”,所以它不会在启动时启动。

答案2

打开/etc/sysconfig/network-scripts/ifcfg-eth0文件并替换行

ONBOOT=no

ONBOOT=yes

保存并退出文件,然后重新启动linux系统。

答案3

使用或禁用该NetworkManager服务并查看是否有帮助。chkconfigntsysv

如果它没有运行,请检查 /var/log/boot.logdmesg和 /var/log/messages。在干净启动后,grep eth0 /var/log/messages或者dmesg | grep eth0应该让您知道发生了什么。

这是一个新的虚拟机还是一个克隆的系统(P2V)?

答案4

确保文件夹中/etc/sysconfig/network-scripts/只有相关文件,没有其他文件!

使用编辑器或类似工具时要特别小心vi,因为它们会创建以 ~ 结尾的备份文件

当这种情况发生时,我发现一些 Linux 发行版在启动时无法调出一些接口。

相关内容