使用shell脚本解决VMware克隆主机后网络服务无法启动

实验环境:CentOS 7&VMware workstation 11


一、故障表现:

重启网络服务后,服务失败。如下图所示:


显示 faild to start LSB。


二、故障分析:

    此故障是由于使用克隆以后,克隆出来的主机的MAC地址会由软件自动分配一个新的,但是配置文件中MAC仍是原主机。所以因为MAC地址不符造成服务无法启动。


三、解决方案:

    修改配置文件中的MAC地址。


四、操作步骤:

1.切换到网卡配置文件目录:

    2.删除ifcfg-Auto-Ethernet(目前没发现此文件有何作用,如果不删除则也得修改此文件。)

    3.查看当前网卡的MAC地址:

    红框处为克隆后网卡的MAC地址。


    4.编辑ifcfg-eno1677736

    下图是是文件内容:

根据自己的实际情况修改BOOTPROTO值,主要修改ONBOOT和HWADDR

下图是修改后的:


    5.保存并重启服务:

    后来发现,有时光重启network服务仍然会报错,还需要重启NetworkManager服务。

    需要重启2个服务:

    #systemctl restart NetworkManager
    #systemctl restart network



至此故障修复。


更新:后来觉得这么手工改好慢,于是写了个小脚本来处理,初学shell写的比较简单:

#!/bin/bash
NEWHW=`ip addr |grep "link/ether" |cut -d ' ' -f 6`
DIR=/etc/sysconfig/network-scripts
sed -i "s/HWADDR.*/HWADDR=$NEWHW/g" $DIR/ifcfg-eno16777736
sed -i "s/ONBOOT=no/ONBOOT=yes/g" $DIR/ifcfg-eno16777736
rm -f $DIR/ifcfg-Auto_Ethernet
systemctl restart NetworkManager
systemctl restart network
echo "your new hwaddr is $NEWHW"



你可能感兴趣的:(vmware,网络服务,克隆主机)