开发者社区> 余二五> 正文

怎么解决虚拟机迁移后eth0变成了eth1

简介:
+关注继续查看

当克隆或者重装虚拟机后,再启动系统时会发现系统下不再有eth0,而变成了eth1,当使用/etc/init.d/network重启网络时,会提示找不到设备eth0及eth1的启动脚本。


做以下改动:

/etc/sysconfig/network-scripts/ifcfg-eth0重命名为/etc/sysconfig/network-scripts/ifcfg-eth1

/etc/init.d/network restart 提示找不到eth0

发现脚本中的device一项没有改过来,将其改为eth1(或者删掉)

/etc/init.d/network restart 提示网卡的物理地址不匹配

/etc/sysconfig/network-scripts/ifcfg-eth0中的mac地址为原来eth0网卡的物理地址,而虚拟机为eth1分配新的物理地址,故启动脚本中的信息与实际信息时不匹配的,将MAC的地址信息从脚本中删除,再次重启网络,OK!

为什么原来的eth0会变成eth1?

很多Linux distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名。udev会在系统引导的过程中识别网卡,将mac地址和网卡名称对应起来记录在udev的规则脚本中。而对于新的虚拟机,VMware会自动为虚拟机的网卡生成MAC地址,当你克隆或者重装虚拟机软件时,由于你使用的是以前系统虚拟硬盘的信息,而该系统中已经有eth0的信息,对于这个新的网卡,udev会自动将其命名为eth1(累加的原则),所以在你的系统启动后,你使用ifconfig看到的网卡名为eth1。

如何把名字改回eth0?

在fedora 11中,udev记录网络规则的脚本为:/etc/udev/rules.d/70-persistent-net.rules

打开该文件,这时你会发现,里面有eth0,eth1两个网卡的信息,但实际上你ifconfig时只能发现eth1一个网卡的信息,这时因为eth0根本就不存在。

将其中eth0的信息删掉,并将eth1信息中的设备名改为eth0,并且确保/etc/sysconfig/network-scripts/目录下网卡文件名为ifcfg-eth0,且该文件中DEVICE=eth0     

重启系统,你看到的网卡就是eth0了,或者删掉其中所有的信息重启系统udev会帮你发现新的设备的。











本文转自 曾哥最爱 51CTO博客,原文链接:http://blog.51cto.com/zengestudy/1867069,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
虚拟机复制操作CentOS6导致eth0转为eth0以至于网络服务启动失败的解决方案
CentOS6复制到虚拟机中eth0转为了eth1 原因: CentOS6硬盘上的信息保存着操作系统的信息, 将该硬盘上的信息拷贝到另一开新的硬盘上时, 硬件的环境就会一定会发生变化, 就那网卡来首, MAC地址一定会发生变化, CentOS在启动的时候, 检测到了网卡与系统中保存的网卡的信息不符...
1111 0
虚拟机拷贝后网卡eth0变成了eth1的解决办法
一、修改/etc/udev/rules.d/70-persistent-net.rules文件 将之前的eth0那行删了,将eth1改为eth0  二、配置ifcfg-eth0脚本,注意HWADDR那行,要和上图ATTR对应  DEVICE=eth0   TYPE=Ethernet   ONBO...
861 0
虚拟机克隆后找不到eth0
使用 VMware 虚拟机的克隆功能,快速复制已安装好的 Linux 系统。 克隆完成之后,发现没有 eth0 网卡。 【解决方法】 1. 编辑 /etc/udev/rules.d/70-persistent-net.
807 0
如何使用VMware虚拟机(带你快速了解)
如何使用VMware虚拟机(带你快速了解)
62 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
基于英特尔 SSD 的虚拟机缓存解决SSD
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载