我们在安装RAC时,需要公有网络的网卡名对应一致,私有网络的网卡名对应一致。但是当两个物理机器由于网卡配置数量的不等,很容易出现一个机器有ETH12和ETH13,但另一个机器只有ETH9和ETH10。那么遇到这个问题,如何修改网卡名称使两个机器的网卡名能对应起来呢? 其实这个问题,跟克隆虚拟机后的网卡启动失败问题很相似。只是克隆后新生成的虚机需要将网卡的MAC与70-persistent-net.rules文件的MAC保持一致就可以了。但是如果你要修改一个物理网卡的名称,其实并没有改变它的MAC地址,只是修改了名称而已。下面我们看一下如何实现网卡名称的更改。 举个例子,我们把本机的ETH1改成ETH3. [root@test2 Desktop]# ifconfig -a eth1 Link encap:Ethernet HWaddr 00:0C:29:65:02:FF inet addr:192.168.199.119 Bcast:192.168.199.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe65:2ff/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:87714 errors:0 dropped:0 overruns:0 frame:0 TX packets:45281 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:112756896 (107.5 MiB) TX bytes:3001189 (2.8 MiB)
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:87 errors:0 dropped:0 overruns:0 frame:0 TX packets:87 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:5721 (5.5 KiB) TX bytes:5721 (5.5 KiB)
pan0 Link encap:Ethernet HWaddr 66:13:A7:AD:1E:79 BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
[root@test2 Desktop]# ping 192.168.199.118 PING 192.168.199.118 (192.168.199.118) 56(84) bytes of data. 64 bytes from 192.168.199.118: icmp_seq=1 ttl=64 time=0.787 ms 64 bytes from 192.168.199.118: icmp_seq=2 ttl=64 time=0.880 ms 64 bytes from 192.168.199.118: icmp_seq=3 ttl=64 time=0.758 ms ^C --- 192.168.199.118 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2973ms rtt min/avg/max/mdev = 0.758/0.808/0.880/0.056 ms
下面先把eth1宕掉 [root@test2 Desktop]# ifdown eth1 然后进入这个配置目录 [root@test2 Desktop]# cd /etc/sysconfig/network-scripts [root@test2 network-scripts]# ls -l ifcfg* -rw-r--r--. 1 root root 140 Jul 6 05:30 ifcfg-eth1 -rw-r--r--. 1 root root 254 Jan 9 2013 ifcfg-lo 修改网卡文件名称 [root@test2 network-scripts]# mv ifcfg-eth1 ifcfg-eth3 [root@test2 network-scripts]# ls -l ifcfg* -rw-r--r--. 1 root root 140 Jul 6 05:30 ifcfg-eth3 -rw-r--r--. 1 root root 254 Jan 9 2013 ifcfg-lo 编辑新文件,将其中的 DEVICE=eth1改成eth3,不需要修改MAC地址。 [root@test2 network-scripts]# vi ifcfg-eth3 然后进入UDEV目录 [root@test2 network-scripts]# cd /etc/udev/rules.d 找到70-persistent-net.rules文件 [root@test2 rules.d]# ls -l 70* -rw-r--r--. 1 root root 1342 Feb 17 2014 70-persistent-cd.rules -rw-r--r--. 1 root root 420 Apr 16 2014 70-persistent-net.rules [root@test2 rules.d]# vi 70-persistent-net.rules 修改这个文件,将 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0C:29:65:02:FF", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1" 改成 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0C:29:65:02:FF", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3" 保存退出。 [root@test2 rules.d]# ifup eth3 Device eth3 does not seem to be present, delaying initialization. [root@test2 rules.d]# service network restart Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface eth3: Device eth3 does not seem to be present, delaying initialization.
[FAILED] 这个时候是启不来的,需要重启机器使修改生效。
[root@test2 rules.d]# reboot
重启后我们发现名称已经变过来了。 [root@test2 etc]# ifconfig -a eth3 Link encap:Ethernet HWaddr 00:0C:29:65:02:FF inet addr:192.168.199.119 Bcast:192.168.199.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe65:2ff/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:39217 errors:0 dropped:0 overruns:0 frame:0 TX packets:57 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3162496 (3.0 MiB) TX bytes:3905 (3.8 KiB)
还有一种情况,机器在新添加物理网卡后出现网卡名称断点不连续 eth12 Link encap:Ethernet HWaddr 00:90:FA:76:A5:7C BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
eth14 Link encap:Ethernet HWaddr 00:90:FA:76:A5:80 inet addr:11.11.161.65 Bcast:11.11.161.255 Mask:255.255.255.0 inet6 addr: fe80::290:faff:fe76:a580/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:74621 errors:0 dropped:0 overruns:0 frame:0 TX packets:12 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:4516473 (4.3 MiB) TX bytes:816 (816.0 b)
我们看一下少了eth13,这时可以把网卡配置全删除,重启让系统重新分配就连续了。 [root@rac2 network-scripts]# cd /etc/udev/rules.d [root@rac2 rules.d]# ls -l total 44 -rw-r--r--. 1 root root 1652 Aug 26 2010 60-fprint-autosuspend.rules -rw-r--r--. 1 root root 1060 Jun 29 2010 60-pcmcia.rules -rw-r--r--. 1 root root 316 Aug 6 2013 60-raw.rules -rw-r--r--. 1 root root 787 Dec 31 19:29 70-persistent-cd.rules -rw-r--r-- 1 root root 2905 Jan 5 21:47 70-persistent-net.rules -rw-r--r--. 1 root root 40 Oct 25 2013 80-kvm.rules -rw-r--r--. 1 root root 320 Sep 12 2012 90-alsa.rules -rw-r--r--. 1 root root 83 Apr 1 2011 90-hal.rules -rw-r--r--. 1 root root 2486 Jun 30 2010 97-bluetooth-serial.rules -rw-r--r--. 1 root root 308 Oct 22 2013 98-kexec.rules -rw-r--r--. 1 root root 54 Nov 3 2011 99-fuse.rules [root@rac2 rules.d]# rm -rf 70-persistent-net.rules [root@rac2 rules.d]# cd /etc/sysconfig/network-scripts [root@rac2 network-scripts]# ls -l ifcfg* -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth0 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth1 -rw-r--r--. 3 root root 203 Jan 5 00:14 ifcfg-eth10 -rw-r--r--. 3 root root 137 Dec 31 18:52 ifcfg-eth11 -rw-r--r-- 3 root root 202 Jan 5 00:12 ifcfg-eth12 -rw-r--r-- 3 root root 181 Jan 5 00:46 ifcfg-eth14 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth2 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth3 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth4 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth5 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth6 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth7 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth8 -rw-r--r--. 3 root root 136 Dec 31 18:52 ifcfg-eth9 -rw-r--r--. 1 root root 254 Oct 10 2013 ifcfg-lo [root@rac2 network-scripts]# rm -rf ifcfg-eth* [root@rac2 network-scripts]#reboot 重启后一切正常。 (责任编辑:IT) |