CentOS6 虚拟机迁移后网卡名更改问题解决

实验过程中,我们经常需要复制虚拟机,以模仿生产过程中同等配置的条件。

但无论是初次打开,选择"我已复制该虚拟机“也好,还是在虚拟机设置>网络适配器>高级中重新生成Mac地址,开机后选择”我已移动该虚拟机“也罢。开机后查询IP时,我们都会很遗憾的发现,网卡的名字,不一样了。

这是因为原Mac地址占用旧网卡,新Mac地址只能使用新的网卡名称。复制虚拟机为了不与原虚拟机冲突,也是生成了新的Mac地址。

[[email protected] ~]# ifconfig
eth2      Link encap:Ethernet  HWaddr 00:50:56:22:C9:22  
          inet addr:192.168.234.187  Bcast:192.168.234.255  Mask:255.255.255.0
          inet6 addr: fe80::250:56ff:fe22:c922/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1 
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:806 (806.0 b)  TX bytes:1152 (1.1 KiB)
eth3      Link encap:Ethernet  HWaddr 00:50:56:3A:FD:74  
          inet addr:172.17.251.174  Bcast:172.17.255.255  Mask:255.255.0.0
          inet6 addr: fe80::250:56ff:fe3a:fd74/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2565 errors:0 dropped:0 overruns:0 frame:0
          TX packets:61 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:243027 (237.3 KiB)  TX bytes:9974 (9.7 KiB)
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:240 (240.0 b)  TX bytes:240 (240.0 b)

虽然不影响使用,但怎么看都不舒服啊。而且有些实验中网卡名不统一也只有麻烦。正所谓没有标准化就很难进行自动化管理。

那么,如何更改迁移后的虚拟机的网卡名呢?

(1).修改配置文件/etc/udev/rules.d/70-persistent-net.rules

[[email protected] ~]# vim /etc/udev/rules.d/70-persistent-net.rules 
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:13:d6:94", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:13:d6:9e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:22:c9:22", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:3a:fd:74", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"

删除原Mac,更改NAME值,搞定。改好后是这个样子。

[[email protected] rules.d]# vim /etc/udev/rules.d/70-persistent-net.rules 
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:22:c9:22", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:3a:fd:74", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
~

(2).重启或重装网卡驱动,使配置文件生效

查看网卡驱动名:ethtool -i eth2或dmesg|grep -i eth

卸载网卡驱动:modprobe -r e1000 或rmmod e1000

装载网卡驱动:modprobe e1000

