在学习zk伪分布式集群对的时候,第一次注意到克隆虚拟机后修改eth的ip地址,发现ip不是自己修改的ip,进而在询问下发现,当我们第一次登陆查看我们克隆的虚拟机ip时:我们看到的ip不是eth0的ip,而是eth1的ip。 而究其原因是因为在克隆后出现网卡MAC地址和原系统MAC地址一样,在局域网内会有冲突,这时我们需要更改克隆后的MAC地址。 解释一下:实际上克隆后的系统有两个网卡eth0和 eth1,实际起作用的是eth1,eth0是从之前克隆过来的,eth1才是我们需要的。克隆系统会重新生成一个mac地址,因为系统会在eth0加1变成eth1,进而导致我们在使用卡隆的虚拟机时, 需要去修改该文件: /etc/udev/rules.d/70-persistent-net.rules 这里根据文件名可以看出这个是路由文件:用 vim/etc/udev/rules.d/70-persistent-net.rules命令 这里修改有两种方式,第二种更加简单粗暴一些。 具体操作如下: 第一种方式: 第一步:查看克隆后的ip:ifconfig
打开文件内容如下:
这里对比一下正常非克隆虚拟机的这个文件:
很明显,上述要多一个配置,那么我们只需要将多余配置注释掉就ok。 如图示: 在第一个网卡前面加#注释掉第一个网卡,更改第2个网卡为eth0,编辑完成,esc键退出,输入:wq 保存退出。 需要注意的是,这里需要复制ATTR的MAC地址。 之后查看eth0文件: vim /etc/sysconfig/network-scripts/ifcfg-eth0 这次会查看到这里的ip是克隆虚拟机的ip,将这个ip改为自己想要配置的ip,然后修改HWADDR的Mac地址粘贴,编辑完成,esc键退出,输入:wq 保存退出。 重启网络服务或者重启虚拟机 service network restart / reboot 用ifconfig查看网络: 执行完上述步骤,如果此时查看的ip是对的,但是网卡信息是eth1的,则可删除/etc/udev/rules.d/70-persistent-net.rules (本人在使用第一种方法时,编辑完eth0时,查看网卡还是eth1,所以才有了,后续) 这个文件删除,重启系统后自动生成的,可以放心删除。 (新克隆的虚拟机删除) 执行命令:rm/etc/udev/rules.d/70-persistent-net.rules 如图所示: 执行:reboot 重启后再次查看,就Ok了。
用 vim/etc/udev/rules.d/70-persistent-net.rules查看文件已重新生成。
第二种方式: 第一步:查看克隆后虚拟机的ip地址,执行 ifconfig 命令 效果如图示: 复制:HWaddr的mac地址 第二步:修改eth0文件 执行命令:vim /etc/sysconfig/network-scripts/ifcfg-eth0 修改HWADDR Mac地址,将上述复制内容粘贴上去,后修改ip地址,编辑完成,esc键退出,输入:wq 保存退出。 重启:reboot 重新查看:执行 ifconfig 如图示: 顺便查看该文件是否存在:vim/etc/udev/rules.d/70-persistent-net.rules ok!新手总是爬坑