[[email protected] rules.d]# dmesg|grep -i eth
e1000 0000:02:01.0: eth0: (PCI:66MHz:32-bit) 00:50:56:3a:fd:74
e1000 0000:02:01.0: eth0: Intel(R) PRO/1000 Network Connection
e1000 0000:02:02.0: eth1: (PCI:66MHz:32-bit) 00:50:56:22:c9:22
e1000 0000:02:02.0: eth1: Intel(R) PRO/1000 Network Connection
udev: renamed network interface eth1 to eth2
udev: renamed network interface eth0 to eth3
e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
8021q: adding VLAN 0 to HW filter on device eth3
e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
8021q: adding VLAN 0 to HW filter on device eth2
eth2: no IPv6 routers present
eth3: no IPv6 routers present
#阿拉的网卡驱动只有e1000一块,所以阿拉卸载一块就够了。有的网卡名不一样,要分别卸载
[[email protected] rules.d]# rmmod e1000
#再用ifconfig查看会发现原网卡信息不见了。(阿拉这一步就不粘代码了)
#装载网卡驱动
[[email protected] rules.d]# modprobe e1000
#再次查看,修改成功
[[email protected] ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:50:56:22:C9:22  
          inet addr:192.168.234.187  Bcast:192.168.234.255  Mask:255.255.255.0
          inet6 addr: fe80::250:56ff:fe22:c922/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:746 (746.0 b)  TX bytes:1152 (1.1 KiB)

eth1      Link encap:Ethernet  HWaddr 00:50:56:3A:FD:74  
          inet addr:172.17.251.174  Bcast:172.17.255.255  Mask:255.255.0.0
          inet6 addr: fe80::250:56ff:fe3a:fd74/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:475 errors:0 dropped:0 overruns:0 frame:0
          TX packets:50 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:48665 (47.5 KiB)  TX bytes:7289 (7.1 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:80 errors:0 dropped:0 overruns:0 frame:0
          TX packets:80 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:6148 (6.0 KiB)  TX bytes:6148 (6.0 KiB)
时间: 2024-08-07 00:10:41

CentOS6 虚拟机迁移后网卡名更改问题解决的相关文章

Linux虚拟机克隆后网卡找不到问题

解决虚拟机克隆网卡丢失问题 1.克隆后的虚拟机网卡显示如下 [[email protected] 桌面]# ifconfig lo        Link encap:Local Loopback inet addr:127.0.0.1  Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING  MTU:16436  Metric:1 RX packets:120 errors:0 dropped:0 overruns:

centos虚拟机迁移时网卡不存在

删除/etc/sysconfig/network-scripts/ifcfg-eth0中 的  HWADDR="xx:xx:xx:xx:xx" 删除/etc/udev/rules.d/70-persistent-net.rules 重启虚拟机 centos虚拟机迁移时网卡不存在

09.VMWare虚拟机copy后网卡不是eth0解决办法

0.如果VM虚拟机已经复制了,网卡已经不是eth0了,看下面1--->步骤,如果还没复制将要复制,只看1就行 点击I copy it.这时虚拟机会在开机时检查是否次网卡无力地址已经存在,如果存在就生成另一个物理地址并把网卡eth0-->eht1;如果复制多次将是eth1...............依次往后; 你复制虚拟机次数越多,ifconfig看到的网卡号越大.如果你已经复制了虚拟机但网卡不是eth0,请看下面不走. 1.生成网卡物理地址: 复制出来,后面要用到. 2.修改虚拟机网卡名 $

Linux虚拟机克隆后网卡UUID问题

虚拟机中的Linux系统克隆后,网卡配置eth0中的UUID可被克隆的系统是一样的,这样UUID就失去了唯一性. 我参考了该篇博客: 有时我们不小心将/etc/sysconfig/network-scripts /ifcfg-eth0(可以通过此文件进行查看UUID)删除或者损坏,要重新编辑ifcfg-eth0文件时不知道网卡的UUID是什么(当然也可以 不写),那我们还有什么方法可以查看网卡的UUID呢?在这里我们使用的方法是使用nmcli命令查看,方法如下: 1.首先我们查看一下nmcli是

服务器硬盘冷迁移后网卡无法启动问题

1.迁移以后,会存在其中一个网卡无法启动(eth0 or eth1) [[email protected] ~]# ifup eth0 WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/. WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /e

如何避免虚拟机克隆后网卡eth0变成eth1

一.删除/清空 /etc/udev/rules.d/70-persistent-net.rules 二.修改网卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0 ==>有几个网卡修改几个删除里面的UUID和HWADDR的行 三.关机开始克隆.#########扩展:                #######################克隆后出现问题###############一.删除/清空 /etc/udev/rules.d/70-persis

虚拟机拷贝后网卡eth0变成了eth1的解决办法

1: vi  /etc/udev/rules.d/70-persistent-net.rules 2:将eth0那行删了,将eth1哪行的eth1改为eth0 3:配置ifcfg-eth0脚本,ifcgf-eth0HWADDR那行要和70-persistent-net.rulesATTR对应 4 :wq  保存退出 5:重启虚拟机

VMware虚拟机克隆后网卡设置

删除网络配置文件/etc/sysconfig/network-script/ifcfg-eth0中的"HWADDR=..."以及"UUID=..."这两行 清空原设备的MAC地址 >/etc/udev/rules.d/70-persistent-net.rules 重启系统reboot

Centos7 虚拟机复制后网卡问题 Job for network.service failed

在运行“/etc/init.d/network restart”命令时,出现错误“Job for network.service failed. See 'systemctl status network.service' and 'journalctl -xn' for deta”,运行“cat /var/log/messages | grep network”命令查看日志中出现的与network相关的信息,会发现下面输出语句: Nov 17 11:31:16 openstack networ